x86 Family
下面这句来自 Wikipedia 的话很好的描述了 x86 这个词:
x86 is a family of backward-compatible instruction set architectures based on the Intel 8086 CPU and its Intel 8088 variant.
16-bit、32-bit 以及 64-bit 的 CPU 在 x86 family 中都有存在,而且它们全部向后兼容。比如:
8086
1978 年 Intel 发布的自己的第一个 16-bit CPU。
80386
1985 年 Intel 发布的自己的第一个 32-bit CPU。它使用了向后兼容的 IA-32 架构。
Opteron
2003 年 AMD 发布的 64-bit CPU。它使用了向后兼容的 AMD64 架构,也就是后来的 x86-64。
“x86” 名字的来历
Intel 发布过 8086、80186、80286、80386 以及 80486。由于这些以 “86” 结尾的 CPU 都非常成功,而且它们都向后兼容,因此就出现了 x86 这个词。
x86 在当时消费者眼中的意义类似于现在的 Core ix 系列一样。
x86-64
AMD64 不是第一个 64-bit 架构,因为在它之前还有一个不属于 x86 family 的 IA-64 架构。IA-64 架构由 Intel 与 HP 开发出来。由于 IA-64 不向后兼容,因此当时没有被市场广泛接受。
紧接着 IA-64,AMD 开发了一个向后兼容的属于 x86 family 的 AMD64 架构。因此 AMD64 很快被市场接受。Intel 也接受了它并小幅扩充为 Intel 64 架构。后来软件市场为了不偏但任何一方,使用了同时兼容 AMD64 与 Intel 64 的部分,即 x86-64。另外,x64 是在市场推广中诞生的一个词,简化了 x86-64 称呼。
当然现在软件市场也使用了很多 Intel 64 或 AMD64 的专有特性,使得有些软件在 AMD 与 Intel 的 CPU 上有不同的表现。这也形成了两家公司的竞争,有利于市场发展。
x86 Family 的成员
x87, IA-32, x86-64, MMX, 3DNow!, SSE, SSE2, SSE3, SSSE3, SSE4, SSE4.2, SSE5, AES-NI, CLMUL, RdRand, SHA, MPX, SGX, XOP, F16C, ADX, BMI, FMA, AVX, AVX2, AVX512, VT-x, AMD-V, TSX, ASF