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

一、非数值数据的编码表示

1、逻辑值

  • n 位二进制数可表示 n 个逻辑值
  • 逻辑数据只能参加逻辑运算
  • 逻辑数据和数值数据都是一串0/1序列

2、西文字符

  • 西文由拉丁字母、数字、标点符号及一些特殊符号所组成,它们统称字符
  • 字符的集合叫字符集,字符集中每一个字符都有一个二进制编码的0/1序列,构成了该字符集的代码表(码表)
  • 西文字符的内码就是ASCII码

3、汉字字符

  • 汉字系统必须处理几种汉字代码:输入码、内码、字模点阵码
  • 对每个汉字用相应的按键进行的编码表示就称为汉字的输入码,又称外码
  • 汉字内码的选择条件:不能和ASCII码有相同的编码;要与汉字在字库中的位置有关系;编码应尽量短
  • 在计算机内部,两个字节表示一个汉字
  • 汉字的字形主要有两种描述方式:字模点阵描述和轮廓描述

二、数据的宽度和存储

1、数据的宽度和单位

  • 计算机中处理、存储和传输信息的最小单位:比特(bit)
  • 计算机中,二进制信息的计量单位:字节(byte)
  • 1 byte = 8 bit
  • 不同计算机中字的长度和组成不完全相同,字用来表示被处理信息的单位,用来度量各种数据类型的宽度
  • 字长等于CPU内部用于整数运算的运算器位数和通用寄存器宽度
  • 同一类型的数据并不是所有机器都采用相同的数据类型,分配的字节数随机器和编译器的不同二不同

2、数据的存储和排列顺序

  • 多字节数据存放在连续的字节序列中,各字节在连续字节系列中的排列顺序不同,有两种排列方式:大端和小端
  • 大端方式将数据的最高有效字节MSB存放在地址单元中,将最低有效字节LSB存放在地址单元中(小端相反)
  • Sun(大端方式)和Alpha(小端方式)之间不能直接进行数据传送,因为它们采用了不同的存放方式

三、数据效验码

1、效验码

  • 除原数据信息外,还增加若干位编码,这些新增的代码称为效验码
  • 由若干位代码组成的一个字叫码字,将两个码字逐位比较,具有不同代码的位的个数叫做这两个码字间的距离,也称海明距离
  • 在数据效验码中,一个码字是指数据位和效验位按照某种规律排列得到的代码
  • 一般来说,合理地增加效验码、增大码距,就能提高检错/纠错的能力

2、奇偶效验码

  • 奇偶效验根据数据的奇偶性变化来检错,只能检测奇数个错,不具有纠错能力
  • 奇偶效验码常用于存储器读写检查或字节传输过程中的数据效验

3、海明效验码

  • 海明效验是分组奇偶效验,单纠错码(SCE)只能纠正一位错,“纠一检二”码(SEC-DED)可纠正一位错并检测两位数
  • 效验位和故障字的位数是相同
  • S5 S4 S3 S2 S1为00000时,无错
    S5 S4 S3 S2 S1仅一位不为0时,S指定位置上的效验位出错
    S5 S4 S3 S2 S1两位不为0时,数据和效验位中有两位同时出错
    S5 S4 S3 S2 S1三位不为0时,有一个数据位发生了错误
    S5 S4 S3 S2 S1四位或五位不为0时,出错严重

4、循环冗余效验码

  • 简称CRS码,是一种具有较强检错、纠错能力的效验码,常用于外存储器的数据效验
  • 循环冗余码效验通过某种数学运算在数据和效验位之间建立约定关系,主要用于对大批量数据的存储或传输效验
posted @ 2020-09-19 23:31  yinsirui  阅读(284)  评论(0编辑  收藏  举报