x86指令集路线图

Rub*_*oso 7 x86 assembly opcode

经过长时间的高级编程后,我只是触摸了x86指令集的表面.大约20年来,我第一次阅读x86汇编编程,从我的谷歌搜索中我得到了大量的指令集引用; 从那些将新一代处理器(286,386,486 ......)与其他添加更新x86指令的处理器混合在一起的处理器.更不用说AMD的变化.

由于我打算构建一个引导装载程序,我首先想到的是完全符合'标准x86',但我无法弄清楚它的位置,甚至它是否存在于任何地方.

甚至英特尔的文档似乎都遵循相同的路径,就像另一个人说的那样,"我们需要x86指令集标准化,操作码的演变是混乱的".

持有标准化旗帜并不是我的想法.我只想看看路,了解哪里是安全的行走地点.如果有人可以提供帮助,我会非常感激!

Meh*_*ari 5

从历史上看,x86一直非常向后兼容.x86-64抛弃了一些非常旧的指令(比如BCD指令),但这种更改不太可能再次发生(至少在64位地址空间转换发生之前不会发生).

如果要确保代码几乎适用于所有x86处理器,请坚持使用386指令集(如果您的代码是32位)或早期的x86-64指令集(如果它是64位).