• 1.摘要
  • 2.基本内容

压缩BCD码

基本内容

所谓的压缩BCD码,指的就是用四位二进制数表示一位BCD码,用一个字节表示的两位BCD码,称为压缩型BCD码。

一个BCD码占4位,而一个字节有8位。若把二个BCD码放在一个字节中,就叫压缩的BCD码。而一个字节只放一个BCD码,高位置0,则叫非压缩的BCD码。

压缩BCD码分为有权码和无权码。有权码是以不同的权值关系进行编码,所以,有权码可以按权展开求和得到等值十进制数如:8421(最常用)、2421、5421…;无权码如:余3码、格雷码(严格意义上格雷码并不属于BCD码)…则没有这种换算方式。

即一个字节存放两个十进制数位,压缩BCD码比非压缩的BCD码更节省存储空间,也便于直接完成十进制的算术运算,是汇编中广泛采用的理想方法。

用压缩的十进制数串表示一个数,它要占用主存连续的多个字节。每个数位占用半个字节(4个二进制位),其值也用二-->十进制编码(BCD码)或数字符的ASCII码的低4位表示。符号位也占用装修字节并放在最低数字位之后。其值选用四位编码中六种冗余状态中的有关值,如用12(C)表示正号,13(D)表示负号。例如+56和-35表示为:

0

5

6

12

(+56)10

0

3

5

13

(-35)10

压缩BCD码多用于汇编语言中。现在的电脑程序一般会由高级语言编写,一般在编写过程中不会具体体现BCD码。

还有一点,压缩BCD码在低阶的编程中很有用,举例如要写一个十进制为96的码制,用压缩BCD码为1001 0110,而用非压缩的BCD码就是00001001 00000110,在写程序时就不好辨认。