CPU 架构

从CPU发明到现在,有非常多种架构,从我们熟悉的X86,ARM,到不太熟悉的MIPS,IA64,它们之间的差距都非常大。不同架构之间的指令集和编码格式完全不同,导致机器语言完全不同。

从最基本的逻辑角度来分类的话,它们可以被分为两大类,即所谓的“复杂指令集”与“精简指令集”系统,也就是经常看到的“CISC”与“RISC”。 Intel和ARM处理器的第一个区别是,前者使用复杂指令集(CISC),而后者使用精简指令集(RISC)

x86 和 x64


x86、x64 都指的是 CPU 的指令集架构。X86架构是基础架构,X64架构是基于X86的,也可称为X86-64架构。

x86或80x86是英特尔Intel首先开发制造的一种微处理器体系结构的泛称。该系列较早期的处理器名称是以数字来表示,并以“86”作为结尾,包括Intel 8086、80186、80286、80386以及80486,因此其架构被称为“x86”。现在,Intel把x86-32称为IA-32,全名为“Intel Architecture, 32-bit”。

处理器的发展遇到了瓶颈,内存寻址空间由于受到32位CPU的限制而只能最大到约4G。 intel 搞出来的指令集叫 IA-64,对应于当时的 IA-32 (也就是 x86 指令集)。AMD 搞出了另外一个兼容 IA-32 兼容 X86 的 64 位指令集,名字叫做 amd64 。后来成了 x86 体系在 64 位平台的事实标准。之后 amd64 改名 x86-64。

总结

  • 复杂指令集是 x86、x64(也叫 x86-64, amd64) 两种架构,专利在 Intel 和 AMD 两家公司手里, 该架构 CPU 主要是 Intel 和 AMD 两家公司,这种 CPU 常用在 PC 机上,包括 Windows,macOS 和 Linux。

  • 简单指令集是 arm 一种架构,专利在 ARM 公司手里,该架构 CPU 主要有高通、三星、苹果、华为海思、联发科等公司。这种 CPU 常用在手机上,包括安卓和苹果。