资源描述:
《(3-1)数制与码制.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第三章运算方法和运算部件第一部分13.2带符号数据的表示方法与加减运算机器数:计算机中表示的带符号的二进制数。机器数有四种表示方法即原码、补码、反码和移码。23.2.1原码、补码、反码和移码及运算1.原码表示法原码表示法用“0”表示正号,用“1”表示负号,有效值部分用二进制的绝对值表示。以下n均表示字长的有效位。3小数:X1-2-(n-1)≥X≥0[X]原=1-X=1+
2、X
3、0≥X≥-(1-2-(n-1))完成下列数的真值到原码的转换X1=+0.1011011X2=-0.1011011[X1]
4、原=0.1011011[X2]原=1.10110114整数:X2n-1-1≥X≥0[X]原=2n-1-X=2n-1+
5、X
6、0≥X≥-(2n-1-1)完成下列数的真值到原码的转换X1=+01011011X2=-01011011[X1]原=01011011[X2]原=110110115原码小数的表示范围:[+0]原=0.0000000;[-0]原=1.0000000最大值:1-2-(n-1)最小值:-(1-2-(n-1))表示数的个数:2n-1若二进制原码小数的位数分别是8、16位,求其该数表示的最
7、大值、最小值及所能表示数的个数?8位:127/128,-127/128,25516位:32767/32768,-32767/32768,655356原码整数的表示范围:[+0]原=00000000;[-0]原=10000000最大值:2(n-1)-1最小值:-(2(n-1)-1)表示数的个数:2n-1若二进制的位数分别是8、16,求其表示的最大值、最小值及表示数的个数8位:127,-127,25516位:32767,-32767,655357原码特点:表示简单,易于同真值之间进行转换,实现乘除运
8、算规则简单。进行加减运算十分麻烦。82补码表示法模:计量器具的容量,或称为模数。4位字长的机器表示的二进制整数为:0000~1111共16种状态,模为16=24。整数N位字长的模值为2n,一位符号位的纯小数的模值为2。补码的定义:正数的补码就是正数的本身,负数的补码是原负数加上模。9小数:X1-2-(n-1)≥X≥0[x]补=2+X=2-
9、X
10、0>X≥-1完成下列数的真值到补码的转换X1=+0.1011011X2=-0.1011011[X1]补=01011011[X2]补=1010010110整
11、数:X2(n-1)-1≥X≥0[x]补=2n+X=2n-
12、X
13、0>X≥-2(n-1)完成下列数的真值到补码的转换X1=+01011011X2=-01011011[X1]补=01011011[X2]补=1010010111补码的表示范围:N位纯整数:2n-1-1~-2n-1N位纯小数:1-2-(n-1)~-1均能表示2n个数12原码与补码之间的转换原码求补码正数[X]补=[X]原负数符号除外,各位取反,末位加1例:X=-01001001[X]原=11001001,[X]补=10110110+1=1
14、0110111[X]补=28+X=100000000-1001001=10110111100000000-10010011011011113由[X]补求[-X]补(求机器负数)运算过程是连同符号一起将各位取反,末位再加1。设字长N=8位例:X=+1001001[X]补=01001001[-X]补=1011011114最大的优点就是将减法运算转换成加法运算。[X]补-[Y]补=[X]补+[-Y]补例如X=(11)10=(1011)2Y=(5)10=(0101)2已知字长n=5位[X]补-[Y]补=
15、[X]补+[-Y]补=01011+11011=100110=00110=(6)10注:最高1位已经超过字长故应丢掉15实现加法运算的逻辑示例163反码表示法正数的表示与原、补码相同,负数的补码符号位为1,数值位是将原码的数值按位取反,就得到该数的反码表示。17小数:X1>X≥0[X]反=(2-2-(n-1))+X0≥X>-(1-2-(n-1))X1=+0.1011011,[X1]反=0.1011011X2=-0.1011011,[X2]反=1.01001001.1111111-0.1011011
16、1.010010018整数:X2n-1>X≥0[X]反=(2n-1)+X0≥X>-2n-1X3=+1011011,[X3]反=01011011X4=-1011011,[X4]反=1010010011111111-101101110100100[+0]反=00000000;[-0]反=11111111194移码(增码)表示法[X]移=2n-1+X2n-1-1≥X≥-2n-1X1=01010101[X1]补=01010101[X1]移=11010101X2=-01010101[X2]补=101010