指令系统、CISC和RISC

本文介绍了计算机指令系统的基础概念,详细对比了复杂指令集(CISC)与精简指令集(RISC)的特点和优缺点,探讨了两种指令集如何影响处理器性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.       什么是指令系统

指令系统是计算机系统中的软硬件界面,是计算机/处理器功能的直接表示。我们编写的各类程序都将由编译、汇编工具转换为一条条的机器指令,驱动硬件系统完成算术、逻辑等运算功能。几十年来,指令系统没有什么根本的改变,涉及的内容包括:数据表示、寻址技术、实现方式等。总的来说,指令系统告诉我们可以如何利用计算机/处理器的各类资源和部件,或者说计算机/处理器为我们提供了怎样的能力。

2.       CISC vs RISC

基本的指令系统一般包含了数据传送指令、运算指令、程序控制指令、输入输出指令、处理机控制和调试指令。也就是说,处理器通常都提供了上述功能。那么,如何提高处理器的性能呢?

CISC:一种可行的方法是根据统计结果将使用频率高、执行时间长的操作或指令串直接定义为一条机器指令,即CISC。例如:IBM370中的指令“OPC+R1+R3+B2+D2就是将起始地址为R1,结束地址为R3的数据块复制到主存储器的(B2)+D2起始存储区中。通常来说,CISC都采用了微程序实现方式,其中一条指令的执行时间可能需要很多周期。CISC的好处在于:拉近了高级语言与机器指令之间的距离,利于优化编译器的性能,以及降低程序的空间开销。大家不要小看CISC,在实践中,高级语言和汇编语言编写的程序所占用的空间和时间开销差距超过了一个数量级。因此,CISC是提高计算机性能的重要手段。极端情况下,所谓高级语言计算机能够直接执行高级语言,例如LISP计算机等。IntelX86处理器都属于CISC的范畴。

CISC的缺陷:(1)VLSI的发展使得主存与控存都采用晶体管电路实现(DRAM,最早的时候主存实现为磁芯存储器),执行微程序与执行一系列指令串的效率相当,CISC和微程序的性能优势失去了基础;(2)20%的指令占据了80%的执行时间,因此大量处理器资源的利用率很低;(3)CISC为了实现复杂指令而引入了大量控制逻辑,由此引发的复杂性和欠规则性不利于VLSI的实现,降低了处理器的最大时钟频率。

RISC优化处理器性能的途径与CISC大相径庭。RISC没有一个确切的定义,但是通常具有如下特点:(1)大多数指令实现了简单功能,并且可以在一个周期内完成;(2)所有执行部件相关指令都操作寄存器中的数据,克服存储器访问瓶颈,称为Load/Store结构;(3)硬连线实现的控制逻辑,克服了微程序的解释和控制通路开销;(4)减少指令和寻址种类,简化控制部件的结构;(5)固定指令格式,提高译码和控制部件效率;(6)注重译码的优化;(7)重视流水线设计;(8)重视优化编译技术。事实上,RISCCISC的区别可以从字面得出,即:RISC更加高效的实现了一系列简单指令。更深入的讲,RISC降低了指令平均执行周期CPI,并且利用硬连线实现的简单控制逻辑保证了较高的工作频率,从而提高了处理器的性能。

RISC自从80年代诞生以来就得到了极力追捧。SUNSPARKSGIR系列、IBMPowerPCDECAlpha等都采用RISC结构。不过事实上,RISCCISC其实也都不断借鉴对方的优点:IntelPentium也采用了RISC思想,一些RISC处理器也采用了微程序技术。而且正如有人注意到的,ARM的指令集似乎并不比Intel的指令集少。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值