| CODE |
; input in W, output in temp movwf temp bcf status,c rrf temp,f ;temp = input * 128 / 256 addwf temp,f ;carry/temp = input * 384 / 256 rrf temp,f ;temp = input * 192 / 256 bcf status,c rrf temp,f ;temp = input * 96 / 256 swapf temp,w andlw 0x0F ;w = input * 6 / 256 addwf temp,f ;temp = input * 102 / 256 ;or: addwf temp,w for result in w return |