a_b:
mov a,@0x0 0X34,0X35存储中间结果
mov 0x34,a
mov 0x35,a
mov a,@0x0a 实现乘10
mov 0x33,a
a1: mov a,0x35 两字节二进制加法,在本例中高字节肯定无进位
add a,0x31
mov 0x35,a
mov a,0x34
add a,0x30
mov 0x34,a
jbc 0x03,0
inc 0x35
djz 0x33
jmp a1
mov a,0x32
add 0x34,a
jbc 0x03,0
inc 0x35
mov a,0x34
mov 0x30,a
mov a,0x35
mov 0x31,a
ret
eop
七 二进制数转换为BCD码
本例为单字节二进制数(0X20)转换为非压缩BCD码,存在0X25,0X24,0X23中,0X25为百位,0X23为个位。
main: mov a,@0xa4 赋值
mov 0x20,a
mov 0x21,a
mov 0x22,a
mov a,@0x0 0x23,0x24,0x25单元清0
mov 0x23,a
mov 0x24,a
mov 0x25,a
mov a,@0x64 对100的个数计数
mov 0x26,a
mov a,@0x25 百位存在0x25中
mov 0x04,a
call a0 调计数子程
mov a,@0x0a 对10的个数计数
mov 0x26,a
上一篇:EMC单片机写的I2C程序