1.非数值数据的类型
逻辑值、字符等数据都是非数值数据,在机器内部它们用二进制表示。
(1)逻辑值:每个字或是其他可寻址单位(字节、半字)是作为一个整体数据单元。逻辑数据和数值数据都是一串0/1序列。逻辑运算指令处理的是逻辑数据,算术运算指令处理的数值数据。
(2)西文字符:西文由拉丁字母、数字、标点符号以及一些特殊的符号所组成,统称为字符。所有字符的集合叫做字符集,字符不能直接在计算机内部进行处理,要对其进行数字化编码。西文只需要对有限的字母和数学符号、标点符号等进行编码,所以总数不会超过256个
(3)汉字字符:汉字的输入码的码元是西文键盘的某个按键。要与汉字在字库中的位置有关系,以便于汉字的处理、查找。
2.编码的区别
ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。
3.校验码的方式
1.奇偶校验码
每位异或判断是奇数个1还是偶数个1。奇偶校验码是奇校验码和偶校验码的统称. 它们都是通过在要校验的编码上加一位校验位组成. 如果是奇校验加上校验位后,编码中1的个数为奇数个。如果是偶校验加上校验位后,编码中1的个数为偶数个。
2.海明校验码
海明码也是利用奇偶性来校验数据的. 它是一种多重奇偶校验检错系统,它通过在数据位之间插入k个校验位,来扩大码距,从而实现检错和纠错.
3.循环冗余校验码
是一种能力相当强的检错、纠错码,并且实现编码和检码的电路比较简单,常用于串行传送(二进制位串沿一条信号线逐位传送)的辅助存储器与主机的数据通信和计算机网络中。 [3]
循环码是指通过某种数学运算实现有效信息与校验位之间的循环校验(而海明码是一种多重校验)。 [3]
这种编码基本思想是将要传送的信息M(X)表示为一个多项式L,用L除以一个预先确定的多项式G(X),得到的余式就是所需的循环冗余校验码。 [3]
这种校验又称多项式校验。 [3]
理论上可以证明循环冗余校验码的检错能力有以下特点:①可检测出所有奇数位错;②可检测出所有双比特的错;③可检测出所有小于、等于校验位长度的突发错。 [3]