您的位置:首页 > 理论基础

以考带学计算机组成原理(进制与编码)

2012-09-29 20:27 316 查看
一、进制的表示与转换







二、机器码

计算机对数据进行运算操作时,把符号位和数值位一起编码来表示相应的数的各种方法有原码、补码、反码、移码等,下面的表格对此进行了总结。



二、了解校验码

由于各种原因常常导致计算机在处理信息过程中出现错误,为了避免这种错误,在每个字上添加一些校验位,用于确定字中出现错误的位置。有以下方式:

1、检错码

①偶校验编码和奇校验编码

检测到一位出错,不能定位。

例子:

假定最低一位为校验位,其余高8位为数据位,列表如下,从中看出,校验位的值取0,还是1,是由数据位中1的个数决定的。




2、纠错码

①模二四则运算

模二加法:按位加,不考虑进位:0+0=0,0+1=1,1+0=1,1+1=0,如:




模二减法:按位减,不考虑借位;0-0=0,0-1=1,1-0=1,1-1=0,如:




模二减法和模二加法的结果相同,可以用模二加法代替模二减法。

模二乘法:按摸2加求部分积之和,不考虑进位;如:




模二除法:






②循环校验码

循环码就是一种基于模二运算建立编码规则的校验码,它可以通过模二运算来建立有效信息和校验位之间的约定关系,即要求:

用一个多项式G(x)去除,一般情况下得到一个商Q(x)和余数R(x):

M(x)=Q(x)×G(x)+R(x)

M(x)-R(x)=Q(x)×G(x)

将M(x)减去余数R(x)就必定能为G(x)所除尽。因而可以设想让M(x)-R(x)作为编好的校验码送往目标部件,当从目标不见取得校验码时,仍用约定的多项式G(x)去除,若余数为0,表明该校验码正确;若余数不为0,表明有错,再进一步的由余数值确定出哪一位出错,从而加以纠正。

如:对四位有效信息1010做循环校验编码,选择的生成多项式G(x)=1011.

Ⅰ.令M(x)=1010,将M(x)左移r位,以便拼装r位余数。因为G(x)=1011有四位,所以r=3.(除数为4位,余数最多3位)。

M(x)×x3=1010000

Ⅱ.用生成的多项式G(x)对M(x)×x3作模2除:




Ⅲ.将左移r=3位后的待编有效信息与余数R(x)作模2加,即形成循环校验码:


M(x)×x3+R(x)=1010000+011=1010011

③海明校验码

海明校验码是一种多重的奇偶校验码,它将信息用逻辑形式编码,以便能够检错和纠错。用在海明码中的全部传输码字是由原来的心信息和附加的奇偶校验位组成的。每一个这种奇偶位被编在传输码字的特定位置上。在合适的时候时,无论是在错误的数位是原有信息位,还是附加校验位中的,这个系统都能把它分离出来。

步骤如下:

看到一篇博客,觉得讲的还不错,先贴在这里。/article/2152035.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: