美文网首页
软件架构设计师笔记(复杂和简单指令集)

软件架构设计师笔记(复杂和简单指令集)

作者: Mr菜头 | 来源:发表于2019-02-04 08:19 被阅读0次

在计算机系统结构发展的过程中,指令系统的优化设计有两个截然相反的方向。

分别为:

1、复杂指令集( CISC)

2、简单指令集(RISC)


两种指令集如何区分?

有一个脑筋急转弯 :把大象装入冰箱需要几步?

复杂指令的答案是:1步,

    调用指令:把大象装入冰箱

简单指令的答案是:3步

    第一步:打开冰箱,第二步:装进大象,第三步:关闭冰箱

如果把脑筋急转弯改一下:把长颈鹿装入冰箱需要几步?

复杂指令的答案是:1步,

    调用指令:把长颈鹿装入冰箱

简单指令的答案是:3步

    第一步:打开冰箱,第二步:装进长颈鹿,第三步:关闭冰箱

随着以上情况地增加,可以发现

CISC 指令系统的主要特点如下:

(1)指令数量众多。指令系统拥有大量的指令,通常有 100~250 条

(2)指令使用频率相差悬殊。最常使用的是一些比较简单的指令,仅占指令总数的 20%,

但在程序中出现的频率却占 80%。而大部分复杂指令却很少使用。

(3)支持很多种寻址方式。支持的寻址方式通常为 5~20 种。

(4)变长的指令。指令长度不是固定的,变长的指令增加指令译码电路的复杂性。

(5)指令可以对主存单元中的数据直接进行处理。典型的 CISC 通常都有指令能够直

接对主存单元中的数据进行处理,其执行速度较慢。

(6)以微程序控制为主。CISC 的指令系统很复杂,难以用硬布线逻辑(组合逻辑)电路实现控制器,通常采用微程序控制。

2. RISC 指令系统的特点

(1)指令数量少。优先选取使用频率最高的一些简单指令和一些常用指令,

避免使用复杂指令。只提供了 LOAD(从存储器中读数)和 STORE(把数据写入存储器)两条指令对存储器操作,其余所有的操作都在 CPU 的寄存器之间进行。

(2)指令的寻址方式少。通常只支持寄存器寻址方式、立即数寻址方式和相对寻址方式。

(3)指令长度固定,指令格式种类少。因为 RISC 指令数量少、格式少、相对简单,其指令长度固定,指令之间各字段的划分比较一致,译码相对容易。

(4)以硬布线逻辑控制为主。为了提高操作的执行速度,通常采用硬布线逻辑(组合逻辑)来构建控制器。

(5)单周期指令执行,采用流水线技术。因为简化了指令系统,很容易利用流水线技术,使得大部分指令都能在一个机器周期内完成。少数指令可能会需要多周期,

例如,LOAD/STORE 指令因为需要访问存储器,其执行时间就会长一些。

(6)优化的编译器:RISC 的精简指令集使编译工作简单化。

因为指令长度固定、格式少、寻址方式少,编译时不必在具有相似功能的许多指令中进行选择,也不必为寻址方式的选择而费心,同时易于实现优化,从而可以生成高效率执行的机器代码。

(7)CPU 中的通用寄存器数量多,一般在 32 个以上,有的可达上千个。

相关文章

网友评论

      本文标题:软件架构设计师笔记(复杂和简单指令集)

      本文链接:https://www.haomeiwen.com/subject/bazysqtx.html