-
-
[已解决][求助]标志位未定义的问题
-
发表于:
2009-7-29 01:29
4964
-
Intel开发者手册第一卷<<附录A Eflags交叉索引>>中有一个表,罗列的是各指令对标志寄存器Eflags的影响。
问题:如下图,最后一行,符号"-"表示未定义,其中空格表示无影响.IDIV对OF,SF等都是未定义的.这里的未定义实在让我费解.
实验如下:用OD加载一个程序,输入:(其中mov和cdq指令是不改变任何标志位的)
设此时SF=0
mov eax, -2
cdq
mov ecx, 2
idiv ecx
运行SF未被改变,
再输入:
设此时SF=0
mov eax, 2
cdq
mov ecx, -2
idiv ecx
SF仍未被改变,
设此时ZF=0
mov eax, 0
cdq
mov ecx, 2
idiv ecx
ZF也未被改变.
如果idiv不影响CF和SF标志位应当被定义为不影响,即对应符号空格.难道这里的未定义指的是不可预知或者不可预料,无法文档化?
[课程]Linux pwn 探索篇!