×
嵌入式 > 技术百科 > 详情

将一个字节的二进制数转换为两位16 进制数的ASCⅡ码

发布时间:2020-06-09 发布时间:
|

将一个字节的二进制数转换为两位16 进制数的ASCⅡ码

main: mov a,@0x9f ;二进制数为0x9f

mov 0x30,a ;二进制数存入0x30

mov a,@0x02

mov 0x10,a ;0x10 中存放转换次数

mov a,@0x31

mov 0x04,a ;0x04 中为转换后数据存放地址

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 ;循环次数减1,为0 则返回

jmp B1 ;不为0 继续转换

self: jmp self

eop


 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
Teledyne e2v的耐辐射四臂Cortex-A72空间处理器成功通过100 krad TID测试