二进制转BCD的Verilog实现.pdfVIP

  • 10
  • 0
  • 约小于1千字
  • 约 5页
  • 2022-04-21 发布于山东
  • 举报
BCD :Binary Coded Decimal 即用4 位二进制编码表示1 位的十进制数. 定义:BCD 码这种编码形式利用了四个位元来储存一个十进制的数码,使二进制和十进制之间的转换得以 快捷的进行。这种编码技巧,最常用于会计系统的设计里,因为会计制度经常需要对很长的数字串作准确 的计算。相对于一般的浮点式记数法,采用 BCD 码,既可保存数值的精确度,又可免却使电脑作浮点运算 时所耗费的时间。此外,对于其他需要高精确度的计算,BCD 编码亦很常用。 参考百度百科对 BCD 码的解释:/view/45179.htm 此处要介绍的是二进制转BCD 码的硬件实现,采用左移加3 的算法,具体描述如下: (此处以8-bit 二进制码为例) 1、左移要转换的二进制码1 位 2、左移之后,BCD 码分别置于百位、十位、个位 3、如果移位后所在的BCD 码列大于或等于5 ,则对该值加3 4、继续左移的过程直至全部移位完成 举例:将十六进制码0xFF 转换成BCD 码 Verilog实现 加3操作: 真值表 因为有“大于等于5就加3”的规则存在,所以,无论十位、个位的4-bit数,最大都不会超过9. 因此add3 模块只要写到9就可以了。 在add3模块中,小于5的数据,输出还是原来的数。这样写是为了省去很多if的判断,便于程序的书写 和阅读。

文档评论(0)

1亿VIP精品文档

相关文档