Assembly 汇编中MOV指令的有效性
这是有效的汇编指令吗 MOV-CX,0F9Assembly 汇编中MOV指令的有效性,assembly,x86,nasm,masm,mov,Assembly,X86,Nasm,Masm,Mov,这是有效的汇编指令吗 MOV-CX,0F9 我的意思是,正如我们看到的,其中有“0F9”,虽然源操作数看起来像“十六进制”,但在指令末尾(或源操作数末尾)没有使用“H”符号。是。它确实是一种有效的intel x86语法,将0xF9移动到CX寄存器。按照惯例,我们假设任何立即值都是十六进制表示。F9前面有0的原因是为了确保汇编器将该值视为立即值(十六进制),而不是标签。它不是用来区分它的base-n表示的。你怎么能确定它的值是十六进制?以0开头的文字值通常表示octalNot在Nasm中无效0x0
我的意思是,正如我们看到的,其中有“0F9”,虽然源操作数看起来像“十六进制”,但在指令末尾(或源操作数末尾)没有使用“H”符号。是。它确实是一种有效的intel x86语法,将0xF9移动到CX寄存器。按照惯例,我们假设任何立即值都是十六进制表示。F9前面有0的原因是为了确保汇编器将该值视为立即值(十六进制),而不是标签。它不是用来区分它的base-n表示的。你怎么能确定它的值是十六进制?以0开头的文字值通常表示octalNot在Nasm中无效
0x0F9
、0F9h
或$0F9
都表示十六进制。@Frank Kotler因为它不是您编写的三个示例之一,Nasm会注意到它是无效指令?对。Nasm会说表达式语法错误
。不要害怕尝试这些东西!