十六进制转ascii 十六进制转ASCII

游戏日常 2025-01-05 16:58:12

关于十六进制转ascii,十六进制转ASCII这个很多人还不知道,今天小源来为大家解答以上的问题,现在让我们一起来看看吧!

十六进制转ascii 十六进制转ASCII十六进制转ascii 十六进制转ASCII


十六进制转ascii 十六进制转ASCII


1、补充:之前段话说的有问题,所以修改了下,如下:(另外提交的时候没注意,个兄弟的回答已经是正确的了^_^)主要思想是0~9转为对应的ASCII码时加30h,而a,b,c,d,e,f则加37h,比30h多出来的7h就是通过adc(多加了CF的01h)以及daa(多加了06h)实现的。

2、先说对0~9的,以5为例,and al,0fhadd al,90h变为95hdaa这个时候的daa,由于95h低位,高位都小于9,且无进位,所以不变adc al,40h95h + 40h + CF = D5hdaa低位不变,高位大于9,所以加60h,变为35h,且CF = 1最终结果为35h,即字符5对应的ascii码53.然后是A~F,以C为例:and al,0fhadd al,90h变为9Chdaa这个时候的daa,先看低位,由于低位是C,大于9,所以加06h,结果变为A2h,再看高位,高位A,大于9,所以加60h,变为02h,CF = 1(有进位)adc al,40hadc作,02h + 40h + CF = 43hdaa此时43h低高位都小于9,所以无变化。

3、结果43h,也即C的ASCII码67。

本文到这结束,希望上面文章对大家有所帮助。

版权声明:本文内容由互联。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发 836084111@qq.com 邮箱删除。