我正在使用this教科书学习x86_64
汇编程序(yasm
)。在那里,我遇到了以下定义文件访问标志的行:
O_RDONLY equ 000000q
O_WRONLY equ 000001q
O_RDWR equ 000002q
问题是他们的价值观是什么意思? q
代表什么?
答案 0 :(得分:9)
在NASM / YASM中,它是一个后缀,表示该数字为八进制。来自documentation
3.5.1。数字常量
数字常量只是一个数字。 NASM允许您以多种方式指定各种数字的数字:您可以后缀H, Q 或O,B可以是十六进制,八进制和二进制,或者您可以前缀0x对于C风格的十六进制,或者你可以在Borland Pascal风格的前缀$ for hex。但是请注意,$前缀作为标识符的前缀实现双重任务(参见第3.1节),因此前缀为$符号的十六进制数字必须在$后面有一个数字而不是一个字母。
一些例子:
{}