《数据表示部分》PPT课件.ppt
数据表示部分课件 制作:钱光明,主要内容:1数据与机器码;定点与浮点数;校验码;,1.数据与机器码,计算机中的数据分两类:1.数值数据(有值)例:16-2-0.1011 23/32 2.非数值数据(字母,符号,汉字等)例:A B C a b c!#$,电,数据,数值数据的机器码表示,真值,原码,反码,补码,移码真值:+13,25,+0.1101,0.0011注意符号位的表示设x=x0.x1x2x3xn x0为符号1).原码表示法 x原 x原=x 0 x1 x原=x1 1x0+0原=0.000-0原=1.000 例:x=0.1011 x原=0.1011 x=0.1011 x原=1.1011 x=25=16+8+1=11001 x原=011001特点:正数的原码符号位为0,数值部份与真值数值相同;负数的原码的符号位为1,数值部份与真值数值相同。,2).反码表示法(1s-complement)x反=x 0 x1 x反=(22n)|x|1x0+0反=0.000-0反=1.111例:x=0.0101 x=0.0101 x反=0.0101 x反=1.1010求 x=13/16 的二进制反码=0.1101 x反=1.0010特点:正数的反码等于其原码;负数的反码的符号位为1,数值部份为原码各位的反码。,3).补码表示法(2s-complement)模数 7=+5(mod 12)+3=9(mod 12)定义:x补=X 0 x1 x补=2x 1x0+0补=-0补=0.000例:x=0.0101 x补=0.0101 x=0.0101 x补=1.1011 x=12/16 x补=特点:正数的补码等于其原码;负数的补码的符号位为1,数值部份为其反码的末位加1。,零的原码、反码和补码有什么区别?,4).移码表示:,非数值数据的表示,1).ASCII码-字符编码(美国国家信息交换标准字符码),2).汉字的表示 汉字的输入编码 A.数字码 区位码,电报码 B.拼音码 全拼 双拼 C.字形码 五笔字形 注意:国内码与机内码的区别。双字节 1 1 字模码-点阵 57 1616 2424 3232 6464,十进制数的二进制表示,十进制数有多种二进制表示法,2.定点与浮点数,1)定点数的表示 小数点的位置固定不变 x0 x1 x2 x3 xn-1 xn 符号 尾数 定点整数 0 x2n 1 例:01101 定点小数 2-nx1-2 n 例:0.0101,2).数据的浮点表示-小数点浮动,Ef E1Em Mf M1M2M3.Mn,表示法:十进制数 X=3109=0.31010 对于二进制数 N=2EM M为浮点数N的尾数(定点小数),E为阶码(整数),规格化:为提高机内表示精度,当尾数不为0时:修改阶码,同时移动小数点,使尾数绝对值0.5。表示范围与精度:如对一8位二进制数。定点表示:1位符号,7位尾数。正数范围 0.0000000 0.1111111(0127/128)浮点表示:3位阶码,5位尾数,各有一符号位。正数范围 2-110.00012110.1111(1/1287.5)机器零:尾数为0,阶码任意:2110.0000 阶码的值小于其所能表示的值时(尾数任意)。例如阶码为2位时:2-1100.0101需要3位。,认识几个浮点数:,浮点数为什么要规格化:,从这两个数看出点什么?,补规注意*:1)-1/2排除;2)1.000代表负1;3)1000代表负8;利用这3点,可读懂唐教材273页。,IEEE 754标准*(唐教材233页):,常见的浮点数有三种:符号位S 阶码 尾数 总位数短实数 1 8 23 32 长实数 1 11 52 64临时实数 1 15 64 80,短实数举例*(唐教材233页):十进制:178.125二进制:10110010.001二进制浮点:1.0110010001*2111短实数表表示:,将被隐含,将被07FH偏移,机器数的算术移位 强调与手算一样。符号位保持不变:原码、正数反码、正数补码:左移乘2(末位补0,可能溢出),右移除2(可能损失精度)。负数补码:左移(同上),右移(高位补1)。负数反码*:左移(末位补1),右移呢?100110原-左移一位-101100原100110补-右移一位-110011补自己举几个例子试试?,计算机中的逻辑移位 将被移位对象看作一串01。100110-循环左移一次-001101100110-循环右移一次-0100111(进位)100110-带进位循环左移一次-1(进位)001101,机器数的舍入舍入规则1(0舍1入):其它0舍1入,只负数反码较特殊(1舍0借)*,有时将造成溢出;100110原-舍入-10011原100111原-舍入-10100原舍入规则2(末位恒置1)*:其它是末位恒置1,只负数反码较特殊(恒置0)。,3.校验码,为何设置校验码?用途1:数据存取用途2:数据通信。分类:纠错;检错。,冗余思想:除了基本信息位外,再人为填充一位或多位,且称其为冗余位或校验位。基本信息和校验位一起按某种规律编码,写入存储器或向外发送。当读取或接收代码时,按同一规律进行译码,取出有效信息位。若规律被破坏,表明读取或接收的信息有错。甚至可判断哪位或哪几位出错,从而自动纠正它。,奇偶校验包含着奇校验和偶校验两种校验。奇校验:让整个码字(包含有效信息和校验位)中1的个数为奇数。偶校验:让整个码字中1的个数为偶数。奇偶两种校验都只需配一个校验位。1)规则 设 x=x1x2x3xn 奇偶校验位为C:奇校验时 C=x1x2 x3 xn 偶校验时 C=x1x2 x3 xn 例1 x=101101 奇校验码 1011011 偶校验码1011010 例2 x=101111 奇校验码 1011110 偶校验码1011111,奇偶校验码,2)特点 奇偶校验是一种常见的简单校验。只能发现奇数位错。不能发现偶数位错。更不能纠错。因几位同时出错的概率很小,所以,奇偶校验仍得到了广泛应用,历史悠久。,海明码:2rk+r+1,考研真题*:,(2010年)13、假定有4个整数用8位补码分别表示r1=FEH,r2=F2H,r3=90H,r4=F8H,若将运算结果存放在一个8位的寄存器中,则下列运算会发生溢出的是(B)A:r1*r2 B:r2*r3 C:r1*r4 D:r2*r4,