数据编码和数据运算ppt课件.ppt
《数据编码和数据运算ppt课件.ppt》由会员分享,可在线阅读,更多相关《数据编码和数据运算ppt课件.ppt(89页珍藏版)》请在三一办公上搜索。
1、第二章 数据编码和数据运算,两个基本要素,权 赋予每一数位的位值,也称位权。weight基数 相邻二位高位权与低位权的比值。radix,任意进制数的表示法:对于数N有,x= xi Ri,n-1,i=-m,(小数点前n位,小数点后m位),R 基数xi 0-(R-1)任意一数i 位数;小数点前位正,后为负。 为n-1,n-2, , ,3,2,1,0. 1,-2,-3,-m,等式左边:任意进制数等式右边:同值十进制和式,进位计数制,例:十进制数:R=10, xi为0,1,2, 9各位权103 , 102 , 101 ,100 , 10-1 , 10-2 , 10-3二 进 制: R=2, xi为0,
2、1;各位权为23 , 22 , 21 , 20 , 2-1 , 2-2,常用进位制符号:,B(二进制),O或Q(八进制)H(十六进制),D(十进制),例: 将二进制数1101011010分别用十进制,八进制和十六进制表示。,1101011010B = 129 + 1 28 + 1 26 + 1 24 + 1 23 + 1 21= 858D1 101 011 010B = 1532Q11 0101 1010B = 35AH,转换原理: 如有两个有理数相等,则两数的整数部分和小数部分一定分别相等。,不同进位制的转换,转换方法: 分为整数部分和小数部分,分别转换后合并。,整数部分:除基取余小数部分:
3、乘基取整, 十进制转换为其他进制,例:215.6875D?B,整数部分小数部分,215.6875D=110101111.1011B, 任意进制转换为十进制,转换方法:利用任意进制数定义式,将右边展开。,N= Ki Ri= Kn-1 Rn-1 + K3 R3+ K2 R2 + K1 R1 + K0 R0 + K-1 R-1 + K-2 R-2 + K-3 R-3 + K-4 R-4 +,n-1,i=-m,.,.,例:4FCH = 4162 + 15 R1 + 12 R0 = 1024 + 240 + 12 = 1276D, 二进制 十六进制,转换方法:以小数点为界,利用4位二进制数与1位 十六进
4、制数的对应关系转换。,例:1011011.100111B ?H,0101 1011.1001 1100B 5B9CH (逆转换成立, 二进制 八进制,转换方法:以小数点为界,利用3位二进制数与1位 八进制数的对应关系转换。,例: 1011011.100111B ?Q,001 011 011.100 111B133.87Q, BCD码(二进制编码的十进制数),00000000110010200113010040101501106011171000810019,BCD码二进制方法类似于十进制二进制, 二进制数的运算法则, 算术运算法则,加法减法乘法除法0+0=00-0=00 0=00+1=10-1
5、=1(借位)0 1=01+0=11-0=11 0=01+1=1(进位)1-1=01 1=1,类似于十进制除法,由减法上商等逐步完成(够减上1,不够减上0), 逻辑运算法则,逻辑与逻辑或逻辑异或逻辑非00=00+0=000=00=101=00+1=1 01=11=010=01+0=110=1 11=1 1+1=011=0,应用:,1011 10111011and 0000 or 0000 xor0000 0000 10111011,1011 10111011and 1111 or 1111 xor1111 1011 11110100,全0屏蔽,全1屏蔽, 遇0保留,全1保留。全0保留。 遇1求反
6、。,对于二进制 x可写成x = xn x2 x1x0. x-1x-2x-mxi=0,1, -min,n+1位二进制整数 x的两种排序x = xn x2 x1x0 x = x0 x1x2 xn (本课程采用),计算机中数据格式,定点格式 浮点格式,2.1 定点数的编码和运算,定点数:小数点位置固定不变的数定点整数:小数点定在最低位数的右面定点小数:小数点固定在最高位数的后面,即纯小数表示,2.1.1 无符号数的编码,定点整数数值表示:x = x0 x1x2xnxi=0,1, 0inx02n + x12n-1 + + xn-121 + xn数值范围0 x2n+1-1例如:x=010101其数值=2
7、4+22+20=21,定点小数,数值表示x = x0 . x1x2xnx0=0,xi=0,1, 0in x12-1 + + xn-12-n+1 + xn2-n数值范围0 x1-2-n 例如: x=0.10101其数值=2-1+2-3+2-5=21/32,2.1.2 有符号定点数的编码,机器数:二进制数最高位表示符号,1为-, 0 为+。 后面各位为数值(绝对值)。真值: 带符号机器数对应的数值。例: 真 值 机器数 N1 - 1001100 11001100 N2 +101001101010011, 原码 n+1 位二进制数原码定义,x原码 =,x0 x 2n2n -x -2n x 0, 反码
8、,N+1 位二进制数反码定义,x反码 =,x 0 x 2n(2n+1 1)+x -2n x 0, 补码,n 位二进制数补码定义,x补码 =,x0 x 2n2n+1 + x -2n x 0,原码,反码,补码 n +1位中最高位为符号位,后 n 位为X数值。原码形式与机器数相同。 对于定点小数的原码、补码、反码,只要把上述定义式中的2n用1代替,1用2-n即代替即可可。, 2n+1 - 1=11 111 (n+1个1) 2n+1 - 1+x 正好为 x (x为负),例: -1101101反码 = 10010010,111111110110110110010010,x反码与 x补码的关系,0 x 2
9、n-1 x补码= x反码-2n-1 x 0 x补码= 2n + x =x反码+1,4 移码对于n+1位定点整数 xx移=2n+x 2nx2-nx:真值,x移:机器数,常用于表示浮点数的阶码,便于比较大小 移码中符号位与原码、补码和反码相反 计算机中移码只执行加减运算,原码,反码,补码二进制数表示数值范围,真值 十进制原码 反码 补码 移码+1111111 +127 01111111 01111111 01111111 11111111+0000001 +1 00000001 00000001 00000001 10000001+0000000 +0 00000000 00000000 0000
10、0000 10000000- 0000000 - 0 10000000 11111111 00000000 10000000 - 0000001 -1 10000001 11111110 11111111 01111111- 1111111 -127 11111111 10000000 10000001 00000001-10000000 -128 10000000 00000000,对于+0和-0,原码和反码都有两种形式,而补码的表示形式相同,所以补码表示的数比原码和反码要多1个数。对于 n+1 位二进制,该数为- 2n ,故补码表示范围为: 2n - 1 - 2n 。, 补码运算,计算机中
11、带符号数运算一律用补码运算,其运算结果也用补码表示。,对于带符号数 x,y下列公式成立: x补 + y补 = x +y 补 (1) x补 + -y补 = x -y 补 (2),-y补 求法: 用补码定义式求 -y补 = y 补 变补 即先求出y补, 后将y补 连同符号位求反加1即可。,例2-1 设x=1010,y=-1010,求x补和y补。,解:根据补码的编码方法,正数的补码与它的二进制表示相同,所以加上符号位0后得 x补=01010根据补码的编码方法,负数的补码的数值部分等于它的二进制位按位取反后在最低位上加1,符号位取反后为1,所以y补=10110,定点小数的补码编码,x= x0.x1xn
12、方法与定点整数的编码方式类似最高位x0作为符号位数值范围:-1 x 1 - 2-n例 设x=0.1010,y=-0.1010,则x补=0.1010,y补=1.0110,移码与补码的关系,编码与数值的关系,2.1.3 数据的存储与访问,数据类型整型数、单精度和双精度浮点数、字符型数据长度单字节、双字节、字、双字、四倍字字节存储顺序大数端(big Endian)和小数端(little Endian)。,数据的存储方式,对齐的方式非对齐的方式。,定点数的加减运算例子,例2-4 x=0.1010,y= -0.0011,用补码的加法求x+y。解:x补=0.1010,y补=1.1101x补 + y补 =
13、0.1010 + 1.1101 = 0.0111x+y = 0.0111例2-5 x = 0.1001,y = -0.0011,用补码的减法求x-y。解:x补=0.1001,y补=1.1101,-y补=0.0011x补 - y补 = x补 + -y补 = 0.1001 + 0.0011 = 0.1100 x-y = 0.1100,加减运算电路,cfb,cf,cf,数据溢出及其检测方法一符号位判断,0 1 1 0 1 0 0 1+ 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1,X0 =0, Y0 = 0, Z0 = 1,第二项为1,V = 1,有溢出。,方法二双符号位判断(变形
14、码),Z0 Z1 = 01 =1,有溢出。,00 1 1 0 1 0 0 1+ 00 0 1 1 0 0 1 0 01 0 0 1 1 0 1 1,方法三判断符号位与最高数值位,0 1 1 0 1 0 0 1+ 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1,C0 C1 = 1 有溢出,避免数据的溢出的方法,增加数据的表示位数例如数据6在8位的计算机中表示为00000110,在16位计算机中表示为0000000000000110。例如用补码表示-2时在8位计算机中是1111 1110,在16位计算机中是1111 1111 1111 1110。符号扩展,数据溢出的概念与数据取模时
15、的丢弃,数据运算中最高位的进位被丢弃并不一定是溢出例如,两个负数的补码相加,设x= -0110,即-610;y= -0101,即-510。则x补=11010,y补=11011。x+y补=10101 (mod 25),即-1110运算结果正确,没有发生溢出,习题,教材第66页第7题,2.1.5 定点数的乘除运算,二进制乘法,采用原码乘法,将符号位与数值位分开进行运算运算结果的数值部分是乘数和被乘数数值位的乘积运算结果的符号位是乘数和被乘数符号位的异或,44无符号阵列乘法电路,X4 Y4,Z8,进位保留乘法器,二进制除法,恢复余数法通过减法实现,不够减时再用加法恢复原来的部分余数。加减交替法除数每
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 编码 运算 ppt 课件
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-1350211.html