最简单的话概括,那个是CPU硬件接受指令,完成计算,输出结果时与软件进行交互时使用的语言,每条新的指令一般对应着一条或几条汇编语言,编译后对应着可以被CPU识别的机器码。指令集的支持是硬件与软件共同作用的结果,要想CPU支持某指令集,就要修改硬件电路,要想让软件支持新的指令集,就要修改程序,重新编译。做同样的操作,进行同样目的的运算,可以使用不同的方法(不同的汇编语句,机器码),SSE2优化的代码就是程序中使用了SSE2指令集中的语句,可以被P4/K8的解码器(现在的X86 CPU的内核都是RISC运算核心,解码器做转换工作)识别,进行更有效的计算,而K7 CPU不支持此代码,就用其它方法执行这个操作,比如使用X87 FPU指令
指令集就是CPU能支持的指令的集合.理论上,设计一种CPU就需要设计这种CPU所支持的指令,如果指令不同那么软件就无法通用.问题在于,通常软件的生存期比CPU长,所以在现阶段设计CPU的时候,往往按照已经存在的CPU所支持的指令设计新CPU的指令系统,甚至直接把已有的某些CPU的指令列表标准化,形成一个标准指令列表,这样以后只要支持这些指令,不同的CPU之间可以互换;而发布新CPU的时候,也需要明确的建立一个指令码表,这种规范化的指令列表就是指令集.
每一种处理器都有自己可以识别的一整套指令,称为指令集。
一个
JVM
指令由两部分组成,第一部分是一个字节(one-byte)的操作码,第二部分是
0
个或多个提供参数或数据的操作数,许多指令都只有第一部分。
JVM
指令集中的大部分指令编码与它们执行的操作数据类型有关,如: iload 指令读取局部变量的 int 值并压入操作数栈中。fload 指令对 float 类型做了同样的动作。两个指令实现了同样的功能,但是操作码却不同。
扩展资料:
CPU指令集的作用:
我们通常会把CPU的扩展指令集称为“CPU的指令集”。CPU依靠指令来计算和控制系统,每款CPU在设计时就规定了一系列与其硬件电路相配合的指令系统。指令的强弱也是CPU的重要指标,指令集是提高微处理器效率的最有效工具之一。
从现阶段的主流体系结构讲,指令集可分为复杂指令集和精简指令集两部分,而从具体运用看,如Intel的MMX(Multi
Media
Extended)、SSE、
SSE2(Streaming-Single
instruction
multiple
data-Extensions
2)和AMD的3DNow!等都是CPU的扩展指令集,分别增强了CPU的多媒体、图形图象和Internet等的处理能力。
参考资料来源:搜狗百科-指令集
要知道什么是指令集还要从当今的X86架构的CPU说起。X86指令集是Intel为其第一块16位CPU(i8086)专门开发的,IBM1981年推出的世界第一台PC机中的CPU—i8088(i8086简化版)使用的也是X86指令,同时电脑中为提高浮点数据处理能力而增加的X87芯片系列数学协处理器则另外使用X87指令,以后就将X86指令集和X87指令集统称为X86指令集。虽然随着CPU技术的不断发展,Intel陆续研制出更新型的i80386、i80486直到今天,但为了保证电脑能继续运行以往开发的各类应用程序以保护和继承丰富的软件资源,所以Intel公司所生产的所有CPU仍然继续使用X86指令集,所以它的CPU仍属于X86系列。由于Intel X86系列及其兼容CPU都使用X86指令集,所以就形成了今天庞大的X86系列及兼容CPU阵容。