基于这个信息,我查找了APPENDIX B INSTRUCTION FORMATS AND ENCODINGS
发现SGDT, SIDT, LGDT, LIDT, SMSW,LMSW, INVLPG 的Opcode 都为 0000 1111:0000 0001 (为two-opcode),其后面得mod-reg-rm 中的reg再做opcode的补充,来区分不同指令。
由此opcode,我再返回去找了一下 OPCODE MAP 里two byte opcode 里的第一行,第二列。丫的,那个地方竟然是空的,而Intel又很恶心的再页面最后说,空的表明没有用到!!! (原文:All blanks in the opcode map are reserved and should not be used. Do not depend on the operation of these undefined opcodes)