gpt4 book ai didi

c++ - 使用寄存器调用中断

转载 作者:搜寻专家 更新时间:2023-10-31 00:57:30 24 4
gpt4 key购买 nike

我试图通过返回实模式、调用中断并返回保护模式来从 C++ 中的保护模式调用一些中断。我得到一个错误:

C2400 : Improper operand type

我正在尝试解决此问题,但我不知道从哪里开始。这是我的代码的摘录:

void intupt(char intr) //Call interrupt function. INTR is number of interrupt.
{
pm2rm(); //Protected Mode To Real Mode
__asm
{
mov al, [intr] //Put intr to AL register
int al // call interrupt using AL
}
rm2pm(); //Real Mode to Protected Mode
}

为什么会出现该错误?关于为什么会这样有什么建议吗?

最佳答案

int 从不将寄存器作为操作数,仅将字节文字作为操作数。如果您希望能够在寄存器中指定要调用的中断,那么您将需要使用调度表。

关于c++ - 使用寄存器调用中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37330323/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com