【计算机基础】2.计算机中数据的表示(2)

标签: 计算机基础  机器码

计算机中数据的表示(2)

一、机器码
  1. 十进制数与字符编码的表示
    ● BCD码:用4位二进制数表示表示以为十进制数,叫二-十进制编码,叫BCD码

    1. 有权码:用的最多的是8421码,即4个二进制位的权从高到低分别是8、4、2、1.
    2. 无权码:常用余3码和格雷码
      余3码:在8421基础上,把每个数的代码加上0011
      格雷码:相邻的两个代码之间只有1位不同
      这里写图片描述
  2. ASCII码(美国标准信息交换代码)
    采用7个二进制位进行编码,低四位用作行编码,高四位用作列编码

  3. 汉字编码
    输入、内部处理、存储和输出对汉字要求不同。
    1. 输入码:数字编码、拼音码、字形码
    2. 内部码:汉字在设备和信息处理系统内部存储、处理、传输汉字用的代码。比如采用GB2312-80使用两个字节存放一个汉字编码
    3. 字形码:表示汉字的自模数据,通常用点阵、适量函数等方式表示,用点阵表示自行时,汉字字形码指的这个汉字字形点阵的代码。简易型汉字,16✖️16点阵,高精准型汉字为24✖️24等。字形码信息大,占用内存大。字库存储每个汉字的字符点阵,当检索字符时,输入字符点阵得到字形。
二、校验码

校验码:用来检测传送的数据是否出错。
码距:一个编码系统中任意两个合法二进制编码之间至少有多少个二进制位不同。例如4位8421码的码距为1,即在传输过程中,该代码的一位或多位发生错误,都将变成另外一个合法编码,这种代码无差错校验能力。
1. 奇偶校验码
奇偶校验是一种简单有效的校验方法。这种方法通过在编码中増加一个校验位来使编码中1的个数为奇数(奇校验)或者偶数(偶校验),从而使码距变为2。对于奇偶校验,它可以检测代码中奇数位出错的编码,但不能发现偶数位出错的情况,即当合法编码中奇数位发生了错误,也就是编码中的1变成0或0变成1,则该编码中1的个数的奇偶性就发生了变化,从而可以发现错误。

    ![这里写图片描述](https://img-blog.csdn.net/20180905211437446?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzM3MTEzNTM5/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
    常用的奇偶校验码有三种:水平奇偶校验码、垂直奇偶校验码和水平垂直校验码。
      (1)水平奇偶校验码。对每一个数据的编码添加校验位,使信息位与校验位处于同一行。
      (2)垂直奇偶校验码。这种校验码把数据分成若干组,一组数据占一行,排列整齐,再加

行校验码,针对每一列采用奇校验或偶校验。
这里写图片描述
(3)水平垂直校验码。在垂直校验码的基础上,对每个数据再增加一位水平校验位,便构成水平垂直校验码。
这里写图片描述

  1. 海明码
    海明码也是利用奇偶性来检错和纠错的校验方法。海明码的构成方法是:在数据位之间插入k个校验位,通过扩大码距来实现检错和纠错。
    这里写图片描述
    这里写图片描述
    这里写图片描述

  2. 循环冗余校验(CRC)
    广泛用于数据通信领域和磁介质存储系统中。它利用生成多项式为k个数据位产生r个校验位来进行编码,编码长度为k+r.CRC码的代码格式为:
    这里写图片描述
    由此可知,循环冗余校验码是由两部分组成的,左边为信息码(数据),右边为校验码。若信息码占k位,则校验码就占n-k位。其中,n为CRC码的字长,所以又称为(n,k)码。校验码是由信息码产生的,校验码位数越长,该代码的校验能力就越强。在求CRC编码时,采用的是模2运算。
    模2运算:按位运算,不发生借位和进位,如1+1=0,0-1=1

原文链接:加载失败,请重新获取