什么是指令集,它是软件还是硬件
假设有石墨烯CPU,那么它的指令集会是怎样的 展开
比如,8088 CPU,可以做
ADD AX,BX
等等,这一类的指令。所有它能做的指令全部在一起的集合,就是他的指令集。
这种CPU的指令集,可能是38条指令,那种CPU的指令集,可以的20条,不同的CPU是不同的。
指令集是在机器码、汇编语言的层面讨论问题,与应用软件基本上没什么关系。相同的语言,比如C语言编写的程序,可以运行在不同的指令集的机器上。
假设有石墨烯CPU,那么它的指令集会是怎样的?
CPU用什么做的,和他的指令集是怎么样的,没有必然的联系,比如,我们可以设计一个硅CPU,使用20条命令的指令集,也可以再设计一个硅CPU,使用30条的指令集。
指令集只与CPU的设计结构有关,与做CPU的材料无关。
记得给分。
2023-07-11 广告
CPU依靠指令来计算和控制系统,每款CPU在设计时就规定了一系列与其硬件电路相配合的指令系统。指令的强弱也是CPU的重要指标,指令集是提高微处理器效率的最有效工具之一。
从现阶段的主流体系结构讲,指令集可分为复杂指令集和精简指令集两部分,而从具体运用看,如Intel的MMX(Multi Media Extended)、SSE、 SSE2(Streaming-Single instruction multiple data-Extensions 2)和AMD的3DNow!等都是CPU的扩展指令集,分别增强了CPU的多媒体、图形图象和Internet等的处理能力。我们通常会把CPU的扩展指令集称为"CPU的指令集"。
1.最简单的话概括,那个是CPU硬件接受指令,完成计算,输出结果时与软件进行交互时使用的语言,每条新的指令一般对应着一条或几条汇编语言,编译后对应着可以被CPU识别的机器码。指令集的支持是硬件与软件共同作用的结果,要想CPU支持某指令集,就要修改硬件电路,要想让软件支持新的指令集,就要修改程序,重新编译。做同样的操作,进行同样目的的运算,可以使用不同的方法(不同的汇编语句,机器码),SSE2优化的代码就是程序中使用了SSE2指令集中的语句,可以被P4/K8的解码器(现在的X86 CPU的内核都是RISC运算核心,解码器做转换工作)识别,进行更有效的计算,而K7 CPU不支持此代码,就用其它方法执行这个操作,比如使用X87 FPU指令
2.指令集就是CPU能支持的指令的集合.理论上,设计一种CPU就需要设计这种CPU所支持的指令,如果指令不同那么软件就无法通用.问题在于,通常软件的生存期比CPU长,所以在现阶段设计CPU的时候,往往按照已经存在的CPU所支持的指令设计新CPU的指令系统,甚至直接把已有的某些CPU的指令列表标准化,形成一个标准指令列表,这样以后只要支持这些指令,不同的CPU之间可以互换;而发布新CPU的时候,也需要明确的建立一个指令码表,这种规范化的指令列表就是指令集.