十进制51的对应BCD码为 0101 0001,首4位为十进制的十位5,后4位为十进制的1。
因为十进制的51有两位十位和个位,所以其BCD用2x4位表示,
单位数的十进制 BCD用 1x4位表示,3位数的十进制BCD就用 3x4位表示............。
如下的4位十进制数 1200的BCD就有4x4位。
乘除法的时候可以不考虑进制的,比如说 #0FFH这个十六进制数 存放于A中,#100这个十进制数放于B中 然后DIV AB 这时 A等于#02H B等于#37H等于55
在然后
假设A中的数为 FFH
BINBCD:
MOV B, #100 (B=100,十进制100,)
DIV AB (A等于#02H,B等于#37H等于55)
MOV R3, A (A=02H)
MOV A, #10 (A=10=0AH,B=55=37H)
XCH A,B (A=55=37H, B=10=0AH)
DIV AB (A=05H=5 , B=5=05H)
SWAP A (A=50H,B=05H)
ADD A,B (A=55H,这时十位各位的BCD吗已经求出来了,将
37H=55转换为55H
END