为您找到与cpu指令集是什么语言编写的相关的共200个结果:
想要查看习cpu的指令集,该怎么样去查看呢?下面由读文网小编给你做出详细的cpu指令集查看方法介绍!希望对你有帮助!
话说你都说了是CPU指令集了就和BIOS没什么关系了,BIOS分BIOSROM和CMOS。
CMOS储存BIOS断电消失,BIOSROM储存2进制代码并由CPU解析。CPU指令集是CPU所能处理的命令集,是CPU再被设计出来的时候就与其逻辑电路配套的指令系统,既算不上硬件也算不上软件,和BIOS没有直接联系。
想看该处理器支持的所有指令集你只能去官网找资料了,或者你是汇编大神可以编程序测试。
如果想要看你自己CPU的指令集的话很抱歉,我只能说CPU-Z了,现有软件我没发现可以检测所有支持的指令集的。
缺指令的可以使用现有软件和有其他指令集的ROM进行添加,不过前提是处理器型号必须完全一致,否则把处理器弄死了不要哭哦,但是这类的一般都是BIOS中锁定了某些指令集,实际上处理器是支持这些指令集的。
浏览量:2
下载量:0
时间:
你知道电脑cpu的指令集有多少种吗?小编来像你介绍!下面由读文网小编给你做出详细的cpu指令集介绍!希望对你有帮助!
精简指令集 精简指令集,计算机CPU的一种设计模式,也被称为RISC(Reduced Instruction Set Computing 的缩写)。常见的精简指令集微处理器包括AVR、PIC、ARM、DEC Alpha、PA-RISC、SPARC、MIPS、Power架构等。
早期,这种CPU指令集的特点是指令数目少,每条指令都采用标准字长、执行时间短、CPU的实现细节对于机器级程序是可见的等等。
实际上在后来的发展中,RISC与CISC在争吵的过程中相互学习,现在的RISC指令集也达到数百条,运行周期也不再固定……虽然如此,RISC设计的根本原则--针对流水线化的处理器优化--没有改变。
RISC之前的设计原理
在早期的计算机业中,编译器技术尚未出现。程序是以机器语言或汇编语言完成的。为了便于编写程序,计算机架构师造出越来越复杂的指令,可以高阶程序语言直接陈述高阶功能。当时的看法是硬件比编译器更易设计,所以复杂的东西就加进硬件了。
加速复杂化的其它因素是缺乏大内存。内存小的环境中,具有极高讯息密度的程序较有利。当内存中的每一字节如此珍贵,例如储存某个完整系统只需几千字节,它使产业移向高度编码的指令、长度不等的指令、执行多个操作的指令,和执行数据传输与计算的指令。当时指令封包问题远比易解的指令重要。
内存不仅小,而且很慢,打从当时使用磁性技术。这是维持极高讯息密度的其它原因。借着具有极高讯息密度封包,当必须存取慢速资源时可以降低频率。
CPU只有少数缓存器的两个原因∶
CPU内部缓存器远贵于外部内存。以当时的集成电路技术水准,大缓存器集对芯片或电路板区域只是多余的浪费。
具有大数量的缓存器将需要大数量的指令位(使用珍贵的RAM)以做为缓存器指定器。
基于上述原因,CPU设计师试着令指令尽可能做更多的工作。这导致一个指令将做全部的工作∶读入两个数字,相加,并且直接在内存储存计算结果。其它版本将从内存读取两个数字,但计算结果储存在缓存器。另一个版本将从内存和缓存器各读一个数字,并再次存入内存。以此类推。这种处理器设计原理最终成为复杂指令集(CISC)。
当时的目标是给所有的指令提供所有的寻址模式,此称为「正交性」。这在 CPU 上导致了一些复杂性,但就理论上每个可能的命令都可以单独的调试(调用,be tuned),这样使得程序员能够比用简单的命令来得更快速。
这类的设计最终可以由光谱的两端来表达, 6502 在光谱的一端,而 VAX 在光谱的另一端。单价25美元的 1MHz 6502 芯片只有单一的通用缓存器, 但它的极精简的单周期内存界面(single-cycle memory interface)让一个位的操作效能和更高频率设计几乎相同,例如 4MHz Zilog Z80 在使用相同慢速的记忆芯片下(大约近似 300ns)。The VAX was a minicomputer whose initial implementation required 3 racks of equipment for a single cpu, and was notable for the amazing variety of memory access styles it supported, and the fact that every one of them was available for every instruction. The VAX was a minicomputer whose initial implementation required 3 racks of equipment for a single cpu, and was notable for the amazing variety of memory access styles it supported, and the fact that every one of them was available for every instruction.
RISC设计中常见的特征∶
统一指令编码(例如,所有指令中的op-code永远位于同样的位位置、等长指令),可快速解译∶
泛用的缓存器,所有缓存器可用于所有内容,以及编译器设计的单纯化(不过缓存器中区分了整数和浮点数);
单纯的寻址模式(复杂寻址模式以简单计算指令序列取代);
硬件中支持少数数据型别(例如,一些CISC计算机中存有处理字节字符串的指令。这在RISC计算机中不太可能出现)。
RISC设计上同时也有哈佛内存模块特色,凡指令流和数据流在概念上分开;这意味着更改代码存在的内存地址对处理器执行过的指令没有影响(因为CPU有着独立的指令和数据缓存),至少在特殊的同步指令发出前。在另一面,这允许指令缓存和数据缓存同时被访问,通常能改进运行效率。
许多早期的RISC设计同样共享着不好的副作用——转移延时槽,转移延时槽是指一个跳转或转移指令之后的指令空间。无论转移是否发生,空间中的指令将被执行(或者说是转移效果被延迟)。这些指令让CPU的算术和逻辑单元(ALU)繁忙比通常执行转移所需更多的时间。现在转移延时槽被认为是实现特定RISC设计的副作用,现代的RISC设计通常避免了这个问题(如PowerPC,最近的SPARC版本,MIPS)。
复杂指令集(CISC)
例如:Intel的奔腾系列CPU属于复杂指令集CPU,IBM 的PowerPC 970(用于苹果机MAC G5)CPU属于精简指令集CPU。
看了“cpu指令集有多少种 ”文章的还看了:
浏览量:2
下载量:0
时间:
你知道一直伤害我们的计算机病毒是用什么编写的吗?小编来告诉你!下面由读文网小编给你做出详细的计算机病毒编写语言介绍!希望对你有帮助!
可以说任何一种语言都可以写病毒,我们常见的网页病毒是多是vbs实现的,木马多是delphi,系统病毒可以用c,c++
最牛的会用汇编甚至二进制码~手机的一般用java,就连com很批处理都可以写出很阴损的病毒,大家熟识的autorun甚至是记事本写的
浏览量:3
下载量:0
时间:
有些网友可能第一次接触cpu指令集,不太清楚意思,那么下面就由读文网小编来给你们说说cpu指令集是怎么意思吧,希望可以帮到你们哦!
以下是对一些指令集进行的基本介绍:
CPU的扩展指令集
对于CPU来说,在基本功能方面,它们的差别并不太大,基本的指令集也都差不多,但是许多厂家为了提升某一方面性能,又开发了扩展指令集,扩展指令集定义了新的数据和指令,能够大大提高某方面数据处理能力,但必需要有软件支持。
MMX 指令集
MMX(Multi Media eXtension,多媒体扩展指令集)指令集是Intel公司于1996年推出的一项多媒体指令增强技术。MMX指令集中包括有57条多媒体指令,通过这些指令可以一次处理多个数据,在处理结果超过实际处理能力的时候也能进行正常处理,这样在软件的配合下,就可以得到更高的性能。
MMX的益处在于,当时存在的操作系统不必为此而做出任何修改便可以轻松地执行MMX程序。但是,问题也比较明显,那就是MMX指令集与x87浮点运算指令不能够同时执行,必须做密集式的交错切换才可以正常执行,这种情况就势必造成整个系统运行质量的下降。
SSE指令集
SSE(Streaming SIMD Extensions,单指令多数据流扩展)指令集是Intel在Pentium III处理器中率先推出的。其实,早在PIII正式推出之前,Intel公司就曾经通过各种渠道公布过所谓的KNI(Katmai New Instruction)指令集,这个指令集也就是SSE指令集的前身,并一度被很多传媒称之为MMX指令集的下一个版本,即MMX2指令集。究其背景,原来"KNI"指令集是Intel公司最早为其下一代芯片命名的指令集名称,而所谓的"MMX2"则完全是硬件评论家们和媒体凭感觉和印象对"KNI"的 评价,Intel公司从未正式发布过关于MMX2的消息。
而最终推出的SSE指令集也就是所谓胜出的"互联网SSE"指令集。SSE指令集包括了70条指令,其中包含提高3D图形运算效率的50条SIMD(单指令多数据技术)浮点运算指令、12条MMX 整数运算增强指令、8条优化内存中连续数据块传输指令。理论上这些指令对目前流行的图像处理、浮点运算、3D运算、视频处理、音频处理等诸多多媒体应用起到全面强化的作用。S SE指令与3DNow!指令彼此互不兼容,但SSE包含了3DNow!技术的绝大部分功能,只是实现的方法不同。SSE兼容MMX指令,它可以通过SIMD和单时钟周期并行处理多个浮点数据来有效地提高浮点运算速度。
SSE2指令集
SSE2(Streaming SIMD Extensions 2,Intel官方称为SIMD 流技术扩展 2或数据流单指令多数据扩展指令集 2)指令集是Intel公司在SSE指令集的基础上发展起来的。相比于SSE,SSE2使用了144个新增指令,扩展了MMX技术和SSE技术,这些指令提高了广大应用程序的运行性能。随MMX技术引进的SIMD整数指令从64位扩展到了128 位,使SIMD整数类型操作的有效执行率成倍提高。
双倍精度浮点SIMD指令允许以 SIMD格式同时执行两个浮点操作,提供双倍精度操作支持有助于加速内容创建、财务、工程和科学应用。除SSE2指令之外,最初的SSE指令也得到增强,通过支持多种数据类型(例如,双字和四字)的算术运算,支持灵活并且动态范围更广的计算功能。SSE2指令可让软件开发员极其灵活的实施算法,并在运行诸如MPEG-2、MP3、3D图形等之类的软件时增强性能。Intel是从Willamette核心的Pentium 4开始支持SSE2指令集的,而AMD则是从K8架构的SledgeHammer核心的Opteron开始才支持SSE2指令集的。
SSE3指令集
SSE3(Streaming SIMD Extensions 3,Intel官方称为SIMD 流技术扩展 3或数据流单指令多数据扩展指令集 3)指令集是Intel公司在SSE2指令集的基础上发展起来的。相比于SSE2,SSE3在SSE2的基础上又增加了13个额外的SIMD指令。SSE3 中13个新指令的主要目的是改进线程同步和特定应用程序领域,例如媒体和游戏。这些新增指令强化了处理器在浮点转换至整数、复杂算法、视频编码、SIMD浮点寄存器操作以及线程同步等五个方面的表现,最终达到提升多媒体和游戏性能的目的。
Intel是从Prescott核心的Pentium 4开始支持SSE3指令集的,而AMD则是从2005年下半年Troy核心的Opteron开始才支持SSE3的。但是需要注意的是,AMD所支持的SSE3与Intel的SSE3并不完全相同,主要是删除了针对Intel超线程技术优化的部分指令。
SSE4指令集
Intel公司真正严格意义上的第五代多媒体指令集?D?DStreaming SIMD Extension 4(SSE4)被视为是继2001年的SSE2之后最为重要的多媒体指令集改进。除扩展Intel 64位指令外,还新增对于影像编辑、视讯编码、三维渲染以及游戏应用等方面的指令,使得处理器的效能受益性更为广泛.
第五代SSE4多媒体指令集将分为SSE4.1以及SSE4.2两个版本,其中SSE4.1版本将首度于45纳米Penryn家族处理器中出现,共增加了47条新的指令。全新的SSE4多媒体指令集将增加两组不同的32-bit向量整数乘法运算单元,并引入八位无符号最大值/最小值运算支持,以及16-bit/32-bit有符号和无符号运算支持,从而有效改善编译器执行效率并提升向量整数以及单精度代码的运算能力。
与此同时,SSE4多媒体指令集进一步改善插入、提取、寻找、离散、跨步负载以及存储等动作模式,使得向量运算趋于专门化。第五代SSE4多媒体指令集新增六条浮点点积运算指令,支持单精度、双精度浮点运算以及浮点生成操作,这对于3D游戏以及三维内容生成将产生积极影响。
3D Now !指令集
由AMD公司提出的3DNow!指令集应该说出现在SSE指令集之前,并被AMD广泛应用于其K6-2 、K6-3以及Athlon(K7)处理器上。3DNow!指令集技术其实就是21条机器码的扩展指令集。
与Intel公司的MMX技术侧重于整数运算有所不同,3DNow!指令集主要针对三维建模、坐标变换 和效果渲染等三维应用场合,在软件的配合下,可以大幅度提高3D处理性能。后来在Athlon上开发了Enhanced 3DNow!。
这些AMD标准的SIMD指令和Intel的SSE具有相同效能。因为受到Intel在商业上以及Pentium III成功的影响,软件在支持SSE上比起3DNow!更为普遍。Enhanced 3DNow!AMD公司继续增加至52个指令,包含了一些SSE码,因而在针对SSE做最佳化的软件中能获得更好的效能。
目前最新的Intel CPU可以支持SSE、SSE2、SSE3指令集。早期的AMD CPU仅支持3DNow!指令集,随着Intel的逐步授权,从Venice核心的Athlon 64开始,AMD的CPU不仅进一步发展了3DNow!指令集,并且可以支持Inel的SSE、SSE2、SSE3指令集。不过目前业界接受比较广泛的还是Intel的SSE系列指令集,AMD的3DNow!指令集应用比较少。
浏览量:2
下载量:0
时间:
电脑病毒不会无缘无故就产生的,一般都是人为的,那么是用什么语言编写的呢?下面由读文网小编给你做出详细的电脑病毒是用什么语言编写说明介绍!希望对你有帮助!
一般来说vb,vc++,delphi,等等如果想再高级一些,部分可以用汇编(强!),有的全部用汇编(更强!),那是DOS时代的,现在全部用汇编几乎不可能了(除非你是牛人或病毒什么功能也没有)
浏览量:2
下载量:0
时间:
指令集是存储在CPU内部,对CPU运算进行指导和优化的硬程序。下面是读文网小编带来的关于cpu指令集是什么的内容,欢迎阅读!
SSE指令集Streaming SIMD Extensions由于MMX指令并没有带来3D游戏性能的显著提升,1999年Intel公司在Pentium IIICPU产品中推出了数据流单指令序列扩展指令(SSE)。SSE兼容MMX指令,它可以通过SIMD(单指令多数据技术)和单时钟周期并行处理多个浮点来有效地提高浮点运算速度。在MMX指令集中,借用了浮点处理器的8个寄存器,这样导致了浮点运算速度降低。
而在SSE指令集推出时,Intel公司在Pentium III CPU中增加了8个128位的SSE指令专用寄存器。而且SSE指令寄存器可以全速运行,保证了与浮点运算的并行性。SSE2指令集在Pentium 4 CPU中,Intel公司开发了新指令集SSE2。这一次新开发的SSE2指令一共144条,包括浮点SIMD指令、整形SIMD指令、SIMD浮点和整形数据之间转换、数据在MMX寄存器中转换等几大部分。
其中重要的改进包括引入新的数据格式,如:128位SIMD整数运算和64位双精度浮点运算等。为了更好地利用高速缓存。另外,在Pentium 4中还新增加了几条缓存指令,允许程序员控制已经缓存过的数据。SSE3指令集相对于SSE2,SSE3又新增加了13条新指令,此前它们被统称为pni(prescott new instructions)。13条指令中,一条用于视频解码,两条用于线程同步,其余用于复杂的数学运算、浮点到整数转换和SIMD浮点运算。
SSE4指令集SSE4又增加了50条新的增加性能的指令,这些指令有助于编译、媒体、字符/文本处理和程序指向加速。SSE4指令集将作为Intel公司未来“显著视频增强”平台的一部分。该平台的其他视频增强功能还有Clear Video技术(CVT)和统一显示接口(UDI)支持等,其中前者是对ATi AVIVO技术的回应,支持高级解码、后处理和增强型3D功能。
浏览量:2
下载量:0
时间:
CPU作为电脑的核心组成部份,它的好坏直接影响到电脑的性能。下面是读文网小编带来的关于cpu指令集有什么用的内容,欢迎阅读!
CISC指令集,也称为复杂指令集,英文名是CISC,(Complex Instruction Set Computer的缩写)。在CISC微处理器中,程序的各条指令是按顺序串行执行的,每条指令中的各个操作也是按顺序串行执行的。顺序执行的优点是控制简单,但计算机各部分的利用率不高,执行速度慢。其实它是英特尔生产的x86系列(也就是IA-32架构)CPU及其兼容CPU,如AMD、VIA的。即使是现在新起的X86-64(也被成AMD64)都是属于CISC的范畴。
要知道什么是指令集还要从当今的X86架构的CPU说起。X86指令集是Intel为其第一块16位CPU(i8086)专门开发的,IBM1981年推出的世界第一台PC机中的CPU—i8088(i8086简化版)使用的也是X86指令,同时电脑中为提高浮点数据处理能力而增加了X87芯片,以后就将X86指令集和X87指令集统称为X86指令集。
虽然随着CPU技术的不断发展,Intel陆续研制出更新型的i80386、i80486直到过去的PII至强、PIII至强、Pentium 3,最后到今天的Pentium 4系列、至强(不包括至强Nocona),但为了保证电脑能继续运行以往开发的各类应用程序以保护和继承丰富的软件资源,所以Intel公司所生产的所有CPU仍然继续使用X86指令集,所以它的CPU仍属于X86系列。由于Intel X86系列及其兼容CPU(如AMD Athlon MP、)都使用X86指令集,所以就形成了今天庞大的X86系列及兼容CPU阵容。x86CPU目前主要有intel的服务器CPU和AMD的服务器CPU两类。
RISC指令集RISC是英文“Reduced Instruction Set Computing ” 的缩写,中文意思是“精简指令集”。它是在CISC指令系统基础上发展起来的,有人对CISC机进行测试表明,各种指令的使用频度相当悬殊,最常使用的是一些比较简单的指令,它们仅占指令总数的20%,但在程序中出现的频度却占80%。
复杂的指令系统必然增加微处理器的复杂性,使处理器的研制时间长,成本高。并且复杂指令需要复杂的操作,必然会降低计算机的速度。基于上述原因,20世纪80年代RISC型CPU诞生了,相对于CISC型CPU ,RISC型CPU不仅精简了指令系统,还采用了一种叫做“超标量和超流水线结构”,大大增加了并行处理能力。RISC指令集是高性能CPU的发展方向。它与传统的CISC(复杂指令集)相对。相比而言,RISC的指令格式统一,种类比较少,寻址方式也比复杂指令集少。当然处理速度就提高很多了。目前在中高档服务器中普遍采用这一指令系统的CPU,特别是高档服务器全都采用RISC指令系统的CPU。RISC指令系统更加适合高档服务器的操作系统UNIX,现在Linux也属于类似UNIX的操作系统。RISC型CPU与Intel和AMD的CPU在软件和硬件上都不兼容。
目前,在中高档服务器中采用RISC指令的CPU主要有以下几类:PowerPC处理器、SPARC处理器、PA-RISC处理器、MIPS处理器、Alpha处理器。(3)IA-64。
EPIC(Explicitly Parallel Instruction Computers,精确并行指令计算机)是否是RISC和CISC体系的继承者的争论已经有很多,单以EPIC体系来说,它更像Intel的处理器迈向RISC体系的重要步骤。从理论上说,EPIC体系设计的CPU,在相同的主机配置下,处理Windows的应用软件比基于Unix下的应用软件要好得多。 Intel采用EPIC技术的服务器CPU是安腾Itanium(开发代号即Merced)。它是64位处理器,也是IA-64系列中的第一款。微软也已开发了代号为Win64的操作系统,在软件上加以支持。在Intel采用了X86指令集之后,它又转而寻求更先进的64-bit微处理器,Intel这样做的原因是,它们想摆脱容量巨大的x86架构,从而引入精力充沛而又功能强大的指令集,于是采用EPIC指令集的IA-64架构便诞生了。IA-64 在很多方面来说,都比x86有了长足的进步。突破了传统IA32架构的许多限制,在数据的处理能力,系统的稳定性、安全性、可用性、可观理性等方面获得了突破性的提高。
IA-64微处理器最大的缺陷是它们缺乏与x86的兼容,而Intel为了IA-64处理器能够更好地运行两个朝代的软件,它在IA-64处理器上(Itanium、Itanium2 ……)引入了x86-to-IA-64的解码器,这样就能够把x86指令翻译为IA-64指令。这个解码器并不是最有效率的解码器,也不是运行x86代码的最好途径(最好的途径是直接在x86处理器上运行x86代码),因此Itanium 和Itanium2在运行x86应用程序时候的性能非常糟糕。这也成为X86-64产生的根本原因。 (4)X86-64 (AMD64 / EM64T)
AMD公司设计,可以在同一时间内处理64位的整数运算,并兼容于X86-32架构。其中支持64位逻辑定址,同时提供转换为32位定址选项;但数据操作指令默认为32位和8位,提供转换成64位和16位的选项;支持常规用途寄存器,如果是32位运算操作,就要将结果扩展成完整的64位。这样,指令中有“直接执行”和“转换执行”的区别,其指令字段是8位或32位,可以避免字段过长。
x86-64(也叫AMD64)的产生也并非空穴来风,x86处理器的32bit寻址空间限制在4GB内存,而IA-64的处理器又不能兼容x86。AMD充分考虑顾客的需求,加强x86指令集的功能,使这套指令集可同时支持64位的运算模式,因此AMD把它们的结构称之为x86-64。
在技术上AMD在x86-64架构中为了进行64位运算,AMD为其引入了新增了R8-R15通用寄存器作为原有X86处理器寄存器的扩充,但在而在32位环境下并不完全使用到这些寄存器。原来的寄存器诸如EAX、EBX也由32位扩张至64位。在SSE单元中新加入了8个新寄存器以提供对SSE2的支持。
寄存器数量的增加将带来性能的提升。与此同时,为了同时支持32和64位代码及寄存器,x86-64架构允许处理器工作在以下两种模式:Long Mode(长模式)和Legacy Mode(遗传模式),Long模式又分为两种子模式(64bit模式和Compatibility mode兼容模式)。该标准已经被引进在AMD服务器处理器中的Opteron处理器。
而今年也推出了支持64位的EM64T技术,再还没被正式命为EM64T之前是IA32E,这是英特尔64位扩展技术的名字,用来区别X86指令集。Intel的EM64T支持64位sub-mode,和AMD的X86-64技术类似,采用64位的线性平面寻址,加入8个新的通用寄存器(GPRs),还增加8个寄存器支持SSE指令。
与AMD相类似,Intel的64位技术将兼容IA32和IA32E,只有在运行64位操作系统下的时候,才将会采用IA32E。IA32E将由2个sub-mode组成:64位sub-mode和32位sub-mode,同AMD64一样是向下兼容的。Intel的EM64T将完全兼容AMD的X86-64技术。现在Nocona处理器已经加入了一些64位技术,Intel的Pentium 4E处理器也支持64位技术。
应该说,这两者都是兼容x86指令集的64位微处理器架构,但EM64T与AMD64还是有一些不一样的地方,AMD64处理器中的NX位在Intel的处理器中将没有提供。
浏览量:2
下载量:0
时间:
什么是CPU、指令集、架构、芯片呢,下面是读文网小编带来的关于关于CPU、指令集、架构、芯片的科普:的内容,欢迎阅读!
随着智能设备的广泛普及,这几年媒体上越来越多的出现关于“架构”“ARM vs x86”“芯片研发”的相关内容。很多消费者和爱好者面对这些以往不太常见的信息时就会迷惑甚至产生误解。其中一组比较容易被混淆的概念就是CPU、架构、指令集与芯片。本文试图用较浅显的文字阐明它们的关系与区别,纠正一些常见的错误认识与观点。
学过计算机基础知识的朋友都知道CPU的含义,亦即中央处理器,是负责计算机主要运算任务的组件。一般习惯把CPU比喻为人的大脑。而了解略深的用户会听说CPU有x86、ARM等分类,前者主要用于PC而后者主要用于手机平板等设备。那么这里的x86、ARM指的是什么呢?
CPU执行计算任务时都需要遵从一定的规范,程序在被执行前都需要先翻译为CPU可以理解的语言。这种规范或语言就是指令集(ISA,Instruction Set Architecture)。程序被按照某种指令集的规范翻译为CPU可识别的底层代码的过程叫做编译(compile)。x86、ARM v8、MIPS都是指令集的代号。指令集可以被扩展,如x86增加64位支持就有了x86-64。厂商开发兼容某种指令集的CPU需要指令集专利持有者授权,典型例子如Intel授权AMD,使后者可以开发兼容x86指令集的CPU。
CPU的基本组成单元即为核心(core)。多个核心可以同时执行多件计算任务,前提是这些任务没有先后顺序。
核心的实现方式被称为微架构(microarchitecture)。微架构的设计影响核心可以达到的最高频率、核心在一定频率下能执行的运算量、一定工艺水平下核心的能耗水平等等。此外,不同微架构执行各类程序的偏向也不同,例如90年代末期Intel的P6微架构就在浮点类程序上表现优异,但在整数类应用中不如同频下的对手。
常见的代号如Haswell、Cortex-A15等都是微架构的称号。注意微架构与指令集是两个概念:指令集是CPU选择的语言,而微架构是具体的实现。i7-4770的核心是Haswell微架构,这种微架构兼容x86指令集。对于兼容ARM指令集的芯片来说这两个概念尤其容易混淆:ARM公司将自己研发的指令集叫做ARM指令集,同时它还研发具体的微架构如Cortex系列并对外授权。但是,一款CPU使用了ARM指令集不等于它就使用了ARM研发的微架构。Intel、高通、苹果、Nvidia等厂商都自行开发了兼容ARM指令集的微架构,同时还有许多厂商使用ARM开发的微架构来制造CPU。通常,业界认为只有具备独立的微架构研发能力的企业才算具备了CPU研发能力,而是否使用自行研发的指令集无关紧要。微架构的研发也是IT产业技术含量最高的领域之一。
数年前国产龙芯CPU获得MIPS授权的消息曾引起一阵风波,龙芯相关负责人还曾出来解释。龙芯是兼容MIPS指令集,微架构部由中科院自主研发的CPU系列。过去中科院资金不足所以没有MIPS指令集授权,但是指令集的实现方式是公开的,因而中科院可以在研发时选择兼容该指令集。待资金充足买下授权后,龙芯就可以合法在市面销售。从这里我们可以知道,厂商研发CPU时并不需要获得指令集授权就可以获得指令集的相关资料与规范,指令集本身的技术含量并不是很高。获得授权主要是为了避免法律问题。然而微架构的设计细节是各家厂商绝对保密的,而且由于其技术复杂,即便获得相应文档也难以山寨。不同厂商的微架构设计水平也有较大差异,典型如Intel与AMD的对比,前者在最近几年明显技高一筹。
微架构研发完成,或者说核心研发完成,接下来就是将其组装为芯片了。过去的芯片仅仅包括CPU部分,如今大量的芯片集成了CPU、GPU、IO等多种不同的功能组件,此时这种芯片就不是传统意义上的“CPU”了。将各种功能组件组装为芯片的技术含量相比微架构研发来说是较低的,因而业界能做此类工作的企业也数量较多。
在PC时代,几大主要的CPU研发厂商都只是自己研制微架构自己用。到了智能设备时代,ARM公司的微架构授权模式兴起。ARM自己开发微架构后将它们上架出售,其他厂商可以拿这些核心组装为芯片来使用或销售。由于这种模式对第三方的技术能力要求很低,加上ARM的微架构在低功耗领域表现优异,这种模式获得了广泛成功。如果你发现某款芯片标明使用了Cortex系列核心,则一定是这种模式的产物。如前所述,仅仅从ARM购买微架构来组装芯片的厂商是不能被称作CPU研发企业的,这些芯片也不能被称为“xx厂商研发的CPU”。典型如华为的海思920、三星Exynos 5430,只能说是“使用ARM Cortex-A15核心的芯片”。但是如果一款兼容ARM指令集的芯片使用了厂商自主研发的微架构情况就不同了。高通骁龙800、苹果A7就是这样的例子--它们分别使用了高通、苹果自主研发的CPU。
随着智能设备市场不断扩大,ARM阵营也不断壮大。占领智能设备领域后,ARM阵营开始进入PC、服务器与高性能计算领域。先是ARM发布了ARM v8 64位指令集规范,接着是各大厂商纷纷开始研发基于ARM v8的高性能微架构。有人会问,ARM指令集不是为低功耗设备研发的吗?怎么现在又开始做高性能CPU了呢?多年以前这样的怀疑是很有道理的,因为彼时不同指令集对微架构的影响还比较大,ARM适合低功耗,x86适合PC,Power适合小型机……这类区分是存在的。但是随着技术进步,指令集对微架构的影响已经小到可以忽略,任何指令集都可以做出适合不同领域的优秀微架构来。因此用户看到x86指令集的手机cpu或是ARM指令集的服务器CPU都无需惊讶,这是技术发展的自然结果。
那么,现在各家CPU研发厂商选择指令集的标准又是什么呢?业界除了x86和ARM、MIPS,其实还有一大堆各种各样的指令集。比如小型主机领域的Sparc、Alpha、Power等。国内几家研CPU的科研机构就分别选择了x86、MIPS、Sparc、Alpha、ARM指令集,早年甚至有机构选择Intel没落的Itanium使用的EPIC指令集的。一般来说大家倾向于选择软件生态较好的指令集--前面说过,软件必须编译后才能在某种指令集平台上运行,而编译是很复杂的事情,绝大多数闭源软件仅仅会对少数一两个平台编译。因而支持某种指令集的软件应用越多,这种指令集也就越有市场优势--新开发的微架构只需要兼容某种指令集,那么就可以很容易运行大量为其开发的软件。早年因为微软的强势与Wintel联盟的推动,x86指令集成了最受欢迎的角色,帮助Intel用彼时性能相对落后的微架构在PC平台挤跑了一众对手。后PC时代由于苹果谷歌的两大操作系统平台的推动,ARM指令集又取得了绝对的市场优势。但对于新的CPU研发单位来说,他们想获得热门指令集的兼容授权是很困难的事情。以前x86与ARM的指令集授权是拿钱买不到的,想要得到都需要进行高水平专利交换。拿到x86授权的几家厂商要么是拿的早(AMD、Cyrix、IDT),要么是有高水平技术与Intel交易(Transmeta,以功耗控制技术同Intel交易)。后来Nvidia想要研发自己的CPU,找Intel软磨硬泡后者就是不给,搞得Nvidia相当无奈。国内的研发单位当年开始研究时自知不可能拿到x86授权,于是各自去找关系好些的其他授权方解决问题了。ARM这边也一直对指令集授权卡的很死,之前只有高通、博通和Intel得到,也是通过技术交换的形式。08年苹果乔帮主被Intel甩脸色后决定自己搞CPU,最后也拿到了ARM的许可,想来彼时老乔也是威逼利诱,硬是让ARM屈服了(毕竟指令集多授权一家就多个对手啊)。后来ARM对指令集授权也放松了,去年三星与华为也分别得到了授权,他们的自研CPU预计也将在未来一两年面世。
本文总结下来的内容很简单:指令集与微架构是不同的概念,不可混淆;CPU研发指的是微架构研发;如今指令集不再有“最适合领域”的说法。希望这篇文章能帮助被这些问题困扰的朋友,也希望媒体在提及这些概念时多做一些科普与澄清。
浏览量:2
下载量:0
时间:
许多人在选购CPU的时候,会看到指令集这个参数,想必大家都还不是很了解吧,那么,CPU有哪些指令集呢?又有什么作用呢?读文网小编在这里给大家介绍什么是CPU指令集。
RISC是英文“Reduced Instruction Set Computing ” 的缩写,中文意思是“精简指令集”。它是在CISC指令系统基础上发展起来的,有人对CISC机进行测试表明,各种指令的使用频度相当悬殊,最常使用的是一些比较简单的指令,它们仅占指令总数的20%,但在程序中出现的频度却占80%。复杂的指令系统必然增加微处理器的复杂性,使处理器的研制时间长,成本高。并且复杂指令需要复杂的操作,必然会降低计算机的速度。基于上述原因,20世纪80年代RISC型CPU诞生了,相对于CISC型CPU ,RISC型CPU不仅精简了指令系统,还采用了一种叫做“超标量和超流水线结构”,大大增加了并行处理能力。RISC指令集是高性能CPU的发展方向。它与传统的CISC(复杂指令集)相对。相比而言,RISC的指令格式统一,种类比较少,寻址方式也比复杂指令集少。当然处理速度就提高很多了。目前在中高档服务器中普遍采用这一指令系统的CPU,特别是高档服务器全都采用RISC指令系统的CPU。RISC指令系统更加适合高档服务器的操作系统 UNIX,现在Linux也属于类似UNIX的操作系统。RISC型CPU与Intel和AMD的CPU在软件和硬件上都不兼容。
目前,在中高档服务器中采用RISC指令的CPU主要有以下几类:PowerPC处理器、SPARC处理器、PA-RISC处理器、MIPS处理器、Alpha处理器。
浏览量:2
下载量:0
时间:
CPU依靠指令进行工作,指令集则是提高微处理效率的最有效工具之一,那么CPU指令集又分为哪几种呢?读文网小编在这里给大家介绍CPU指令集的分类。
RISC是英文“Reduced Instruction Set Computing ”的缩写,中文意思是“精简指令集”。他是由John Cocke(约翰·科克)提出的,John Cocke在IBM公司从事的第一个项目是研究Stretch计算机(世界上第一个“超级计算机”型号),他很快成为大型机专家。1974年,Cocke和他领导的研究小组开始尝试研发每秒能够处理300线呼叫的电话交换网络。为了实现这个目标,他不得不寻找一种办法来提高交换系统已有架构的交换率。1975年,John Cocke研究了IBM370 CISC(Complex Instruction Set Computing,复杂指令集计算)系统,对CISC机进行测试表明,各种指令的使用频度相当悬殊,最常使用的是一些比较简单的指令,它们仅占指令总数的20%,但在程序中出现的频度却占80%。复杂的指令系统必然增加微处理器的复杂性,使处理器的研制时间长,成本高。并且复杂指令需要复杂的操作,必然会降低计算机的速度。基于上述原因,20世纪80年代RISC型CPU诞生了,相对于CISC型CPU,RISC型CPU不仅精简了指令系统,还采用了一种叫做“超标量和超流水线结构”,大大增加了并行处理能力。RISC指令集是高性能CPU的发展方向。它与传统的CISC(复杂指令集)相对。相比而言,RISC的指令格式统一,种类比较少,寻址方式也比复杂指令集少。当然处理速度就提高很多了。在中高档服务器中普遍采用这一指令系统的CPU,特别是高档服务器全都采用RISC指令系统的CPU。RISC指令系统更加适合高档服务器的操作系统Windows 7,Linux也属于类似Windows OS(UNIX)的操作系统。RISC型CPU与Intel和AMD的CPU在软件和硬件上都不兼容。
在中高档服务器中采用RISC指令的CPU主要有以下几类:PowerPC处理器、SPARC处理器、PA-RISC处理器、MIPS处理器、Alpha处理器。
浏览量:2
下载量:0
时间:
相信大家都知道CPU吧,那么大家对CPU指令集了解吗?不知道没关系,读文网小编在这里给大家介绍CPU指令集是什么。
CPU依靠指令来自计算和控制系统,每款CPU在设计时就规定了一系列与其硬件电路相配合的指令系统。指令的强弱也是CPU的重要指标,指令集是提高微处理器效率的最有效工具之一。
从现阶段的主流体系结构讲,指令集可分为复杂指令集和精简指令集两部分(指令集共有四个种类),而从具体运用看,如Intel的MMX(Multi Media Extended,此为AMD猜测的全称,Intel并没有说明词源)、SSE、SSE2(Streaming-Single instruction multiple data-Extensions 2)、SSE3、SSE4系列和AMD的3DNow!等都是CPU的扩展指令集,分别增强了CPU的多媒体、图形图象和Internet等的处理能力。
通常会把CPU的扩展指令集称为”CPU的指令集”。SSE3指令集也是规模最小的指令集,此前MMX包含有57条命令,SSE包含有50条命令,SSE2包含有144条命令,SSE3包含有13条命令。
从586CPU开始,CPU的工作电压分为内核电压和I/O电压两种,通常CPU的核心电压小于等于I/O电压。其中内核电压的大小是根据CPU的生产工艺而定,一般制作工艺越小,内核工作电压越低;I/O电压一般都在1.6~5V。低电压能解决耗电过大和发热过高的问题。
浏览量:2
下载量:0
时间:
在Linux的系统中经常碰到字符集导致的错误,那么Linux系统怎么配置多语言环境呢?就让读文网小编来告诉大家Linux系统配置多语言环境的方法吧,希望对大家有所帮助。
修改 /etc/sysconfig/i18n 文件,如
LANG=“en_US.UTF-8”,xwindow会显示英文界面,
LANG=“zh_CN.GB18030”,xwindow会显示中文界面。
还有一种方法 cp /etc/sysconfig/i18n $HOME/.i18n修改 $HOME/.i18n 文件,如
LANG=“en_US.UTF-8”,xwindow会显示英文界面,
LANG=“zh_CN.GB18030”,xwindow会显示中文界面。
这样就可以改变个人的界面语言,而不影响别的用户。
修改后的/etc/sysconfig/i18n 文件为:
代码如下:
LANG=“en_US.UTF-8”
SUPPORTED=“zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en”
SYSFONT=“latarcyrheb-sun16”
LC_ALL=“en_US.UTF-8”
export LC_ALL
设置完毕后重启或者用rc.local使生效
或修改登录用户的.bash_profile文件加入
代码如下:
export LANG=zh_CN.GB18030
export LANGUAGE=zh_CN.GB18030:zh_CN.GB2312:zh_CN
Ubuntu
比如将Ubuntu 系统语言环境改为英文的en_US.UTF-8:
查看当前系统语言环境,编辑配置文件,将zh_US.UTF-8改为en_US.UTF-8,zh改为en
代码如下:
sudo nano /etc/default/locale
LANG=“en_US.UTF-8”
LANGUAGE=“en_US:en”
CentOS:
方法一、使用光盘或者相当于光盘的媒介
代码如下:
# mount /dev/cdrom /mnt/cdrom
# cd /mnt/cdrom
# rpm -ivh fonts-chinese
方法二、代码如下:
# yum install fonts-chinese
安装好后,设置一下系统的语言,用桌面方式或字符方式均可,修改后包括如下内容即可:
代码如下:
vim /etc/sysconfig/i18n
代码如下:
LANG=“zh_CN.GB2312”
LANGUAGE=“zh_CN.GB18030:zh_CN.GB2312:zh_CN”
SUPPORTED=“zh_CN.GB18030:zh_CN.GB2312:zh_CN.UTF-8:zh:en_US.UTF-8:en_US:en:ja_JP.UTF-8:ja_JP:ja”
SYSFONT=“lat0-sun16”
SYSFONTACM=“8859-15”
上面就是介绍了如何为Linux系统配置多语言环境的基本方法 ,如果你还在为不知如何给Linux系统配置多语言环境而烦恼的话,你们不凡可以按照上面所说的方法去操作,一切已实践行动为主,那就赶紧选择一个你自己喜欢的方法去操作吧!
看过“Linux系统怎么配置多语言环境”
浏览量:4
下载量:0
时间:
有时候为了更好地操作机器, 需要将某个进程绑定到具体的CPU上去,那么Ubuntu怎么绑定CPU进程呢?就让读文网小编来告诉大家Ubuntu绑定CPU进程的方法吧,希望对大家有所帮助。
taskset -cp 《CPU ID | CPU IDs》 《Process ID》
下面用一个简单的例子来说明怎样做到。
1. CPU利用率达100%的样例代码:
class Test {
public static void main(String args[]) {
int i = 0;
while (true) {
i++;
}
}
}
2. 编译并运行上面的样例代码
# javac Test.java
# java Test &
[1] 26531
3. 使用htop命令查看CPU的利用率
如果未安装htop工具,执行下面的命令:
# apt-get install htop
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
htop
0 upgraded, 1 newly installed, 0 to remove and 41 not upgraded.
Need to get 66.9 kB of archives.
After this operation, 183 kB of additional disk space will be used.
Get:1 http://mirrors.163.com/ubuntu/ precise/universe htop amd64 1.0.1-1 [66.9 kB]
Fetched 66.9 kB in 0s (163 kB/s)
Selecting previously unselected package htop.
(Reading database ... 57100 files and directories currently installed.)
Unpacking htop (from .../htop_1.0.1-1_amd64.deb)...
Processing triggers for man-db ...
Setting up htop (1.0.1-1)...
安装完成后,执行命令:
# htop
上面的视图可以看到,CPU2的利用率达到100%,且这个进程有可能被分配到其它CPU核上运行,这个分配是不定的。
4. 进程绑定CPU核
运行以下命令,把此Java进程(进程ID号为26502)永久的分配给5号CPU核(CPU核号从0开始计算,因此序号4指的是5号CPU核)
# taskset -cp 5 26531
pid 26531‘s current affinity list: 0-7
pid 26531’s new affinity list: 5
从上面的视图中可以看到6号CPU核的利用率为100%。
随着CPU核的多个化,这样的绑定方法也是一样的,无论绑定哪个CPU核都能启动同样的效果,相信大家都追求运行的高速度,赶快来学习绑定CPU进程的方法吧!
看过“Ubuntu怎么绑定CPU进程”
浏览量:2
下载量:0
时间:
由于宽带的普及,现在在线看视频,听歌曲已经是很多人上网冲浪的方式,但有部分人在看视频或者听歌曲时候发现电脑很卡,一看CPU竟然被占用的很高,达到%80或%90以上,这个就有问题了,那么你知道win7播放视频时cpu占用率高怎么办吗?下面是读文网小编整理的一些关于win7播放视频时cpu占用率高的相关资料,供你参考。
1、点击开始菜单,在所有程序中找到“Windows Media Player”并将其打开,如图所示:
2、鼠标右键“Windows Media Player”窗口,选择“工具→选项”,如图所示:
3、打开选项窗口后,切换至“性能”项,取消勾选“启用WMV文件的DirectX视频加速”,如图所示:
4、最后重新切换至“播放机”项,将自动更新更改为每月一次,若是无法更改则不管它,接着取消勾选“播放时允许运行屏幕保护程序”和“播放时向库添加远程媒体文件”,如图所示:
win7播放视频时cpu占用率高的相关
浏览量:4
下载量:0
时间:
Win 7系统,可以利用手写板或鼠标“手写”数学公式,那么Win7“数学输入面板”工具如何编写数学公式呢?读文网小编分享了Win7“数学输入面板”工具编写数学公式的方法,希望对大家有所帮助。
打开数学输入面板
a.打开“运行”对话框,如果开始菜单没有的话,可以按键盘上的“win键+R”组合键来打开,接着在里面输入“mip”,按回车就可以打开Windows 7的公式输入面板了。
b.打开开始菜单—附件,找到“数学输入面板”,打开数学输入面板。
“手写”数学公式并插入Word文档中
在数学面板里面我们可以来写出你需要的公式,写好后在上栏会自动进行识别,打开word,数学输入面板中的公式就能够直接插入到其中。
如果识别正确的话,那只要点击下面的“插入”按钮,这样就可以插入到word文档中了。
如果我们写的数字或者符号有些不好,在识别的时候会出现错误,这时可以点击左面的“选择和更正”按钮,然后再点击一下字符就会弹出菜单,菜单里面有好几个可以候选的字符,我们可以重新选择一下就可以了,万一菜单里面没有你想要的字符,那就只能在显示的虚线框中重新写入了。
另外我们使用数学输入面板插入的公式也能够通过word自带的编辑器来编辑
有了这个工具我们就能够在编辑科学型的文档要输入数学公式时得心应手。
为“数学输入面板”创建桌面快捷方式
如果你觉得通过“运行”对话框启动Win7正版系统的“数学输入面板”比较麻烦,可以为其在桌面创建一个快捷方式。在桌面空白处单击鼠标右键,在弹出的快捷菜单中选择“新建”→“快捷方式”,打开“创建快捷方式”向导,在“请键入对象位置”下方的文本框中输入"C:Program FilesCommon Filesmicrosoft sharedinkmip.exe"(包含双引号),单击“下一步”。
键入快捷方式名称(如:数学输入面板),最后单击“完成”按钮,即可在桌面上生成“数学输入面板”的快捷方式,以后要手写数学公式只要直接双击这个快捷方式即可启动Win7正版系统的“数学输入面板”,进行数学公式的录入和编辑。
看过“Win7“数学输入面板”工具如何编写数学公式”
浏览量:2
下载量:0
时间:
我们都知道手机cpu的好坏对于我们操作游戏是有影响的,那么下面就由读文网小编来给你们说说2016最适合玩游戏的手机cpu有哪些吧吧,希望可以帮到你们哦!
这个没有肯定的说法,目前遇到的大型3D游戏在高通处理器的兼容性很好,我的德仪有几个玩不了,,就htc大部分都是高通的。
高通820、苹果A9、海思950、联发科MT6797(X20)、三星8890等各家的高端手机处理器,玩游戏效果都不错。
高通正式发布首款采用Kryo自主架构的骁龙820处理器,新处理器将会应用在智能手机、平板、相机、汽车、VR设备以及无人机产品上,首批采用骁龙820的终端设备将于2016年上半年上市。
骁龙820处理器采用高通自主定制的Kryo架构,性能相比骁龙810提升两倍,时钟频率可达2.2GHz,并首次引入14位Spectra影像处理器和Heterogeneous信号处理器,支持2800万像素摄像头和4K超清视频摄录和播放以及4K分辨率屏幕。
图像处理性能方面,基于全新的Adreno 530 GPU,全面支持OpenGL ES 3.1+ AEP、OpenCL 2.0 Full、Vulcan、RenderScript、64位虚拟寻址DirectX 11.2、硬件曲面细分、几何着色器、可编程混合,图像处理性能相比采用Adreno 430 GPU的骁龙810提升40%,且功耗更低。
与此同时,骁龙820还整合了X12 LTE基带,兼容兼容LTE FDD、LTE TDD、WCDMA (DB-DC-HSDPA/DC-HSUPA)、TD-SCDMA、CDMA 1x/EVDO、GSM/EDGE频段,支持Cat12、Cat13标准,理论上下行速率分别为150Mbps和600Mbps,峰值下载速率比采用X10 LTE基带的骁龙810提升33%。
WiFi无线方面,整合高通VIVE 802.11ac,三频段Wi-Fi,2x2 MU-MIMO(多用户多入多出),蓝牙4.1,NFC,支持Wi-Fi高清语音、视频通话,Wi-Fi质量实时监控。
续航方面,骁龙820引入了Quick Charge 3.0技术,相比Quick Charge 2.0充电效率提升38%,且充电效率4倍于普通充电器。
看过“2016最适合玩游戏的手机cpu”
浏览量:4
下载量:0
时间:
为了更加了解自己的电脑,就希望能够知道电脑中的CPU线程数到底有多少。那么Win10系统怎么查看CPU线程数呢?接下来大家跟着读文网小编一起来了解一下Win10系统查看CPU线程数的解决方法吧。
1、Win10任务栏空白处单击鼠标右键,菜单中点击选择“任务管理器”。
2、在任务管理器窗口切换至“性能”,对着CPU利用率图形界面,单击鼠标右键,鼠标指向菜单中的“将图形更改为”,点击选择次级菜单中的“逻辑处理器”。
3、随后出现几个图形,就是几个线程。
浏览量:3
下载量:0
时间: