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

王爽的那本书这段不带明白,该怎么解决

2012-03-31 
王爽的那本书这段不带明白Assembly codeINT9:PUSHAXPUSHBXPUSHESINAL,60hPUSHFCALLDWord PTR DS:[0]CMPAL,

王爽的那本书这段不带明白

Assembly code
INT9:               PUSH      AX              PUSH      BX              PUSH      ES              IN        AL,60h              PUSHF              CALL      DWord PTR DS:[0]              CMP       AL,1              JNE       INT9ret              MOV       AX,0b800h              MOV       ES,AX              INC       BYTE PTR ES:[160*12+40*2+2]     INT9ret:               POP       ES              POP       BX              POP       AX              IRET


ds:[0]是系统原本的int 9程序.

为什么要pushf呢?调用原来的 int 9中断时不应该就自动pushf了么?

[解决办法]
调用后会用iret返回吧,返回时会有标志出栈的,所以得入下
[解决办法]
CALL DWord PTR DS:[0]
调用这个也相当于 一个中断的 它也有一个iret 
so there needs a pushf

热点排行