【代码】二进制转BCD [转]

BCD:Binary Coded Decimal 即用4位二进制编码表示1位的十进制数.html

 
定义:BCD码这种编码形式利用了四个位元来储存一个十进制的数码,使二进制和十进制之间的转换得以快捷的进行。这种编码技巧,最经常使用于会计系统的设计里,由于会计制度常常须要对很长的数字串做准确的计算。相对于通常的浮点式记数法,采用BCD码,既可保存数值的精确度,又可免却使电脑做浮点运算时所耗费的时间。此外,对于其余须要高精确度的计算,BCD编码亦很经常使用。
参考百度百科对BCD码的解释: http://baike.baidu.com/view/45179.htm
 
此处要介绍的是二进制转BCD码的硬件实现,采用左移加3的算法,具体描述以下:
(此处以8-bit 二进制码为例)
一、左移要转换的二进制码1位
二、左移以后,BCD码分别置于百位、十位、个位
三、若是移位后所在的BCD码列大于或等于5,则对该值加3
四、继续左移的过程直至所有移位完成
 
举例:将十六进制码0xFF转换成BCD码
二进制转BCD的Verilog实现
 
Verilog实现
加3操做:
真值表
二进制转BCD的Verilog实现

二进制转BCD的Verilog实现


二进制转BCD的Verilog实现

二进制转BCD的Verilog实现
相关文章
相关标签/搜索