第4讲-第1章数据的表示与编码.ppt_第1页
第4讲-第1章数据的表示与编码.ppt_第2页
第4讲-第1章数据的表示与编码.ppt_第3页
第4讲-第1章数据的表示与编码.ppt_第4页
第4讲-第1章数据的表示与编码.ppt_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第1章数据的表示与编码,计算机科学概论第4讲,本讲教学目的,掌握:无符号整数的运算与溢出;整数原码的运算的优缺点;整数反码的运算的优缺点;整数补码的运算与溢出;,1.2数值的表示与运算,4、位的算术运算算术运算包括加、减、乘、除四种。适用于整数和浮点数,这里只讲整数。乘法运算可以在硬件和加法来实现;除法运算可以通过硬件和减法来实现。所以,在算术运算中只讲加、减运算。,1.2数值的表示与运算,无符号整数的加、减运算与溢出:相加时,将两个加数从低位到高位按位对齐相加,将进位加到下一列;如果最高位相加后还有进位,则产生了溢出。溢出即运算结果超出了机器数所能表示的范围。相减时,需要把两个数作为带符号数

2、处理。例1-19计算下列算式:0101+01001011+1001,1.2数值的表示与运算,带符号整数的加、减运算:带符号整数有原码、反码、补码三种编码方法。采用原码进行运算简单易懂,但它的最大缺点是加法运算复杂。这是因为,当两数相加时,如果是同号则数值相加;如果是异号,则要进行减法。而在进行减法时还要比较绝对值的大小,然后大数减去小数,最后还要给结果选择符号。采用反码进行加、减运算时,无论进行两数相加还是两数相减,均可通过加法实现。运算时,符号位和数值位一样参加运算。当符号位有进位产生时,应将进位加到运算结果的最低位,才能得到最后结果。现代计算机都采用补码进行运算。,补码运算规则:XY补=X

3、补Y补上式表明,当有符号的两个数采用补码进行加法运算时,符号位和数值位可以一起运算(若符号位有进位,则丢掉),结果为两数之和的补码形式。X-Y补=X补+-Y补上式表明,补码相减可以转换成补码相加来实现。求-Y补的规则是将+Y补的全部位(含符号位)按位取反后再末位加1。例1-20设X=+33,Y=+15,计算X+Y补、X-Y补。,1.2数值的表示与运算,补码运算的溢出:两个符号相同的补码数相加,如果和的符号与加数的符号相反,或两个符号相反的补码数相减,差的符号与减数的符号相同,都属于运算结果溢出。这种判别方法比较复杂,要区别加还是减两种不同运算情况,还要检查结果的符号与其中一个操作数的符号的同异

4、,故很少使用;两个补码数相加减时,若最高数值位向符号位送的进位值与符号位送向更高位的进位值不相同,也是运算结果溢出。例1-21采用8位二进制补码计算100+87补、-95-62补,1.2数值的表示与运算,5、8421BCD码计算机内毫无例外地都使用二进制数进行运算,但通常采用8进制和十六进制的形式读写。对于计算机技术专业人员,要理解这些数的含义是没问题,但对非专业人员却不那么容易的。由于日常生活中,人们最熟悉的数制是十进制,因此专门规定了一种二进制的十进制码,称为BCD码(BinarycodedDecimal)。它是一种以二进制表示的十进制数码。这种方法是用4位二进制码的组合代表十进制数的0,

5、1,2,3,4,5,6,7,8,9十个数符。4位二进制数码有16种组合,原则上可任选其中的10种作为代码,分别代表十进制中的0,1,2,3,4,5,6,7,8,9这十个数符。最常用的BCD码称为8421BCD码,8.4.2.1分别是4位二进数的位取值。,1.2数值的表示与运算,1.2数值的表示与运算,表1-3十进制数和8421BCD编码的对应关系,(1)BCD码与十进制数的转换BCD码与十进制数的转换关系直观,相互转换也很简单,例1-22将十进制数75.4转换为BCD码:75.4=(0111(0101.0100)BCD例1-23将BCD码10000101.0101转换为十进制数:(100001

6、01.0101)BCD85.5注意:同一个8位二进制代码表示的数,当认为它表示的是二进制数和认为它表示的是二进制编码的十进制数时,数值是不相同的。例1-2400011000,当把它视为二进制数时,其值为24;但作为2位BCD码时,其值为18。例1-2500011100,如将其视为二进制数,其值为28;但不能当成BCD码,因为在8421BCD码中,它是个非法编码。,1.2数值的表示与运算,(2)BCD码的加减运算由于编码是将每个十进制数用一组4位二进制数来表示,因此,若将这种BCD码直接交计算机去运算,由于计算机总是把数当作二进制数来运算,所以结果可能会出错。例1-26用BCD码求38+49。解

7、决的办法是对二进制加法运算的结果采用“加6修正,这种修正称为BCD调整。即将二进制加法运算的结果修正为BCD码加法运算的结果,两个两位BCD数相加时,对二进制加法运算结果采用修正规则进行修正。修正规则:(1)如果任何两个对应位BCD数相加的结果向高一位无进位,若得到的结果小于或等于9,则该位不需修正;若得到的结果大于9且小于16时,该位进行加6修正。(2)如果任何两个对应位BCD数相加的结果向高一位有进位时(即结果大于或等于16),该位进行加6修正。(3)低位修正结果使高位大于9时,高位进行加6修正。,1.2数值的表示与运算,下面通过例题验证上述规则的正确性。例1-27用BCD码求35+21、25+37、38+49、42+95、91+83、94+7、76+45。两个组合BCD码进行减法运算时,当低位向高位有借位时,由于“借一作十六”与“借一作十”的差别,将比正确的结果多6,所以有借位时,可采用“减6修正法”来修正。两个BCD码进行加减时,先按二进制加减指令进行运算,再对结果用BCD调整指令进行调整,就可得到正确的十进制运算结果。实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论