您的位置:首页 > 其它

ASCII与BCD的理解,主要讲解BCD编码

2016-11-02 09:31 405 查看
BCD

即BCD代码。Binary-Coded Decimal‎,简称BCD,称BCD码或二-十进制代码,亦称二进码十进数。是一种二进制的数字编码形式,用二进制编码的十进制代码。这种编码形式利用了四个位元来储存一个十进制的数码,使二进制和十进制之间的转换得以快捷的进行。这种编码技巧,最常用于会计系统的设计里,因为会计制度经常需要对很长的数字串作准确的计算。相对于一般的浮点式记数法,采用BCD码,既可保存数值的精确度,又可免却使电脑作浮点运算时所耗费的时间。此外,对于其他需要高精确度的计算,BCD编码亦很常用。

简介编辑

由于十进制数共有0、1、2、……、9十个数码,因此,至少需要4位二进制码来表示1位十进制数。在使用BCD编码时一定要注意其有效的编码仅十个,即:0000~1001.四位二进制数的其余六个编码1010,1011,1100,1101,1110,1111不是有效编码。常见BCD编码有8421BCD码,2421BCD码,余3码,对应编码表如下

通常开发使用8421,8421对于新手能一看就懂



ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 646。

请注意,ASCII是American Standard Code for Information Interchange缩写,而不是ASCⅡ(罗马数字2),有很多人在这个地方产生误解。

对于ASCII具体的就不说了网上一搜一大坨。

这里给一张ASCII与BCD的转换图



关于上述的压缩BCD与非压缩BCD码:

BCD码是用二进制的“数”来表示十进制的“数字”,对于“数”,在计算机中总是用一定位数的“二进制数字”来表示的。 因此,对于一个“十进制数字”(例如“6”),我们可以用一个“8位二进制数”来表示(即0000 0110 b),这称为非压缩的BCD码;当然,我们也可以用一个“4位的二进制数”来表示它(即 0110 b),这称为压缩的BCD码。所谓压缩就是一位少了4个0

于是,十进制数“36”用非压缩的BCD码表示为“00000011 00000110”而用压缩的BCD码表示为“0011 0110”。其中00000011和0011代表3,00000110和0110代表6,以此类推
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: