《(4)--2数值数据的表示方法 —机器码表示(1).ppt》由会员分享,可在线阅读,更多相关《(4)--2数值数据的表示方法 —机器码表示(1).ppt(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数的机器码表示(1)无符号数:整个机器字长的全部二进制位均表示数值位,没有符号。有符号数:用正、负符号加上数的绝对值来表示数的大小。;机器码:将符号“数字化”了的数,是数字在计算机中的二进制 表示形式。真 值:带有正负号的数值(“+”,“-”号加绝对值)的表示 形式,是人进行算数运算所习惯的数值表示形式。;在计算机中根据运算方法的需要,数的机器码表示往往会不相同,常见的有原码、反码、补码和移码四种表示方法。1.原码表示法原码表示法是一种比较直观的机器码表示法。原码的最高位作为符号位,用“0”表示正号,用“1”表示负号,有效值部分用二进制数的绝对值表示。定点小数的原码表示定义如下:对于定点小数,
2、设 x原 =x0.x1x2xn,共n+1位,其中x0为符号位,则:定点整数的原码表示定义如下:对于定点小数,设 x原 =x0 x1x2xn,共n+1位,其中x0为符号位,则:不管是定点小数还是定点整数,一个正数的原码的符号位为0,数值位为原来的;一个负数的原码的符号位为1,数值位为原来的。实际上就是将数的符号表示放到了机器码的符号位。【例2.2】已知x1=0.1101,x2=0.1010,求x1原、x2原。解:x1原=0.1101 -x2原=1.1010 【例2.3】已知x1=1001,x2=1110,求 x1原、x2原。解:x1原=01001 -x2原=11110如果已知一个数的原码,求它的
3、真值的方法是:对于定点小数,直接将符号位0还原成正号“+”或缺省,将符号位1还原成负号“”,整数位为0,数值位是原来的。如果已知一个数的原码,求它的真值的方法是:对于定点整数,直接将符号位0还原成正号“+”或缺省,将符号位1还原成负号“”,数值位是原来的。【例2.4】已知 x1原=0.1011,x2原=1.0001,y1原=11001,y2原=01001,求x1、x2、y1、y2。解:x1=0.1011 x2=0.0001 y1=1001 y2=1001 原码表示法的优点是直观易懂,机器码和真值之间的转换很容易,用原码实现乘、除法运算的规则很简单;缺点是实现加减运算的规则较复杂。在计算机中,加
4、减运算中的数一般采用补码来表示。对于定点小数,设 x补=x0.x1x2xn,共n+1位,其中x0为符号位,则:x补=(mod 2)x,0 x 12n 2+x=2|x|,1 x 0 2.补码表示法 对于定点整数,设 x补=x0 x1x2xn,共n+1位,其中x0为符号位,则:2.补码表示法x补=(mod 2)x,0 x 2n1 2n+1+x=2n+1|x|,2n x 0【例2.5】已知x1=0.0101,x2=0.1100,求x1补、x2补。解:x1补=0.0101 -x2补=1.1010 【例2.6】已知x1=1011,x2=0100,求x1补、x2补。解:x1补=01011 -x2补=111
5、00 由例2.5和例2.6可以看出,不管是定点小数还是定点整数,一个正数的补码的符号位为0,数值位为原来的;一个负数的补码的符号位为1,数值位按位取反并在末位加1。如果已知一个数的补码,求它的真值的方法是:对于定点小数,若符号位为0,则该数为正数,补码表示的数即为真值;若符号位为1,则该数为负数,将符号位1还原成负号“”,整数位为0,数值位按位取反并在末位加1。如果已知一个数的补码,求它的真值的方法是:对于定点整数,若符号位为0,则该数为正数,将符号位0还原成正号“+”或缺省,数值位是原来的;若符号位为1,则该数为负数,将符号位1还原成负号“”,数值位按位取反并在末位加1。【例2.7】已知x1补=0.1011,x2 补=1.0001,y1 补=11001,y2补=01001,求x1、x2、y1、y2。解:x1=0.1011 x2=0.1111 y1=0111 y2=1001 对2求补器电路a a0 0a a1 1a a2 2a a3 3E Ea a0 0a a1 1a a2 2a a3 3*C C0 0=0=0C C1 1C C2 2C C3 3真值补码真值补码