【发布时间】:2020-08-23 21:01:23
【问题描述】:
我发现自己经常无法立即识别数字是十进制还是十六进制(如果十六进制数字没有前缀或字母)。例如,从上一个问题中得到一个像 0000000000400078 这样的数字,但不确定是哪个。
有没有办法在 x86_64 中显式指定带前缀的十进制数?例如:
mov %rsp, %rbp
movb $0x16, -1(%rbp)
movb $0d22 -2(%rbp) # <-- something like this
movb $0b10110, -3(%rbp)
我知道movb $22, -2(%rbx) 有效,但有没有办法明确地为它添加前缀/后缀,以便我们知道它是小数?
【问题讨论】:
-
sourceware.org/binutils/docs/as/Integers.html - 十进制整数以一个非零数字开头,后跟零个或多个数字 (
0123456789)。 -
@old_timer 你能澄清一下吗?您希望我在问题或标签或其他内容中添加更多信息吗?
-
@samuelbrody1249 x86 有多个汇编程序。它们都有略微不同的语法规则。所以重要的是要知道你正在为什么汇编程序编程。 Peter Cordes 为您标记了“GNU assembler”(gas),因为这似乎是您使用的。如果需要,请edit您的问题进行更正。
-
@fuz -- 哦,我现在明白了。感谢您的澄清。我会在以后的问题上补充。
标签: assembly x86-64 gnu-assembler att immediate-operand