检查周围并没有看到任何有帮助的已回答的问题。所以我知道采用ASCII字符'9'你可以减去30h得到十六进制值9h。
现在要获得ASCII字符'A'的十六进制值,你需要减去32h然后加1d吗?我在正确的轨道上吗?
答案 0 :(得分:0)
从ASCII值中获取数字时,您可以减去0x30
sub al, 0x30
...或简单地通过0x0F
,如果您确定它是一个数字
and al, 0x0F
从ASCII值中获取字符时,必须参考ASCII间隔。
sub al, 0x41 ; for upper-case characters (0x41 - 0x5A)
sub al, 0x61 ; for lower-case characters (0x61 - 0x7A)