將一個字節(jié)的二進制數(shù)轉(zhuǎn)換為兩位16 進制數(shù)的ASCⅡ碼
將一個字節(jié)的二進制數(shù)轉(zhuǎn)換為兩位16 進制數(shù)的ASCⅡ碼
main: mov a,@0x9f ;二進制數(shù)為0x9f
mov 0x30,a ;二進制數(shù)存入0x30
mov a,@0x02
mov 0x10,a ;0x10 中存放轉(zhuǎn)換次數(shù)
mov a,@0x31
mov 0x04,a ;0x04 中為轉(zhuǎn)換后數(shù)據(jù)存放地址
mov a,0x30
B1: and a,@0x0f ;取a 低4 位
mov 0x00,a
sub a,@0x09 ;低4 位大于9 跳往B2
jbs 0x03,0
jmp B2
mov a,0x00 ;低4 位不大于9 則加0x30
add a,@0x30
mov 0x00,a ;將ASCⅡ碼存入0X04 所指單元
jmp B3
B2: mov a,0x00 ;大于9 則加0X37
add a,@0x37
mov 0x00,a
B3: swapa 0x30 ;將0X30 高4 位換入A 低4 位
inc 0x04 ;存儲地址加1
djz 0x10 ;循環(huán)次數(shù)減1,為0 則返回
jmp B1 ;不為0 繼續(xù)轉(zhuǎn)換
self: jmp self
eop