【发布时间】:2019-09-04 08:01:53
【问题描述】:
我们如何访问 x86 架构中的陷阱标志并在 32 位程序中更改其值?
我曾尝试在 Visual Studio 中使用内联汇编:
#include <iostream>
void trap()
{
__asm PUSHF ;
__asm MOV BP, SP;
__asm AND WORD PTR[BP + 0], 0FEFFH;
__asm POPF;
}
并得到以下错误:
error C2432: illegal reference to 16-bit data in 'first operand'
error C2415: improper operand type
【问题讨论】:
标签: c++ assembly x86 inline-assembly