第1章 数制与编码 联系客服

发布时间 : 星期四 文章第1章 数制与编码更新完毕开始阅读

第1章 数制与码制 21

2421BCD码是另一种有权码,它的各位权值分别是2、4、2、1。除了上面列出的两种,常见的还有4221BCD码和5421BCD码,如表1-8所示。

表1-8 常见的几种加权BCD码 8421BCD 8s 4s 2s 1s 2421BCD 2s 4s 2s 1s 4221BCD 4s 2s 2s 1s 5421BCD 5s 4s 2s 1s 十进制 0 1 2 3 4 5 6 7 8 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 0 1 1 0 1 1 0 1 1 1 1 0 0 0 0 1 1 0 1 1 0 0 1 1 0 0 1 0 0 1 0 1 1 1 1 1 0 1 1 1 0 1 1 0 1 0 1 0 0 0 1 1 1 0 1 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 0 0

用BCD码表示十进制数,只要把十进制数的每一位数码,分别用BCD码取代即可,反之,若要知道BCD码代表的十进制数,只要BCD码以小数点为起点向左、右每四位分成一组,再写出每一组代码代表的十进制数,并保持原排序即可。

例1-22 求出十进制数902.4510的8421BCD码。

解:下图说明了将十进制数转换为BCD(8421)码的方法。将十进制数的每一位转换为其相应的4位BCD码(见表1-8所示),那么十进制数902.45就等于8421BCD码10000010.10018421BCD,即

902.4510 = 100100000010.010001018421BCD

图1-14 十进制到BCD码的转换过程

例1-23 求出5421BCD码10000010.10015421BCD所表示的十进制数。

解: 将BCD码转换为十进制数的方法如下图所示。首先将5421BCD码以小数点为起点向左、右每四位一组进行划分,每一组由其相对应的十进制数位表示,记在下方。那么5421BCD码10000010.1001就等于十进制数52.6,即:

10000010.10015421BCD = 52.610

22 数字电子技术

图1-15 BCD码到十进制码的转换过程

1.4.2 不加权的二进制码

有一些不加权的二进制码,它们的每一位都没有具体的权值。例如,余3码、格雷码就是两种不加权的二进制码。

1.余3码

余3码是一种特殊的BCD码,它是由8421BCD码加3后形成的,所以叫做余3码(简写为XS3)。如表1-9所示。对于一个数N,它的余3码和对应的8421BCD码之间有如下关系式:

(N)XS3?(N)8421BCD?(3)8421BCD

例1-24 用余3码对十进制数 N = 291610进行编码。

解: 首先对十进制数进行8421BCD编码,之后再将各位BCD码加3即可。 2 → 0010, 9 → 1001, 1 → 0001, 6 → 0110 所以有:N = 291610 = 0101110001001001XS3

表1-9 BCD码和余3码的比较 十进制数 8421BCD 余3码 0 1 2 3 4 5 6 7 8 9

0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100

第1章 数制与码制 23

2.格雷码

格雷码是另一种不加权的二进制码,它不属于BCD类型的编码。格雷码又叫循环码,具有多种编码形式,但有一个共同的特点,就是任意两个相邻的格雷代码之间,仅有一位不同,其余各位均相同。和二进制数相似,格雷码可以拥有任意的位数。表1-10中列出了格雷码及相应二进制码与十进制数的对照表。

表1-10 4位格雷码与二进制码的比较

十进制数 二进制码 格雷码 十进制数 二进制码 格雷码 0 1 2 3 4 5 6 7 0000 0001 0010 0011 0100 0101 0110 0111 0000 0001 0011 0010 0110 0111 0101 0100 8 9 10 11 12 13 14 15 1000 1001 1010 1011 1100 1101 1110 1111 1100 1101 1111 1110 1010 1011 1001 1000

格雷码与二进制码之间经常相互转换,具体方法如下: (1)二进制码到格雷码的转换

? 格雷码的最高位(最左边)与二进制码的最高位相同。

? 从左到右,逐一将二进制码的两个相邻位相加,作为格雷码的下一位(舍去进位)。

? 格雷码和二进制码的位数始终相同。 例1-25 把二进制数1001转换成格雷码。 解:

图1-16 二进制数到格雷码的转换

(2)格雷码到二进制码的转换

? 二进制码的最高位(最左边)与格雷码的最高位相同。

? 将产生的每个二进制码位加上下一相邻位置的格雷码位,作为二进制码的下一位(舍去进位)。

24 数字电子技术

例1-26 把格雷码0111转换成二进制数。 解:

图1-17 格雷码到二进制数的转换

1.4.3 字母数字码

计算机处理的数据不仅有数码,还有字母、标点符号、运算符号及其它特殊符号。这些符号都必须使用二进制代码来表示,计算机才能直接处理。通常,可同时用于表示字母和数字的编码称为字母数字码。

目前,许多国家在计算机和其它数字设备中广泛使用ASCII码(读作“阿瑟克”码),即美国信息交换标准码(American Standard Code for Information)。ASCII码用7位二进制码来表示128个不同的数字、字母和符号,使用时加第八位作奇偶校验位。ASCII码的编码如表1-11所示。

ASCII码是一种常用的现代字母数字编码,用于计算机之间、计算机与打印机、键盘和视频显示等外部设备之间传输字符数字信息,操作人员由计算机键盘输入的信息在计算机内部的存储也使用ASCII码。ASCII码已成为微型计算机标准输入、输出编码。 例1-27 一组信息的ASCII码如下,请问这些信息是什么?

1001000 1000101 1001100 1010000

解:把每组7位码转换为等值的十六进制数,则有: 48 45 4C 50

以此十六进制数为依据,查表1-11可确定其所表示的符号为: H E L P