要加快程序执行的速度,就需要加快指令执行的速度,由此指令系统的发展方向有两个
CISC:复杂指令集计算机系统,增加新的指令,增强指令的功能,但是会导致指令越来越多,指令系统变得复杂
RISC:精简指令集计算机系统,保留必要的指令,减少指令的数量
可以看到,CISC是将多条指令合成一条强功能指令,RISC是将强功能指令去掉,由最基本的指令来实现强功能指令的功能。一个是组合,一个是拆分,为什么都可以提高程序执行的速度呢?
组合:指令一般都需要取指,译码,分析,执行的过程,如果将四条指令合成一条指令,那么就只需要一个取指译码分析的时间,而不是四个,于是加快了指令执行速度。
拆分:RISC使用了流水线技术,根据需要将指令的执行逻辑上分为多个子过程,比如取指,译码,分析,执行,然后设置这四个功能部件,让指令可以重叠执行,如果指令像CISC那样不规整,流水线的效率就不高
硬布线:用电路的方式设置指令,速度快,但是修改起来难度比较大
微程序:指令放在控制存储器里面,速度比硬布线慢些,但是容易修改和增加新指令
CISC会导致指令越来越复杂,而且为了兼容的原则,原来的指令不能删除,如果采用硬布线的话,会导致指令系统的设计越来越复杂,而且修改起来也很困难,采用微程序就易于指令的修改,容易增加指令,因此CISC一般采用微程序控制
RISC是要精简指令,保留最基本的指令,因此指令较简单,另外为了使用流水线技术,指令也比较规整,因此RISC适合采用硬布线控制。