_emit Pseudoinstruction

Microsoft 专用

_emit 伪指令在当前文本段落的当前位置定义一个字节。 _emit 伪命令类似于 MASM 的 DB 指令。

以下片段将字节 0x4A、0x43 和 0x4B 放入代码中:

#define randasm __asm _emit 0x4A __asm _emit 0x43 __asm _emit 0x4B
 .
 .
 .
__asm {
     randasm
     }

警告

如果 _emit 生成了修改寄存器的指令,并且您在编译应用程序时进行了优化,则编译器无法确定受到影响的寄存器。例如,如果 _emit 生成修改 rax 寄存器的指令,编译器将不知道 rax 已更改。在内联汇编程序代码执行后,编译器随后可能会对该寄存器中的值做出错误假设。因此,在应用程序运行时,它可能展示出不可预知的行为。

结束 Microsoft 专用

请参见

参考

在 __asm 块中使用汇编语言