前缀字节码和code操作码绝对不重复
1.一个opcode可能有几个prefixes
2.如果有多个prefixes,那么他们的顺序可以打乱
3.如果prefixes不能对它之后的opcode起作用,那么它就会被忽略
LOCK MOV DWORD PTR ES:[EDX*4+ECX+0AA] ,11
FO:26: C7 84 91 AA000000 11000000
| | | | |
前缀前缀 mov MOD SIB
C7/0 mov r/m32,imm32 /0 不适用reg信息 [][] 有这种符号需要寻求SIB
84 分解成二进制 MOD 10 000 100 获得信息为[--][--] +disp32 偏移
91 分解成二进制 SIB 10 010 001 获得 EDX*4 +ECX + 0X000000AA
1.一个opcode可能有几个prefixes
2.如果有多个prefixes,那么他们的顺序可以打乱
3.如果prefixes不能对它之后的opcode起作用,那么它就会被忽略
LOCK MOV DWORD PTR ES:[EDX*4+ECX+0AA] ,11
FO:26: C7 84 91 AA000000 11000000
| | | | |
前缀前缀 mov MOD SIB
C7/0 mov r/m32,imm32 /0 不适用reg信息 [][] 有这种符号需要寻求SIB
84 分解成二进制 MOD 10 000 100 获得信息为[--][--] +disp32 偏移
91 分解成二进制 SIB 10 010 001 获得 EDX*4 +ECX + 0X000000AA