BCD 码简介及其与⼗进制数字字符串之间的转换二进制编码转换
⼤家都知道在计算机中,数据的常⽤编码格式有⼆进制、⼋进制、⼗进制和⼗六进制等,这些编码格式之间可以相互转换。在电⼒通信协议中,很多数据都是⽤BCD格式来编码的,这些数据需要转换为普通的⼗进制数字串。本⽂⾸先对BCD码进⾏简单的介绍,然后⽤代码演⽰它与⼗进制数字字符串之间的转换。
BCD码简介
BCD码(Binary Coded Decimal )是⼀种⼆进制的数字编码形式,它是⽤⼆进制编码的⼗进制代码。这种编码形式利⽤四个位来储存⼀个⼗进制数,使得⼆进制和⼗进制之间的转换得以快捷地进⾏。常见的BCD编码有8421BCD码,2421BCD码和余3码,其中⼜以8421BCD 码最为常见。本⽂介绍8421BCD码与⼗进制数字字符串之间的转换。
⼗进制数与8421BCD码的对应关系如下表所⽰:
从上表中,我们也可以看出⼗进制数与8421BCD码的对应关系:两个字节的⼗进制数可以⽤⼀个字节的8421BCD码来表⽰。例如,数字字符串“19”是两个字节,它对应的8421BCD码为“00011001”(只有⼀个字节),其中⾼四位的“0001“代表⼗进制的“1“,低四位的“1001“代表⼗进制的“9“。
本程序是运⾏在Linux系统上的,⼤家可以使⽤“gcc -g -o BCD2String BCD2String.c”命令对代码进⾏编译,之后运⾏“./BCD2String”命令,结果如下:⼤家可以根据运⾏的结果来阅读程序,看⼀下8421BCD码与⼗进制数字串之间的转换原理。$ ./BCD2String
szDigitBuf=7539!
szBCDData=19!
szDigitBuf=19!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论