用心写铭记日常,最迷人的不在远方

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

非数值数据

1.逻辑值
意为逻辑状态下赋予的真或者假,逻辑值有两种情况:成立和不成立,成立时我们说逻辑值为真,使用True或者1表示,不成立时我们说逻辑值为假,使用false或者0表示。在程序设计里面,一般关系运算符、逻辑运算符运算的结果都是逻辑值,逻辑数据只能参加逻辑运算,并且是按位进行的。

2.字符
由拉丁、数字、标点符号及一些特殊符号组成,他们统称字符,所有字符的集合叫做字符集,字符不能直接在计算机内部进行处理,因而也必须对其进行数字化编码,字符集中每一个都有一个代码(就是二进制的序列),构成了该字符集的代码表,简称码表。码表中的代码具有唯一性。字符主要用于外部设备和计算机之间交换信息。ASCII码就是最常见的字符集

汉字被输入到计算机内部后,就按照一种称为内码的编码形式在系统中进行存储、查找、传送等处理。对于西文字符,他的内码就是ASCII码,对于汉字内码选择,必须考虑一下几个因素:
1.不能有二义性,就是不能和ASCII码有相同的编码。
2.要与汉字在字库中的位置有关系,以便于汉字的处理、和查找。
3.编码应尽量短

数据的宽度和存储

1.计算机内部任何信息都被表示成二进制编码形式,二进制数据的每一位(0或1)是组成二进制信息的最小单位,称为一个比特,或称为元,简称位,比特是计算机处理存储和传输信息的最小单位。
2.每个西文子符需要用8个比特表示,而每个汉字需要用16个比特才能表示。在计算机内部,二进制信息的计量单位是字节,也称组,一个字节等于8个比特。
3.计算机中运算和处理二进制信息时使用的单位除了比特和字节,还经常使用字作为单位。
3.在考察计算机行能时,一个很重要的性能参数就是机器的字长,平常所说的“某机器时16位机或是32位机”中的16、32就是字长
3.字和字长的概念不同。字用来表示被处理的信息的单位,用来度量各种数据类型的宽度。而字长表示进行数据运算、存储和传送的部件的宽度,他反映了计算机处理信息的一种能力。字和字长的长度可以一样,也可以不一样。

任何信息在计算机中用二进制编码后,得到的都是一串二进制序列,每8位构成一个字节,不同的数据类型具有不同的字节宽度。在计算机中存储数据时,数据从低位到高位可以按从左到右排列,也可以按从右到左

数据校验码

数据在计算机内部进行计算、存取和传送过程中,由于元器件故障或噪音干扰等原因会出现差错,为了减少和避免这些错误,一方面要从计算机硬件本身的可靠性入手,在电路、电源、布线等各方面采取必要的措施,提高计算机抗干扰能力;另一方面要采取相应的数据检错和校正措施,自动的的发现并纠正错误。

1.奇偶校验码:在奇偶校验码中,若两个数据位不同,则他们的校验位就不同;若有偶数位不同,则虽校验位相同,但至少有两位数据位不同,因而任意两个码之间至少有两位不同。根据码距和检错/纠错能力的关系可知,他只能发现奇数位出错,不能发现偶数位出错,而且不能发现出错的位置,不具备纠错能力。但奇偶校验法所用的开销小,它常被用储存器读写检查或按字节传输过程中的数据校验,所以奇偶叫校验法用于校验字节长的代码还是有效的。

2.海明校验码:它的实现原理,是在k个数据位之外加上r个校验位,从而形成一个k+r位的新的码字,使新的码字的码距比较均匀地拉大。把数据的每一个二进制位分配在几个不同的偶校验位的组合中,当某一位出错后,就会引起相关的几个校验位的值发生变化,这不但可以发现出错,还能指出是哪一位出错,为进一步自动纠错提供了依据。只要增加少数几个校验位,就能检测出二位同时出错、亦能检测出一位出错并能自动恢复该出错位的正确值的有效手段,后者被称为自动纠错.

3.循环冗余校验码(CRC):简称循环码,是一种常用的、具有检错、纠错能力的校验码,在早期的通信中运用广泛。循环冗余校验码常用于外存储器和计算机同步通信的数据校验。奇偶校验码和海明校验码都是采用奇偶检测为手段检错和纠错的(奇偶校验码不具有纠错能力),而循环冗余校验则是通过某种数学运算来建立数据位和校验位的约定关系的。
CRC码的纠错:当接收方将收到的CRC码用约定的生成多项式G(x)去除,发现余数不为0时,需要判断出错的位置。不同的出错位置其余数不同,而且对于不同的码字,在确定的码制与生成多项式下,只要出错位置相同,则余数一定相同。

posted on 2020-09-18 14:19  Alien林  阅读(282)  评论(0编辑  收藏  举报

levels of contents