CPU 架构区别 | AArch32 / AArch64 / i386 / x86 / amd64 / x86_64 / rv64i / powerpc / ppc64 / ppc64le

注:本文为 “CPU 架构” 相关合辑。
英文引文,机翻未校。
中文引文,略排未校。
如有内容异常,请看原文。


ARM vs AArch64 vs AMD64 vs x86_64 vs x86 区别

当查看数据表或软件下载页面时,是否被 ARMAArch64x86_64i386 等术语混淆?
这些被称为 CPU 架构,下表总结了 CPU 架构术语字符串所代表的意义:

CPU 架构描述
x86_64 / x86 / amd6464 位 AMD / 英特尔 CPU 的别称
i38632 位 AMD / 英特尔 CPU
AArch64 / arm64 / ARMv8 / ARMv964 位 ARM CPU 的别称
AArch32 / arm / ARMv1ARMv732 位 ARM CPU 的别称
rv64gc / rv64g64 位 RISC-V CPU 的别称
ppc64le64 位 PowerPC CPU,小端字节序存储

从左到右阅读,优先使用左侧术语描述 CPU 体系结构,而非右侧的别称。

概述:CPU 架构

通常来说,前文列出的术语是描述 CPU 架构的。但严格讲,它们在计算机工程领域被定义为 CPU 的 ISA(Instruction Set Architecture,指令集架构)
CPU 的指令集架构决定了 CPU 如何解析二进制代码中的 10,是软件与硬件交互的核心“语言”。
这些 CPU 的 ISA 主要分为以下几大类:

  • x86(AMD / 英特尔主导)
  • ARM(ARM 公司主导,授权模式)
  • RISC-V(开源规范,多厂商参与)
  • PowerPC(IBM 主导,多用于服务器)
    除此之外,还有 MIPS、SPARC、DEC Alpha 等 ISA,但目前仅有上述四类仍在广泛应用(含衍生版本)。
    上述 ISA 通常根据 内存总线宽度 分为至少两个子集。内存总线宽度指 CPU 与 RAM 一次能传输的位数,最常见的是 32 位和 64 位。

💡 32 位 CPU ISA 大多已成为历史产物,仅为兼容旧系统或用于资源受限的微控制器(如嵌入式设备)。当前新发布的消费级硬件几乎均为 64 位架构。

x86(AMD / 英特尔)

x86 指令集架构起源于英特尔——英特尔最早为 8086 微处理器(16 位内存总线)设计了该架构,后续逐步演进。AMD 随后加入 x86 领域,早期紧跟英特尔技术路线,直至 AMD 自主研发出 64 位扩展架构,实现了对英特尔的技术超越。
x86 架构的核心子集如下:

  • i386:32 位 x86 架构的代表术语,主要用于 2007 年之前发布的 CPU(如英特尔奔腾系列、AMD 速龙早期型号),是 x86 架构的 32 位“基础版本”。
  • x86_64 / x86 / amd64:三者在不同项目中可交替使用,均指 x86 架构的 64 位版本。其中 x86_64 是最通用、最受欢迎的术语:
  • FreeBSD 等项目因 AMD 首创 64 位 x86 扩展,将其称为 amd64
  • Linux、macOS 等系统则统一使用 x86_64 作为标准术语。

💡 由于 AMD 率先推出 64 位 x86 扩展(英特尔初期主推 IA-64 架构,后转向兼容 AMD 方案),部分项目(如 FreeBSD)保留 amd64 这一名称,但行业更广泛接受的术语仍是 x86_64
x86 架构存在一个特殊的“模糊性”:从 32 位(i386)向 64 位(x86_64)过渡时,厂商设计的 CPU 支持同时运行 32 位和 64 位指令。因此,有时“x86”会被泛指“支持 64 位架构且兼容 32 位软件的 x86 处理器”——例如某软件标注“支持 x86 系统”,实际指可在 64 位 x86 计算机上运行,且若系统开启兼容模式,也可运行 32 位版本的该软件。
这种兼容性广泛应用于操作系统:例如 Windows 的“32 位兼容模式”,就是利用 64 位 x86 CPU 的指令兼容特性,实现对旧 32 位软件的支持。
综上,AMD 和英特尔设计的 CPU 核心架构仅分两类:32 位(i386)和 64 位(x86_64)。

x86_64 的细分版本(指令扩展)

x86_64 ISA 并非单一标准,而是包含多个细分版本,核心差异在于新增的 SIMD(Single Instruction Multiple Data,单指令多数据)指令(用于并行计算,提升多媒体、科学计算等场景的性能)。各版本如下:

  • x86_64-v1:基础版 x86_64 ISA,支持 SSE、SSE2 等早期 SIMD 指令,是最普及的版本(多数旧款 CPU 及入门级 CPU 支持)。
  • x86_64-v2:在 v1 基础上新增 SSE3、SSSE3、SSE4.1、SSE4.2 等指令,提升浮点运算和数据处理效率(2010 年后的 CPU 多支持此版本)。
  • x86_64-v3:新增 AVX(Advanced Vector Extensions,高级矢量扩展)、AVX2 等指令,支持 256 位宽 CPU 寄存器,大幅提升并行计算能力(适用于视频渲染、AI 推理等场景,2015 年后的中高端 CPU 支持)。
  • x86_64-v4:在 v3 基础上新增 AVX-512 等指令,支持 512 位宽 CPU 寄存器,是当前 x86_64 架构的最高性能版本(仅高端服务器 CPU 或旗舰消费级 CPU 支持,如英特尔至强系列、AMD 线程撕裂者系列)。

ARM

ARM 既是一家公司,也是一类指令集架构的名称:

  • ARM 公司不直接生产 CPU,而是通过 授权模式 向其他厂商提供 ISA 规范和 CPU 内核设计;
  • 厂商可基于 ARM 规范自主设计 CPU 内核(如苹果 M 系列芯片、高通骁龙系列),或直接使用 ARM 提供的现成内核(如树莓派使用的博通 BCM2711 芯片)。
    ARM 架构的应用场景极为广泛:除了树莓派等 SBC(Single Board Computer,单板计算机),手机、平板、智能手表等移动设备的 CPU 几乎全为 ARM 架构;2020 年后,苹果也将 Mac 系列从 x86_64 转向自研 ARM 芯片(M1 / M2 系列)。
    与 x86 类似,ARM 架构也按内存总线宽度分为两个核心子集,且有明确的官方术语定义:

1. 官方架构术语:AArch32 与 AArch64

ARM 官方将 32 位和 64 位架构分别命名为 AArch32AArch64,其中 “AArch” 是 “ARM Architecture” 的缩写。二者并非独立的硬件,而是 ARM CPU 可切换的 运行模式(部分 64 位 ARM CPU 可切换至 AArch32 模式,兼容 32 位软件)。

2. ISA 规范版本:ARMvX

ARM 指令集的具体规范以 ARMvX 命名(X 为版本号),目前已迭代至 ARMv9,核心划分如下:

  • ARMv1ARMv7:仅支持 32 位架构,对应 AArch32 模式(如树莓派 3 之前的 CPU,多基于 ARMv7);
  • ARMv8ARMv9:支持 64 位架构(核心模式为 AArch64),同时兼容 32 位 AArch32 模式(如苹果 M1 基于 ARMv8,骁龙 8 Gen3 基于 ARMv9)。

💡 每个 ARMvX 规范还包含细分分支,例如 ARMv8 分为 ARMv8-A(应用级核心,用于手机、电脑)、ARMv8-R(实时核心,用于工业控制)、ARMv8-M(微控制器核心,用于传感器);且存在版本更新(如 ARMv8.1-A、ARMv8.2-A),每次更新会新增指令或优化性能。

术语混淆:AArch64 与 arm64

尽管 ARM 官方将 64 位架构命名为 AArch64,但实际场景中仍常出现 arm64 这一术语,核心原因有两点:

  1. 历史惯性arm64 在 ARM 官方确定 AArch64 名称前已广泛使用(甚至 ARM 部分早期文档也用 arm64 代指 64 位架构);
  2. 社区选择:Linux 内核创始人 Linus Torvalds 公开反对 AArch64 这一名称(认为过于冗余),因此 Linux 内核代码库统一使用 arm64;但系统级工具(如 uname -m)仍输出 aarch64(小写,遵循 POSIX 命名规范)。
    综上,32 位 ARM CPU 优先用 AArch32 描述,也可兼容 armarmv7;64 位 ARM CPU 优先用 AArch64 描述,也可兼容 arm64ARMv8/ARMv9

RISC-V

RISC-V(发音为“RISC-Five”)是一套 开源指令集架构规范,与 x86、ARM 的“闭源/授权模式”不同:任何人都可免费获取规范、设计芯片,无需支付授权费——但这并不意味着 RISC-V CPU 本身是“开源硬件”(物理芯片仍需厂商生产,设计方案可能闭源)。
这一模式类似以太网:以太网规范是开源的,但网线、路由器等硬件仍需购买;RISC-V 规范开源,但基于规范设计的 CPU 核心(如英伟达 Grace、阿里平头哥玄铁系列)仍为商业产品。不过,也有开源社区提供免费的 RISC-V 核心设计(如 OpenHW Group 的 CORE-V 系列),支持开发者自行定制。

💡 若需寻找适用于 RISC-V 消费级 CPU 的软件,优先选择标注 rv64gc 的版本——这是多数 Linux 发行版(如 Ubuntu RISC-V 版)公认的 64 位 RISC-V 标准标识。

RISC-V 的扩展体系

RISC-V 架构的核心特点是“模块化扩展”:基础指令集极简,通过不同扩展模块满足不同场景需求。64 位 RISC-V 的基础标识为 rv64i,各扩展模块及含义如下表:

扩展标识描述
rv64i64 位基本整数指令集(必须实现,是 RISC-V 64 位架构的基础)
m整数乘法与除法指令扩展
a原子操作指令扩展(用于多核心同步,如共享内存访问)
f单精度浮点(32 位)指令扩展
d双精度浮点(64 位)指令扩展
g通用扩展集别名,包含 i+m+a+f+d(满足通用操作系统需求,如 Linux)
c压缩指令扩展(将部分 32 位指令压缩为 16 位,减少代码体积)
rv64i 中:
  • rv 代表 RISC-V;
  • 64 代表 64 位架构;
  • i 代表“基本整数指令集”——尽管名为“扩展”,但 i 是所有 RISC-V CPU 必须实现的模块,不可省略。
    此外,扩展标识需按固定顺序排列(imafdgc),例如 rv64gc 实际等价于 rv64imafdcg 包含 imafd,再加上 c 扩展)。

💡 部分高级扩展(如 Zicsr 控制状态寄存器扩展、Zifencei 指令屏障扩展)是 g 扩展的隐含依赖,因此严格来说 rv64gc 等价于 rv64imafdZicsrZifenceic(当前规范版本),但日常使用中无需展开完整标识。

32 位与 64 位 RISC-V

RISC-V 同样支持 32 位架构(标识为 rv32i),但由于 RISC-V 是较新的 ISA(2010 年首次发布),当前主流应用集中在 64 位架构(如消费级单板计算机、边缘计算设备);32 位 RISC-V 主要用于微控制器(如智能传感器、物联网设备),面向特定嵌入式场景。

PowerPC

PowerPC 是由苹果、IBM、摩托罗拉(现为飞思卡尔)联合开发的指令集架构,曾广泛应用于苹果早期产品(如 PowerMac 系列)——在 2006 年苹果转向 x86 架构前,PowerPC 是苹果消费级设备的唯一 CPU 架构。
PowerPC 架构的核心特点是 字节序灵活性

  • 早期 32 位 PowerPC 仅支持 大端字节序(内存中高位字节存低地址);
  • 64 位 PowerPC 新增 小端字节序 支持(与 x86 一致),以兼容 x86 生态的软件(减少字节序转换导致的错误)。
    基于字节序和位数,PowerPC 架构分为三类:
  • powerpc:32 位 PowerPC 架构,仅支持大端字节序(已极少使用);
  • ppc64:64 位 PowerPC 架构,仅支持大端字节序(多用于 IBM 大型服务器,兼容旧系统);
  • ppc64le:64 位 PowerPC 架构,支持小端字节序(当前主流版本,如 IBM Power 系列服务器、部分高性能计算设备)。

💡 字节序(Endianness)是 CPU 存储多字节数据的顺序,直接影响软件兼容性。若需深入了解,可参考 Mozilla 字节序文档
目前,ppc64le 是 PowerPC 架构的主流形态,主要用于高性能计算(HPC)和企业级服务器,消费级市场几乎无 PowerPC 设备。

结论

市面上的 CPU 架构虽多,但核心可归为 x86、ARM、RISC-V、PowerPC 四类,且每类均以 64 位架构为主流、32 位架构为补充。
各类架构的定位与应用场景清晰区分:

  1. x86(x86_64):最普及的消费级架构,垄断桌面电脑、笔记本、主流服务器市场(AMD 锐龙、英特尔酷睿/至强系列);
  2. ARM(AArch64):移动设备的“绝对主力”(手机、平板),同时向桌面市场渗透(苹果 M 系列、微软 Surface Pro X),也是单板计算机(树莓派)的主流选择;
  3. RISC-V(rv64gc):新兴开源架构,在物联网、边缘计算领域快速扩张,逐步向消费级市场突破(如英伟达、高通的 RISC-V 芯片计划);
  4. PowerPC(ppc64le): niche 架构,仅用于 IBM 服务器和高性能计算,消费级市场几乎无存在感。
    理解上述架构的术语与差异,可帮助你快速选择适配的软件版本(如系统镜像、驱动程序),避免因架构不兼容导致的运行错误。

篇外:一些讨论

注:机翻,未校对。

Why is 64 bits version called AMD64 and 32 bits version called i386?

为什么 64 位版本被称为 AMD64,32 位版本被称为 i386?

So on Ubuntu’s homepage you can download either 64 bit or 32 bit versions. But the 64 bit version is called amd64 and the 32 bit version is called i386.
所以在 Ubuntu 的主页上,你可以下载 64 位或 32 位的版本。但是 64 位版本被称为 amd64,32 位版本被称为 i386。

So I have to have an AMD processor to run amd64 and Intel to run i386?
所以我必须有一个 AMD 处理器来运行 amd64,有一个英特尔处理器来运行 i386 吗?

If someone codes software (let’s say Apache), does he have to code one for 32 bits and one for 64 bits? Does some software only exist for 32 bit and not 64 and vice versa?
如果有人编写软件(比如说 Apache),他是否必须为 32 位和 64 位分别编写代码?是否有些软件只存在于 32 位而不存在于 64 位,反之亦然?

The 64-bit version is typically called ‘amd64’ because AMD developed the 64-bit instruction extensions. (AMD extended the x86 architecture to 64 bits while Intel was working on Itanium, but Intel later adopted those same instructions.)
64 位版本通常被称为 “amd64”,因为 AMD 开发了 64 位指令扩展。(当英特尔在研发 Itanium 时,AMD 将 x86 架构扩展到 64 位,但英特尔后来采用了相同的指令。)

The 32-bit version is called i386, because Intel originated the 32-bit instruction set used on these chips.
32 位版本被称为 i386,因为英特尔开创了这些芯片上使用的 32 位指令集。

You can run the 64-bit version on virtually any 64-bit capable x86 compatible chip, and the 32-bit version on any modern x86-compatible chip.
你可以在几乎任何支持 64 位的 x86 兼容芯片上运行 64 位版本,在任何现代 x86 兼容芯片上运行 32 位版本。

Depending on how you write your software, it may or may not need to be rewritten for 64 bits. (Generally, compiled software will need changes, but not all interpreted software – e.g., Python or Perl – will require changes.)
根据你编写软件的方式,它可能需要也可能不需要为 64 位重写。(一般来说,编译软件需要改变,但不是所有解释型软件 —— 例如 Python 或 Perl—— 都需要改变。)


64bit - Why are 64-bit distros often called ‘amd64’?

为什么 64 位发行版经常被称为 “amd64”?

I am downloading an ISO image of Lubuntu; they have two versions: 32 and 64. But why do they call the 64 version amd64 since they say that it works for Intel also?
我正在下载 Lubuntu 的 ISO 镜像;它们有两个版本:32 和 64。但是为什么他们把 64 位版本称为 amd64,既然他们说它也适用于英特尔?

Because AMD was the first one to release 64-bit x86 (x86-64) CPUs.
the AMD64 architecture was positioned by AMD from the beginning as an evolutionary way to add 64-bit computing capabilities to the existing x86 architecture, as opposed to Intel’s approach of creating an entirely new 64-bit architecture with IA-64.
因为 AMD 是第一个发布 64 位 x86(x86-64)CPU 的公司。
AMD 从一开始就将 AMD64 架构定位为一种在现有 x86 架构中添加 64 位计算能力的进化方式,与英特尔使用 IA-64 创建全新 64 位架构的方法相反。

The first AMD64-based processor, the Opteron, was released in April 2003.
In fact, in the kernel the 64-bit support is called ‘x86_64’ to refer to the fact that both AMD and Intel (and others) implement those instructions.
第一款基于 AMD64 的处理器 Opteron 于 2003 年 4 月发布。
事实上,在内核中,64 位支持被称为 “x86_64”,指的是 AMD 和英特尔(以及其他公司)都实现了这些指令。

Now it’s correct. This however raises the question why the packages are not just called x64 or x86-64 instead, in contrast of using a vendor name.
现在它是正确的。然而,这就提出了一个问题,为什么这些包不只是被称为 x64 或 x86-64,而是使用供应商名称。

@Marco: IIRC x86-64 was name introduced after the Intel released 64-bit processors and x64 was name introduced by Microsoft. Both things happened at the point when some distros already had support for AMD64. I remember the discussion if everything should be renamed to x86-64 (name x64 was not known at that point).
@Marco:如果我没记错的话,x86-64 是在英特尔发布 64 位处理器之后引入的名称,x64 是由微软引入的名称。这两件事都发生在一些发行版已经支持 AMD64 的时候。我记得当时讨论过是否应该把所有东西都重命名为 x86-64(当时还不知道 x64 这个名称)。

Opterons were available before Intel had x86-64 CPUs available and Linux started calling it amd64 to differentiate it from IA-64. Later Intel licensed AMD’s 64-bit extensions to include in their own CPUs x86-64 CPUs. Rather than rename everything the name amd64 remained.
在英特尔推出 x86-64 CPU 之前,Opterons 就已经可用,Linux 开始把它称为 amd64 以将其与 IA-64 区分开来。后来英特尔授权 AMD 的 64 位扩展,使其包含在自己的 CPU 中的 x86-64 CPU。而不是重命名所有东西,amd64 这个名字保留了下来。


Why is x64 often named as amd64? Was x64 invented by AMD?

为什么 x64 经常被命名为 amd64?x64 是由 AMD 发明的吗?

Why is AMD64 the first 64-bit x86 processor?
为什么 AMD64 是第一个 64 位 x86 处理器?

In a fit of misguided hubris, Intel had intended to push their users from x86 32-bit to their new! shiny! next generation! 64-bit EPIC IA_64 architecture on the Itanium processor that was fundamentally incompatible with existing x86 code.
在一阵被误导的狂妄自大之中,英特尔曾打算将他们的用户从 x86 32 位推向他们的新!闪亮!下一代!Itanium 处理器上的 64 位 EPIC IA_64 架构,该架构与现有 x86 代码根本不兼容。

Meanwhile, Moore’s Law soldiered along as memory ballooned beyond the 32-bit 4GB limit and AMD took it upon themselves to build 64-bit extensions to x86 in their Opteron server line.
与此同时,随着内存膨胀超过 32 位 4GB 的限制,摩尔定律继续发挥作用,AMD 主动在其 Opteron 服务器系列中为 x86 构建 64 位扩展。

Moving to a new greenfield system without complete backward compatibility on day 1 is always a bad idea. This mistake even has a term of art dedicated to describe it: Second System Syndrome. OS/2 is another classic example.
在第一天就迁移到一个没有完全向后兼容性的新绿地系统总是一个坏主意。这个错误甚至有一个专门用来描述它的术语:第二系统综合症。OS/2 是另一个经典的例子。

So AMD did what Intel refused to do. As Intel lost market share, they eventually woke up to the reality and adapted AMD’s way, which involved licensing some of AMD’s intellectual property.
所以 AMD 做了英特尔拒绝做的事情。随着英特尔失去市场份额,他们最终意识到现实并采用了 AMD 的方式,这涉及到许可一些 AMD 的知识产权。

Heikki Kultala 海基・库尔塔拉

Why is 32-bit called x86 and not x32?
为什么 32 位被称为 x86 而不是 x32?

32-bit is NOT called x86.
32 位不被称为 x86。

There are tens of 32-bit architectures such as MIPS, ARM, PowerPC, SPARC which are not called x86.
有数十种 32 位架构,如 MIPS、ARM、PowerPC、SPARC,它们不被称为 x86。

x86 is a term meaning any instruction set which derived from the instruction set of Intel 8086 processor.
x86 是一个术语,指的是从英特尔 8086 处理器的指令集派生出来的任何指令集。

It’s successors were named 80186, 80286, 80386, 80486, and were all compatible with the original 8086, capable of executing code made for it.
它的继任者被命名为 80186、80286、80386、80486,并且都与原始的 8086 兼容,能够执行为其编写的代码。

Later Intel also released 8086-compatible processors named Pentium, Celeron, Core and Xeon but the name x86 had already stabilized to mean all processors based on the instruction set family. Of these, 8086, 80186 and 80286 were 16-bit processors.
后来英特尔还发布了 8086 兼容的处理器,名为 Pentium、Celeron、Core 和 Xeon,但 x86 这个名字已经稳定下来,表示所有基于指令集家族的处理器。其中,8086、80186 和 80286 是 16 位处理器。

80386 was a 32-bit processor, with a new 32-bit operating mode.However, it still retained the original 16-bit mode and also added a third mode, “virtual 86” mode which allowed running 16-bit programs under 32-bit operating system.
80386 是一个 32 位处理器,具有新的 32 位操作模式。然而,它仍然保留了原始的 16 位模式,并添加了第三种模式,“虚拟 86” 模式,允许在 32 位操作系统下运行 16 位程序。

Later, 64-bit extension to x86, x86–64 was developed and implemented in AMD K8 and also later intels processors. Also these 64-bit processors based on the x86–64 architecture are called x86 processors.
后来,在 AMD K8 以及后来的英特尔处理器中开发并实现了对 x86 的 64 位扩展,x86-64。而且这些基于 x86-64 架构的 64 位处理器也被称为 x86 处理器。

Why are you probably asking this, and the answer.You have probably been seeing some “x86” and ”x64″ names of some Windows packages.
你可能为什么会问这个问题,以及答案。你可能已经看到了一些 Windows 软件包的 “x86” 和 “x64” 名称。

Modern Windows are based on Windows NT.Windows NT has never had any support for 16-bit x86 processors, it could initially run on 32-bit x86 (386, 486, Pentium etc), and MIPS, PowerPC and Alpha processors.
现代 Windows 系统基于 Windows NT。Windows NT 从来没有对 16 位 x86 处理器的支持,它最初可以在 32 位 x86(386, 486, Pentium 等)、MIPS、PowerPC 和 Alpha 处理器上运行。

The MIPS, PowerPC and 386 were ALL 32-bit architectures, while Alpha was a 64-bit architecture.
MIPS、PowerPC 和 386 都是 32 位架构,而 Alpha 是 64 位架构。

To differentiate between windows compiled for these different instruction sets, some short and precise name had to be used for the architectures.
These names are also used on many scripts, build systems etc so they cannot be changed after they are selected without breaking huge amount of things.
为了区分针对这些不同指令集编译的 Windows,必须为架构使用一些简短而精确的名称。
这些名称也用于许多脚本、构建系统等,所以在选择它们之后不能更改它们,否则会破坏很多东西。

“x86” perfectly identified the 32-bit x86 version of windows NT.
“x86” 完美地标识了 Windows NT 的 32 位 x86 版本。

Anything that contained number 32 would not have made any sense as there were three different 32-bit architectures supported by Windows NT.
Later also support for itanium (IA64) was added and support for MIPS, PowerPC and MIPS was dropped.
任何包含数字 32 的东西都没有意义,因为 Windows NT 支持三种不同的 32 位架构。
后来还添加了对 Itanium(IA64)的支持,并且放弃了对 MIPS、PowerPC 和 MIPS 的支持。

So, the correct question is: Why is the 64-bit x86 called x64?
所以,正确的问题是:为什么 64 位 x86 被称为 x64?

Over 10 years later, when the 64-bit extension to x86 instruction set was released, and Microsoft started porting later NT-derived windows to it, some official technical name had to be selected for the version compiled for this architecture. The specification of the 64-bit extension to x86 came originally from AMD, so some called it “amd64” whereas “intel64” had meant Itanium. But Microsoft did not want to include name of one company to the name they chose for the architecture, and also the name “x86–64” which is later used had not stabilized yet as the common name for the architecture, and also the dash character on “X86–64” name might problematic for some places where the architecture name appears and had to be parsed by some code. So they chose the name “x64”, as 64-bit version of x86.
10 多年后,当 x86 指令集的 64 位扩展发布时,Microsoft 开始将后来的 NT 派生窗口移植到该扩展中,必须为针对此体系结构编译的版本选择一些官方技术名称。x86 的 64 位扩展规范最初来自 AMD,因此有人称其为 “amd64”,而 “intel64” 的意思是安腾。但是 Microsoft 不想在他们为架构选择的名称中包含一家公司的名称,而且后来使用的名称 “x86-64” 还没有稳定下来作为架构的通用名称,而且 “X86-64” 名称上的破折号对于架构名称出现并且必须由某些代码解析的某些地方可能会出现问题。因此,他们选择了名称 “x64”,作为 x86 的 64 位版本。

Even later, support for the Itanium architecture was dropped and support for 32- and 64-bit ARM architectures were added to Windows. The 64-bit ARMv8 is typically called either A64 or Aarch64, Im not sure which one is the official technical name for it in Windows.
甚至在后来,对 Itanium 体系结构的支持被放弃,而对 32 位和 64 位 ARM 体系结构的支持被添加到 Windows 中。64 位 ARMv8 通常称为 A64 或 Aarch64,我不确定哪一个是它在 Windows 中的官方技术名称。

So now, Windows has support for four architectures: 386 (“x86”), x86–64 (“x64”), 32-bit ARMv7 , and 64-bit ARMv8.
所以现在,Windows 支持四种架构:386 (“x86”)、x86–64 (“x64”)、32 位 ARMv7 和 64 位 ARMv8。

So, “x64” currently only means one of these two 64-bit architectures currently supported by Windows.
因此,“x64” 目前仅指 Windows 当前支持的这两种 64 位体系结构中的一种。


via:


如果上面看的还没云开雾散,下面还有几篇

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值