控制/MCU
编写子程序Bin2BCD、BCD2Bin实现二进制数到压缩BCD码的相互转换。待转换的二进制数存放在w寄存器内,子程序调用完成后得到的BCD码仍存放在w寄存器内返回。例如:
movlw .45 ; w=45
call Bin2BCD ;
nop ; w=0x45
二进制数转压缩BCD码的方法是将二进制码左移8次,每次移位后都检查低四位是否大于4,如果大于4则低四位加3,否则不加;高4位做同样处理。
程序框图:
因为压缩BCD码为十进制数,所以只要取其高四位和低四位,将高四位乘10D加上低四位即可。为了编程的方便,可以将乘10D转化为累加10次。
程序框图:
全部0条评论
快来发表一下你的评论吧 !