x86 vs x64-为什么将32位称为x86?[关闭]


45

大概x86之所以被称为是因为这些机器使用了8038680486处理器。那是对的吗?

这是引用32位和64位计算机的正确方法吗?


7
您是否尝试过Wiki:en.wikipedia.org/wiki/X86
胶靴

我想重新标记此标签,但我想不出一个好标签。这是一个超级用户问题吗?
马特·艾伦

如您所见,86x = 2 ^ 3&3x2,当然,与32位相关!:p
Murta 2015年

在您所询问的上下文中,x64与x86并不对立,而是位于它旁边。它是x86-64,因为它是x86-32(实际上称为IA-32)
cnom

Answers:


61

从技术上讲,x86只是指一系列处理器及其全部使用的指令集。实际上,它并没有说任何有关数据大小的具体信息。

x86最初是针对16位处理器(8086和8088处理器)的16位指令集,然后扩展为针对32位处理器(80386和80486)的32位指令集,现在已扩展为用于64位处理器的64位指令集。它以前被写为80x86,以反映芯片型号中间的变化值,但是沿着这条线的某个地方,前面的80被丢弃了,只剩下x86。

尽管所有采用英特尔x86指令集的较新处理器仍被称为与x86,i386或i686兼容(这意味着它们都使用原始8086的扩展名),但归咎于奔腾及其是改变处理器命名和销售方式的后代。指令系统)。

x64确实是个奇怪的人。x86集的64位扩展名被称为x86-64。后来它被命名为AMD64(因为AMD最初提出了64位扩展名)。英特尔许可了64位指令集,并将其版本命名为EM64T。指令集和使用它们的处理器都仍被视为x86。

资料来源:http : //zh.wikipedia.org/wiki/IA-32-IA-32,英特尔的32位体系结构。 http://en.wikipedia.org/wiki/X86-64-在此处了解有关x86-64的更多信息。


7
+1是实际提到混乱的根源-x64-x86-64的简写。
Allon Guralnek,2010年

为了使事情变得真正令人困惑,英特尔在某个时候称其x64-64实现IA-32e。即使IA-64是与Intel(现在通常称为Itanium)完全不同的64位指令集,x86-64也被称为IA-64t。
吉尔斯

2
当法官裁定您不能为数字版权时,Intel改用Pentium名称而不是计划的586。
Jim C

在进行C ++编程时,如果cl在Visual Studio命令提示符下运行命令,则会显示以下输出- Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01 for 80x86。查看命令输出中的结尾文本:-)
RBT

12

是的,这是正确的

x86一词是指基于Intel 8086的一组指令集体系结构[2]。8086于1978年推出,是Intel早期基于8位微处理器的完整16位扩展,并且还引入了分段以克服16位。早期芯片的位寻址障碍。x86术语源于8086的早期继承者也以“ 86”结尾的事实。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.