PIC 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. 
        movfw   bcdh 
        movwf   bin             ;bin = bcdh 
        clrc 
        rlf     bin, F          ;bin = bcdh * 2 
        rlf     bin, F          ;bin = bcdh * 4 
        addwf   bin, F          ;bin = bcdh * 4 + bcdh = bcdh * 5 
        rlf     bin, F          ;Now bin = bcdh * 5 * 2 = bcdh * 10 
        movfw   bcdl 
        addwf   bin, F          ;Finally bin = bcdh*10 + bcdl