【发布时间】:2014-04-04 00:35:06
【问题描述】:
我是汇编新手并创建一个程序,该程序在AX 寄存器中获取一个值,例如F43A,并将其转换为十进制的 ascii 字符串。
例如,AX = 8EFFh 将打印出-28929。 (将 2s 补码转换为 ascii)
我无法理解寄存器。我是否必须先将AX 寄存器转换为十进制,或者这是否暗示如果AX = 000Ah 以十六进制表示AX 也等于十进制的10。
也是这样
mov AX,000Ah
cmp AX,10
工作?
任何帮助将不胜感激。我们将使用基于AX 的十进制值的降幂算法。虽然AX 的输入值将是十六进制。
如果这不起作用,我将如何从AX 中获取十进制值?
【问题讨论】:
-
请注意,当您引用十六进制值时,请将它们设置为 0x000A 或 000Ah
标签: assembly compare ascii x86-16