首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

如何理解in eax,83

2012-05-11 
怎么理解in eax,83我查到这么一句解释:OUT 和 IN 在汇编中是端口读写操作指令。端口是主机与外设进行数据交

怎么理解in eax,83
我查到这么一句解释:
OUT 和 IN 在汇编中是端口读写操作指令。端口是主机与外设进行数据交换使用的,分为数据端口,状态端口和控制端口三种
例如:
IN AL, 21H 表示从21H端口读一个字节数据到AL;


然后我在一个新建的VC工程中写上
int a;

_asm{
in eax,83
mov a,eax

}

提示First-chance exception in c1.exe: 0xC0000096: Privileged Instruction.

主要我还是不清楚in是用来干嘛的

希望前辈能帮忙解答一下:)

[解决办法]
提示说的异常,其为特权指令,所以不能在普通程序里执行这样的指令;这类指令需在驱动里实现吧。
[解决办法]
通常操作系统把cpl=3的代码的iopl定在2以下,所以是不能执行的。
[解决办法]
VC?还是windows 的啊! 你要是win98 以下,可以,要是xp,没辙了!

热点排行