x86架构是什么意思??

发布网友 发布时间:2022-02-24 07:38

我来回答

6个回答

热心网友 时间:2022-02-24 09:07

X86就是采用cisc(Complex
Instruction
Set
Computer,复杂指令架构计算机)架构的处理器.大多数CPU厂商(如AMD,Intel)生产的就是这种处理器.与采用RISC(Reced
...,精简指令架构计算机)架构的PowerPC(如苹果电脑)不同.
在CISC处理器中,程序的各条指令是按顺序串行执行的,每条指令中的各个操作也是按顺序串行执行的。顺序执行的优点是控制简单,但计算机各部分的利用率不高,执行速度慢。
诸如IA-32、x86-32、x86-都是属于x86架构的。如Intel的32位服务器Xeon(至强)处理器系列、AMD的全系列,还有VIA的全系列处理器产品都属于x86架构的。
英特尔推出X86架构已满20年了,同486相比,Pentium向前迈进了一大步,
而PⅡ的前进步伐则没有这么大了,X86
CPU的发展似乎已到了尽头。
  
  英特尔非常清楚,是X86指令集*了CPU性能的进一步提高,因此,他们正同惠普一道努力开发下一代指令集架构(Instruction
Set
Architecture
,ISA):
EPIC(Explicitly
Parallel
Instruction
Computing,显性并行指令计算)。对英特尔而言,
IA-(英特尔的位架构)是下一个10到15年的架构。新的ISA将使英特尔摆脱X86架构的*,从而设计出超越所有现有RISC
CPU和X86
CPU的新型处理器。那么EPIC的先进之处在什么地方呢?为什么英特尔会放弃使它成为芯片巨人的X86架构呢?
  
  一、IA-32的问题
  
  我们知道,工程师可以通过提高每个时钟的指令执行数来提高性能,英特尔新的指令集的首要目的在于,让指令更容易解码,更容易并行执行。这样就可以不受*地开发新型处理器。
  
  但是,对工程师而言,兼容8086的X86指令集一直是必须完成的任务。毕竟,兼容前代产品是使英特尔成长壮大起来的关键因素,而且还可以保护用户原先的投资和使用数以百万计应用软件。既然如此,为什么又要放弃整个X86指令集重新开始呢?X86的不足在什么地方?
  
  (1)可变的指令长度
  
  X86指令的长度是不定的,而且有几种不同的格式,结果造成X86
CPU的解码工作非常复杂,为了提高CPU的工作频率,不得不延长CPU中的流水线,而过长的流水线在分支预测出错的情况下,又会带来CPU工作停滞时间较长的弊端。
  
  (2)寄存器的贫乏
  
  X86指令集架构只有8个通用寄存器,而且实际只能使用6个。这种情况同现代的超标量CPU极不适应,虽然工程师们采用寄存器重命名的技术来弥补这个缺陷,但造成了CPU过于复杂,流水线过长的局面。
  
  (3)内存访问
  
  X86指令可访问内存地址,而现代RISC
CPU则使用LOAD/STORE模式,只有LOAD和STORE指令才能从内存中读取数据到寄存器,所有其他指令只对寄存器中的操作数计算。在目前CPU的速度是内存速度的5倍或5倍以上的情况下,后一种工作模式才是正途。
  
  (4)浮点堆栈
  
  X87
FPU是目前最慢的FPU,主要的原因之一就在于X87指令使用一个操作数堆栈。如果没有足够多的寄存器进行计算,你就不得不使用堆栈来存放数据,这会浪费大量的时间来使用FXCH指令(即把正确的数据放到堆栈的顶部)。
  
  (5)4GB*
  
  这似乎不是问题,但是,在6年前,主流PC只有4MB内存,而目前的绝大部分PC装备了MB以上的内存,是以前的16倍,所以,在下一个十年,PC内存突破1GB绝对不会令人惊讶,而且目前的大型服务器已经使用了1GB以上的内存,突破4GB内存的情况很快就会出现。
  
  (6)芯片变大
  
  所有用于提高X86
CPU性能的方法,如寄存器重命名、巨大的缓冲器、乱序执行、分支预测、X86指令转化等等,都使CPU的芯片面积变得更大,也*了工作频率的进一步提高,而额外集成的这些晶体管都只是为了解决X86指令的问题。
  
  二、下一代指令集:IA-
  
  Merced是第一款使用IA-的处理器,这款CPU具有位寻址能力和位宽的寄存器,所以我们称它为位CPU。由于具有位寻址能力,它能够使用1百万TB的地址空间,足以运算企业级任务;位宽的寄存器可以使Merced
达到非常高的精度。
  
  粗看起来,Merced很像其他的位RISC
CPU:指令的长度是固定的,由一个指令、两个输入和一个输出寄存器组成;指令只对寄存器操作;超标量,具有多个不同的流水线或执行单元,能够并行执行许多指令。那么,Merced的不同点在哪里呢?
  
  (1)显性并行性
  
  尽可能并行工作是提高CPU性能的最佳方法,如果你的CPU每个时钟周期可以执行8个指令,而竞争对手的CPU每个时钟周期只能执行4个指令,那么,他只能制造一个时钟频率是2倍于你的CPU,才能在速度上赶上你。
  
  我们知道,程序分支和指令依赖是造成难以并行执行许多指令的障碍,而Merced采用的方法是让编译器告诉CPU哪些指令可以一起发布并执行。Merced
接收来自于编译器的128位包,每个包含有3个40位指令和1个8位模板。每个指令又由3个7位寄存器地址(即可以使用2^7=128个寄存器)、一个6位预测寄存器和13位指令代码,其中,最有趣的莫过于模板。
  
  这个8位模板包含了不同指令间的并行信息,编译器将使用模板告诉CPU,哪些指令可以同时发布。模板也包含了包的结束位,用以告诉CPU这个包是否结束,CPU是否需准备*下两个或更多的包。现在你明白为什么EPIC
CPU的马力如此强劲了吧,高端CPU可以一起执行几个包。由于IA-架构的个通用寄存器和个浮点寄存器(编注:原文如此),使CPU可以同时发布许多指令。
  
  当然,强悍的EPIC
CPU也需要一个强悍的编译器,编译器的工作是检查指令依赖情况,把并行指令放在一起,并重新排序,使执行单元可以很顺畅地工作。
  
  (2)分支预测
  
  在现代CPU中,分支预测的正确率可以达到90%~95%,虽然看起来还不坏,
但当预测出错时,CPU就不得不清洗整条流水线。10%的预测出错率会让CPU损失30%的性能,在流水线越长的情况下,性能损失越严重。而Merced的预测机制,
可以摆脱大部分分支情况。首先来看RISC/x86
CPU怎样处理典型的"IF-THEN
-ELSE"分支:
  
  if
(i==0)
  
  instruction
1;
  
  else
  
  instruction
2;
  
  CPU执行过程如下:
  
  比较I是否为0;
  
  如果不相等,则跳到else;
  
  然后执行指令1;
  
  跳到NEXT处;
  
  else:执行指令2;
  
  NEXT
    
  在这里,CPU必须判断它去执行ELSE分支呢还是THEN分支。下面再看EPIC
CPU的解决方案:
  
  比较I是否为0;
  
  开始对指令1解码,设定预测寄存器"P1"的预测位;
  
  开始对指令2解码,设定预测寄存器"P2"的预测位;
  
  当I等于0时,寄存器"P1"为真(1),寄存器"P2"为假(0);
  
  执行所有预测位为真值的指令;
  
  Merced没有跳跃,它一开始就执行所有的分支指令,它具有个分支预测寄存器,可以被设为真或假,而每个指令中的6位被分配到单独一个预测寄存器中。就上例来说,如果指令1指派给预测寄存器1,预测位被设为:000001。当变量I
等于0时,预测寄存器1被设定为"真",只有那些指向预测寄存器为"真"的指令结果才会被执行。
  
  由于所有的分支都能并行执行,Merced所花的时间同只执行单个分支的时间是相同的。其次,你不会再冒预测出错的风险;第三,由于CPU不再跳跃执行,
它不会把程序代码分成小块。也就是说,稍前和稍后的程序代码可以打包。Merced
能够一起将它们发布,增大并行工作量。这些可以使EPIC
CPU避免通常CPU所出现的分支预测40%的出错情况,从而使性能提高10%~15%,特别是在整数代码部分。
  
  (3)投机装载
  
  你还记得我们上次所说的3DNow!和SSE的预取指令吗?它可以使CPU把一个确定的指令在需要前的数十个周期放到一级指令Cache中。同此相对应,投机装载是把所需数据提前数十个周期放到一级数据Cache中。这样就可避免Cache未命中情况的发生,如此一来,较慢的内存访问就不再是一个大问题,因为,CPU几乎不再访问内存,它总是可以在一级Cache中找到它需要的东西。
  
  三、小结
  
  IA-确实是为提高速度而设计的,使用IA-指令可以制造一个具有比今天的X86
CPU更多执行单元的CPU,它比X86
CPU能进行多得多的并行处理工作。那么,Merced会在高端市场扼杀其竞争对手吗?它的设计完美无缺吗?我们将拭目以待。

热心网友 时间:2022-02-24 10:25

x86架构于1978年推出的Intel 8086*处理器中首度出现,它是从Intel 8008处理器中发展而来的,而8008则是发展自Intel 4004的。8086在三年后为IBM PC所选用,之后x86便成为了个人计算机的标准平台,成为了历来最成功的CPU架构

热心网友 时间:2022-02-24 12:00

付费内容限时免费查看回答X86架构(The X86 architecture)是微处理器执行的计算机语言指令集,指一个intel通用计算机系列的标准编号缩写,也标识一套通用的计算机指令集合。X86指令集是美国Intel公司为其第一块16位CPU(i8086)专门开发的,美国IBM公司1981年推出的世界第一台PC机中的CPU--i8088(i8086简化版)使用的也是X86指令,同时电脑中为提高浮点数据处理能力而增加的X87芯片系列数学协处理器则另外使用X87指令,以后就将X86指令集和X87指令集统称为X86指令集。虽然随着CPU技术的不断发展,Intel陆续研制出更新型的i80386、i80486直到今天的Pentium 4(以下简为P4)系列,但为了保证电脑能继续运行以往开发的各类应用程序以保护和继承丰富的软件资源,所以Intel公司所生产的所有CPU仍然继续使用X86指令集,所以它的CPU仍属于X86系列。

另外除Intel公司之外,AMD和Cyrix等厂家也相继生产出能使用X86指令集的CPU,由于这些CPU能运行所有的为Intel CPU所开发的各种软件,所以电脑业内人士就将这些CPU列为Intel的CPU兼容产品。由于Intel X86系列及其兼容CPU都使用X86指令集,所以就形成了今天庞大的X86系列及兼容CPU阵容。当然在台式(便携式)电脑中并不都是使用X86系列CPU,部分服务器和苹果(Macintosh)机中还使用美国DIGITAL(数字)公司的Alpha 611和PowerPC 604e系列CPU。

Intel从8086开始,286、386、486、586、P1、P2、P3、P4都用的同一种CPU架构,统称X86。 

“windows x和x86有啥区别”这个问题和“windows和32有啥区别”是一样的,因为x其实就是位,x86其实就是32位,在口语中我们说32位会多于x86,至少这样更符合中文的语言习惯。所以本文就来分析一下windows x和x86区别是什么。

windows x和x86指的是什么:

windowsx和x32,都是用来形容操作系统的,所以我们在下载操作系统的时候,会存在winx和x86位系统的选择。

而不同位数的操作系统,对CPU的运算方式产生的影响或者要求亦不同,所以从更深层次的角度来说,windows和32位是指CPU运算方式的差异。

windows x和x86最主要的区别:

很多人之所以关注windows x和x86的差异,是因为32位系统最多只能发挥4G内存的效用,如果电脑安装了大于4G的内存,32位的操作系统是不能更好的利用大于4G的那部分内存的效用的,所以会造成资源浪费。

 而位的操作系统,按照微软对系统的设定,家庭版本的win7可以最多支持16G的内存,而专业版和旗舰版的win7最多支持的内存容量可达192G内存。

所以如果你电脑拥有超过4G的内存,则建议安装位的操作系统,这是这两者最大的区别。

基本所有的电脑都可以安装32位的系统,现在也有越来越多的电脑刚刚买回来的时候,就预装了位的系统,因为这样能够更好的利用大内存的效用;

但是一些比较旧的电脑,可能不能支持位的系统,要判断你的电脑是否支持位系统,可以利用“SecurAble”这款软件来查看。

以上的内容分析的就是关于windows x和x86区别是什么了,相信通过windowsx和x32位系统的一番分析后,你对于想要选择win732位系统还是位系统,心中有了更加明确的选择了,或者可以选择win732和位安装双系统

您好,很高兴为您解答,您的问题已经解答,请问您还有什么需要我帮助您的吗? 如果您觉得满意,你可以点击右上方“结束服务”,再给我一个赞吗?谢谢

热心网友 时间:2022-02-24 13:51

"x86是一个intel通用计算机系列的标准编号缩写,也标识一套通用的计算机指令集合。x86指的是特定微处理器执行的一些计算机语言指令集,定义了芯片的基本使用规则,好比今天的x、IA等。
"

热心网友 时间:2022-02-24 15:59

286 386 486 586.....

热心网友 时间:2022-02-24 18:24

英特尔推出X86架构已满20年了,同486相比,Pentium向前迈进了一大步, 而PⅡ的前进步伐则没有这么大了,X86 CPU的发展似乎已到了尽头。
英特尔非常清楚,是X86指令集*了CPU性能的进一步提高,因此,他们正同惠普一道努力开发下一代指令集架构(Instruction Set Architecture ,ISA): EPIC(Explicitly Parallel Instruction Computing,显性并行指令计算)。对英特尔而言, IA-(英特尔的位架构)是下一个10到15年的架构。新的ISA将使英特尔摆脱X86架构的*,从而设计出超越所有现有RISC CPU和X86 CPU的新型处理器。那么EPIC的先进之处在什么地方呢?为什么英特尔会放弃使它成为芯片巨人的X86架构呢?
一、IA-32的问题
我们知道,工程师可以通过提高每个时钟的指令执行数来提高性能,英特尔新的指令集的首要目的在于,让指令更容易解码,更容易并行执行。这样就可以不受*地开发新型处理器。
但是,对工程师而言,兼容8086的X86指令集一直是必须完成的任务。毕竟,兼容前代产品是使英特尔成长壮大起来的关键因素,而且还可以保护用户原先的投资和使用数以百万计应用软件。既然如此,为什么又要放弃整个X86指令集重新开始呢?X86的不足在什么地方?
(1)可变的指令长度
X86指令的长度是不定的,而且有几种不同的格式,结果造成X86 CPU的解码工作非常复杂,为了提高CPU的工作频率,不得不延长CPU中的流水线,而过长的流水线在分支预测出错的情况下,又会带来CPU工作停滞时间较长的弊端。
(2)寄存器的贫乏
X86指令集架构只有8个通用寄存器,而且实际只能使用6个。这种情况同现代的超标量CPU极不适应,虽然工程师们采用寄存器重命名的技术来弥补这个缺陷,但造成了CPU过于复杂,流水线过长的局面。
(3)内存访问
X86指令可访问内存地址,而现代RISC CPU则使用LOAD/STORE模式,只有LOAD和STORE指令才能从内存中读取数据到寄存器,所有其他指令只对寄存器中的操作数计算。在目前CPU的速度是内存速度的5倍或5倍以上的情况下,后一种工作模式才是正途。
(4)浮点堆栈
X87 FPU是目前最慢的FPU,主要的原因之一就在于X87指令使用一个操作数堆栈。如果没有足够多的寄存器进行计算,你就不得不使用堆栈来存放数据,这会浪费大量的时间来使用FXCH指令(即把正确的数据放到堆栈的顶部)。
(5)4GB*
这似乎不是问题,但是,在6年前,主流PC只有4MB内存,而目前的绝大部分PC装备了MB以上的内存,是以前的16倍,所以,在下一个十年,PC内存突破1GB绝对不会令人惊讶,而且目前的大型服务器已经使用了1GB以上的内存,突破4GB内存的情况很快就会出现。
(6)芯片变大
所有用于提高X86 CPU性能的方法,如寄存器重命名、巨大的缓冲器、乱序执行、分支预测、X86指令转化等等,都使CPU的芯片面积变得更大,也*了工作频率的进一步提高,而额外集成的这些晶体管都只是为了解决X86指令的问题。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com