assembly - 是否所有实现 AMD64 指令集的 CPU 都具有相同的指令和寄存器?
问题描述
实现 IA-32 指令集(即 32 位 x86 指令集)的 CPU 没有相同的指令和寄存器,例如 Intel Pentium III 具有 Intel Pentium 中不存在的 SSE 寄存器和指令二、
但是实现 AMD64 指令集(即 64 位 x86 指令集)的 CPU 呢,这些 CPU 是否具有相同的指令和寄存器(我的意思是:是否有一些 AMD64 CPU 的指令和寄存器比另一个 AMD64 CPU,就像 IA-32 CPU 的指令和寄存器比其他 IA-32 CPU 多)?
解决方案
并非一切都是平等的:
Intel 的 x86 CPU 支持sysenter
64 位模式下的指令,而 AMD 的 CPU(至少是较旧的 CPU)不支持。
另一方面,AMD 的 CPU 支持syscall
32 位模式,但英特尔的 64 位 CPU(至少较旧的 CPU)不支持。
我确信这不是现有和/或未来 AMD64 CPU 的唯一区别。
推荐阅读
- c# - 您输入的表达式对属性 Visible (Access.Application) 的引用无效
- python - 在 DataFrame 中插入新列与上一行的差异?
- angular - 带有setTimeOut的Angular 6单元测试ngOnInit不起作用
- python-3.x - 如何定义一个函数?
- c++ - 如果我不使用 new 关键字,我会出现内存泄漏吗?
- haskell - 两个列表元素的所有非重复组合
- android - Android 如何在 Spinner 中更改滚动条颜色
- c# - 正在更改 SessionId 导致此错误“视图状态验证失败。原因:视图状态提供的完整性检查失败。”
- android - Activity.setTheme() 之后的 Activity.recreate() 导致活动泄漏
- unique - 根据第二列计算列中的不同值