如何利用二进制数实现BCD码的转换

编写子程序Bin2BCD、BCD2Bin实现二进制数到压缩BCD码的相互转换。待转换的二进制数存放在w寄存器内,子程序调用完成后得到的BCD码仍存放在w寄存器内返回。例如:

movlw .45 ; w=45

call Bin2BCD ;

nop ; w=0x45

一、实现二进制数到压缩BCD码的转换

二进制数转压缩BCD码的方法是将二进制码左移8次,每次移位后都检查低四位是否大于4,如果大于4则低四位加3,否则不加;高4位做同样处理。

程序框图:

如何利用二进制数实现BCD码的转换

如何利用二进制数实现BCD码的转换

如何利用二进制数实现BCD码的转换

二、实现压缩BCD码到二进制数的转换

因为压缩BCD码为十进制数,所以只要取其高四位和低四位,将高四位乘10D加上低四位即可。为了编程的方便,可以将乘10D转化为累加10次。

程序框图:

如何利用二进制数实现BCD码的转换

如何利用二进制数实现BCD码的转换

如何利用二进制数实现BCD码的转换

  • 如何利用二进制数实现BCD码的转换已关闭评论
    A+
发布日期:2019年07月14日  所属分类:参考设计