1 概述
2 指令集结构设计
2.1 RISC 精简
优点:
- 速度快。 RISC特点之一是 指令流水线,而指令长短和执行时间的特性,使流水中的等待和保持时间减到最少。这些因素有利提高计算速度。
- 降低设计成本,提高可靠性。 由于 RISC 指令集清简,使之只需相对小而简单控制单元的译码和硬件执行子系统。降低了复杂程序,简化了结构。
- 支持 高级语言,而不支持汇编语言(方便 编程)
缺点:
- 编译后指令长度较长,内存需要较大。 因为 RISC 拥有的指令数少,有些在 CISC 中仅由一条指令完成的功能,在 RISC 中需二、三条甚至更多条指令,这使 RISC 代码较长,因而 RISC 的程序需要更多的内存,内存与 CPU 间的指令冲突也会增加
2.2 CISC 复杂
- 在 CISC 指令集的各种指令中,其使用频率却相差悬殊,大约有20%的指令会被反复使用,占整个程序代码的80%。而余下的80%的指令却不经常使用,在程序设计中只占20%。
- 当然,和 CISC 架构相比较,尽管 RISC 架构有上述的优点,但不能认为 RISC 架构就可以取代 CISC 架构,事实上,RISC 和 CISC 各有优势,而且界限并不那么明显。现代的 CPU 往往采用 CISC 的外围,内部加入了 RISC 的特性,如超长指令集 CPU 就是融合了 RISC 和 CISC 的优势,成为未来的 CPU 发展方向之一
2.3 区别
- RISC 和 CISC 是当前 CPU 的两种架构。
- 它们的区别在于不同的 CPU 设计理念和方法。
| RISC(精简) | CISC(复杂) | |
|---|---|---|
| 指令系统 | 简单,精简 | 复杂,庞大 |
| 指令数目 | 一般小于 100 条 | 一般大于 200 条 |
| 指令字长 | 固定长度 | 无限制 |
| 指令设计 | 以 软件 为中心 | 以 硬件 为中心 |
| 可访存指令 | 只有 Load/Store 指令 | 无限制 |
| 各种指令执行时间 | 大多数在一周期内 | 相差很大 |
| 各种指令执行频率 | 都比较常用 | 相差很大 |
| 通用寄存器数量 | 较多 | 较少 |
| 指令流水线 | 必须 | 可选 |
| 控制方式 | 组合逻辑控制 | 微程序控制 |
3 扩展
3.1 指令基础(操作码 和 地址码)
- 指令由 操作码 和 地址码 两个部分组成
- 操作码:指出该指令要完成什么操作
- 地址码:提供原始的数据(操作数)
3.2 寻址方式
- 寻址方式:寻找 操作数 的方式
- 常见以下几种
| 寻址方式 | 解释说明 |
|---|---|
| 立即寻址 | 直接给出 操作数本身 而非地址 |
| 直接寻址 | 直接给出 操作数地址 或 所在寄存器号(寄存器寻址) |
| 间接寻址 | 给出指向 操作数地址的地址 |
| 变址寻址 | 给出的地址需与特定的地址值累加从而得出操作数地址 |
// 参考答案:C,不要选择 D 了哦
[例1]在机器指令的地址字段中,直接指出操作数本身的寻址方式称为()
A.隐含寻址
B.寄存器寻址
C.立即寻址
D.直接寻址
// 网工软考 2012年上半年 参考答案:B
[例2]若 CPU 要执行的指令为 "MOV R1,#45"(即将数值45传送到寄存器R1中),
则该指令中采用的寻址方式是()
A.直接寻址和立即寻址
B.寄存器寻址和立即寻址
C.相对寻址和直接寻址
D.寄存器间接寻址和直接寻址
-- #45:操作本身 => 立即寻址
-- R1:寄存器 => 寄存器寻址
版权声明:本文为qq_34745941原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。