SX Microcontroller Radix Math Method

BCD unpacked to binary 2 digit to 8 bit

From: Mike Keitz

;You have to have the 2 BCD digits in the low 4 bits of
;bcdh and bcdl, with the high 4 bits all zero.
;The result is place in bin.
;Note that it could be modified to just reuse one of the
;bcd locations to store the binary result.
        mov     W, bcdh
        mov     bin, W  ;bin = bcdh
        clrb    C
        rl      bin     ;bin = bcdh * 2
        rl      bin     ;bin = bcdh * 4
        add     bin, W  ;bin = bcdh * 4 + bcdh = bcdh * 5
        rl      bin     ;Now bin = bcdh * 5 * 2 = bcdh * 10
        mov     W, bcdl
        add     bin, W  ;Finally bin = bcdh*10 + bcdl