一、非数值数据的编码表示
1、逻辑值
n 位二进制数可表示 n 个逻辑值
逻辑数据只能参加逻辑运算
逻辑数据和数值数据都是一串0/1序列
二、编码的区别
ASCII编码:ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。标准ASCII 码也叫基础ASCII码,
使用7 位二进制数(剩下的1位二进制为0)来表示所有的大写和小写字母,数字0 到9、标点符号, 以及在美式英语中使用的特殊控制字符。
GBK编码:由于ASCII编码不支持中文,因此,当中国人用到计算机时,就需要寻求一种编码方式来支持中文。
于是,国人就定义了一套编码规则:当字符小于127位时,与ASCII的字符相同,
但当两个大于127的字符连接在一起时,就代表一个汉字,第一个字节称为高字节(从0xA1-0xF7),第二个字节为低字节(从0xA1-0xFE),这样大约可以组合7000多个简体汉字。这个规则叫做GB2312。
Unicode编码:因为世界国家很多,每个国家都定义一套自己的编码标准,结果相互之间谁也不懂谁的编码,就无法进行很好的沟通交流,
所以及时的出现了一个组织ISO(国际标准化组织)决定定义一套编码方案来解决所有国家的编码问题,
这个新的编码方案就叫做Unicode。
三、
汉字字符
a.编码形式
·输入码:对汉字用相应按键进行编码表示,用于输入
·内码:用于在系统中进行存储,查找,传送等处理
·字模点阵或轮廓,用于显示/打印
b.GB2312-80字符集
·由三部分组成
(1)字母、数字和各种符号,包括英文、俄文、日文平假名与片假
名、罗马字母、汉语拼音等共687个
(2)一级常用汉字,共3755个,按汉语拼音排列
(3)二级常用汉字,共3008个,不太常用,按偏旁部首排列
·汉字的区位码
-码表由94行、94列组成,行号为区号,列号为位号,各占7位
-指出汉字在码表中的位置,共14位,区号在左)位号在右
·汉字的国标码
-每个汉字的区号和位号各自加上32(20H),得到其“国标码”
-国标码中区号和位号各占7位。在计算机内部,为方便处理与存储,前面添一个0,构成一个字节
四、
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码,是一种具有较强检错、纠错能力的效验码,常用于外存储器的数据效验
循环冗余码效验通过某种数学运算在数据和效验位之间建立约定关系,主要用于对大批量数据的存储或传输效验。