【计算机组成原理】数据表示和运算

进制转换

在这里插入图片描述
在这里插入图片描述

BCD码

通常采用4位二进制数来表示
在这里插入图片描述
几个常用的BCD码

  1. 8421码
    有权码。各位数值分别为b3、b2、b1、b0,权值分别为8、4、2、1,转化为十进制数为:D=8b3+4b2+2b1+b0
    ①若两个8421码相加的和9(1001),不需要修正
    ②若两个8421码相加的和10(1010),要加6(0110)修正
    ③当运算结果介于(包含)10101111六个无效码之间,需要加6(0110)修正
    在这里插入图片描述
  2. 余3码
    无权码。在8421码上加上0011.
  3. 2421码
    有权码。权值由高到低2、4、2、1.
    其中大于5的4位二进制数最高位为1,小于五最高位为0
51011

字符与字符串

1. ASCII码
共128个字符
2. 汉字表示和编码
区位码国标码都是输入码
国标码 = (区位码)16+2020H
汉字内码 = (国标码)16+8080H

校验码

通过增加冗余码来检验或纠错编码
通常某种编码都有许多码字组成。任意两个合法码字之间最少变化的二进制位数称为数据校验码码距,对于码距不小于2的数据校验码,开始具有检错的能力。码距越大,检错纠错的能力就越强,而且检错能力总是大于等于纠错能力
1.奇偶校验码
在这里插入图片描述

在原编码上加一个校验位码距=2,可以检测出一位错误或者是奇数位错误,但是不能确定出错的位置,也不能够检测出偶数位错误,增加的冗余位成为奇偶校验位
奇偶校验实现方法:
若干有效位有效信息再加上一个二进制位(校验位)组成校验码,校验位的取值(0或1)将使整个校验码中“1”的个数为奇数或偶数,所以有两种可供选择的校验规律:

奇校验码:整个校验码(有效信息位和校验码)中“1”的个数为奇数

偶校验码:整个校验码(有效信息位和校验码)中“1”的个数为偶数

奇偶校验码缺点: 具有局限性,奇偶校验只能发现数据代码中奇数位的出错情况,而且不能纠正

  1. 海明校验码
    海明码是广泛采用的一种有效的校验码,实际上是一种多重奇偶校验码

原理:在有效信息位中加入几个校验位,形成海明码,并把海明码的每个二进制位分配到几个奇偶校验组中。

当某一位出错后,就会引起有关的几个校验位的值发生变化,这样不但可以发现错位,还能指出错位的位置,为自动纠错提供依据。根据纠错理论可以得出,

L - 1 = D + C (D≥C)

即编码最小码距L越大,其检测错误的位数D就越大,纠错的位数C也越大,且纠错能力恒小于等于检错能力。海明码就是介绍这一理论提出的,具有纠错能力的一种编码。

猜你喜欢

转载自blog.csdn.net/qq_43511405/article/details/107801633