计算机组成原理电子教案-第2章 计算机中数据的表示法
2.1.1 字符表示法 图2.1 字符串的存放 2.1.2 汉字表示法 2.2 数值数据表示法 (1)定点小数 2.浮点表示法 (2)浮点数的表示范围和规格化数 2.2.2 机器数的表示 2.补码表示法 3.反码表示法 4.移码表示法 【例】将十进制真值x(-127,-1,0,+1,+127)列表表示成二进制数及原码、反码、补码、移码值。 2.2.3 十进制数的表示 (1) 8421码 常用的3种BCD码 (3) 余3码 2.十进制数串在机器中的表示 (2) 压缩的十进制数串形式 2. 3 数据信息的校验 表2.3 校验位的取值 偶校验码的实现电路 2.3.2 海明校验 1.校验位的位数 表2.4 被校验信息位数与所需校验位位数 2.海明码的形成 2.3.3 循环校验 2.循环码的指错、纠错原理 小 结 习 题 二 0 1 1 0 1 0 1 0 1 0 1 0 1 1 0 0 1 1 0 1 1 0 1 1 0 1 0 0 1 1 0 1 1 0 0 1 1 0 0 1 0 1 1 0 1 0 1 1 0 0 1 0 1 1 1 0 1 1 0 0 偶校验位取值 奇校验位取值 被校验信息 ◇ 校验位的取值与校验方式的选定及被校验信息有关, 设被校验的信息B=blb2b3b4b5b6b7b8,校验位为P,则校验码的形式为blb2b3b4b5b6b7b8P。 奇校验位P的取值: P = b1⊕b2⊕b3⊕b4⊕b5⊕b6⊕b7⊕b8 偶校验位P的取值: P = b1⊕b2⊕b3⊕b4⊕b5⊕b6⊕b7⊕b8 ◇ 奇偶校验只具有发现出错的能力,不具有对出错位定位继而纠正错误的能力。 + + + + + + + + 同左侧电路 编码电路 译码电路 P (校验位) 八位数据位 D7 D6 D5 D4 D3 D2 D1 D0 p 偶校验 偶校验出错指示 海明校验不仅具有检测出错的能力,还具有指出错误所在位置的能力。这里只介绍一种具有检出某位出错的海明码。 奇偶校验只有一个校验位,只能指示出错与否.如果将被校验信息按某种规律分成若干组,每组一个校验位作奇偶测试,这样就能提供多位检错信息,指出哪位出错,为纠错提供依据,这就是海明码的基本思想。 设海明码为N位,其中被校验信息为k位,校验位为r位,即分成r组作奇偶校验,这样就能产生r位检错信息。r位信息构成一个指误字,指误字有2r种状态,其中一种状态表示无错误,余下的2r-1种状态,就能指出2r-1位中某位出错, 如果要求指出纠正一位出错,则校验位的位数的确定应满足关系式 N=k+r≤2r-1 例如,r=3,则N=k+3≤7,所以k≤4。也就是4位被校验的信息应配3位校验码才能实现校验。 … 7 6 5 4 3 2 r(位) … 58~120 27~57 12~26 5~11 2~4 1 k(位) 设被校验信息为b1b2…bk,校验位为P1P2…Pr, 它们构成的海明码为:H1H2H3…Hn,n=r+k 让Pj 占据海明码中第2j-1 位,而b1b2…bk依序见空占位。 示例 若N=11,其中k=7,则r=4的海明码可表示为 b7 b6 b5 P4 b4 b3 b2 P3 b1 P2 P1 Pi和bi 11 10 9 8 7 6 5 4 3 2 1 Hi (1)分组原则 表2.5 海明码每位所占用的校验位(k=7) 表2,6 每位校验位所校验 l=1 2=2 3=1+2 4=4 5=1+4 6=2+4 7=1+2+4 8=8 9=1+8 10=2+8 11=1+2+8 1 2 1, 2 4 1, 4 2, 4 1, 2, 4 8 1, 8 2, 8 1, 2, 8 l 2 3 4 5 6 7 8 9 10 11 说 明 占用的校验位号 海明码位号 1,3,5,7,9,11 1(P1) 2,3,6,7,10,11 2(P2) 4,5,6,7 3(P3) 8,9,10,1l 4(P4) 被校验的 位 号 校验位 位 号 b7 b6 b5 P4 b4 b3 b2 P3 b1 P2 P1 Pi和bi 11 10 9 8 7 6 5 4 3 2 1 Hi (2)校验位的取值 下面以被校验信息为4位,校验位r=3为例具体说明海明码的编码原理. 设4位被校验信息为b1b2b3b4=1011,校验位分别为P1、P2、P3。当分组采用偶校验时, P1=b1⊕b2⊕b4=1⊕0⊕1=0 P2=b1⊕b3⊕b4=1⊕1⊕1=1 P