预习非数值数据的编码方式

非数值数据的编码表示

逻辑值

  • 逻辑数据只能参加逻辑运算,并且是按位进行的
  • 逻辑数据和数值数据都是一串0/1序列,在形式上无差异,需要通过指令的操作码类型来识别他们

西文字符

  • 由拉丁字母,数字,标点符号以及一些特殊符号表示,它们统称为字符(character)
  • 所有的字符集合叫做字符集
  • 目前计算机中使用最广泛的西文字符集及其编码是ASCII码,即美国标准信息交换码

汉字字符

  • 汉字系统必须处理以下几种汉字代码:输入码、内码、字模点阵码。

汉字的输入码

  • 汉字利用英文键盘输入汉字,汉字的输入码的码元是西文键盘中的某个按键。

字符集与汉字内码

  • 西文字符的内码是ASCII码
  • 汉字内码是GB2312国标字符集

数据效验码

奇偶校验码

  • 最简单的数据校验方法是奇偶校验
  • 奇偶效验根据数据的奇偶性变化来检错,只能检测奇数位出错,不能检测偶数位出错,不具有纠错能力

海明效验码

  • 它的实现原理,是在k个数据位之外加上r个校验位,从而形成一个k+r位的新的码字,使新的码字的码距比较均匀地拉大。把数据的每一个二进制位分配在几个不同的偶校验位的组合中,当某一位出错后,就会引起相关的几个校验位的值发生变化,这不但可以发现出错,还能指出是哪一位出错,为进一步自动纠错提供了依据。但是因为这种海明校验的方法只能检测和纠正一位出错的情况。所以如果有多个错误,就不能查出了。

循环冗余校验码

  • CRC检验原理:在发送端,先把数据划分为组,假定每个组k个比特。现假定待传送的数据M=101001(k=6)。CRC运算就是在数据M后面添加供差错检验用的n位冗余码,然后构成一个帧发送出去,一共发送(k+n)位。在要发送的数据后面加n位的冗余码,虽然增加了数据传送的开销,但却可以进行差错检测。当传输可能出现差错时,付出这种代价是很值得的。
posted @ 2020-09-21 22:13  ahhhhhhhhhhhhhh  阅读(209)  评论(0编辑  收藏  举报