计算机组织| RISC和CISC

精简指令集体系结构(RISC)—— 其主要思想是通过使用由加载、计算和存储操作的几个基本步骤组成的指令集来简化硬件,就像加载命令加载数据,存储命令存储数据一样。

null

复杂指令集体系结构(CISC)—— 其主要思想是,一条指令将完成所有加载、求值和存储操作,就像乘法命令将完成加载、求值和存储数据等操作一样,因此它很复杂。

这两种方法都试图提高CPU性能

  • RISC: 以每个程序的指令数为代价,减少每个指令的周期。
  • CISC: CISC方法试图最小化每个程序的指令数,但代价是增加每个指令的周期数。

图片[1]-计算机组织| RISC和CISC-yiteyi-C++库

早些时候,当使用汇编语言进行编程时,人们觉得有必要让指令执行更多任务,因为汇编中的编程繁琐且容易出错,这是CISC体系结构发展的结果,但随着高级语言对汇编的依赖程度的提高,精简的RISC体系结构占了上风。

RISC的特点——

  1. 更简单的指令,因此简单的指令解码。
  2. 指令小于一个单词的大小。
  3. 指令需要一个时钟周期才能执行。
  4. 更多的通用寄存器。
  5. 简单的寻址模式。
  6. 数据类型更少。
  7. 管道是可以实现的。

CISC的特点——

  1. 复杂指令,因此复杂指令解码。
  2. 说明大于一个字号。
  3. 指令可能需要超过一个时钟周期才能执行。
  4. 随着操作在内存中执行,通用寄存器的数量会减少。
  5. 复杂的寻址模式。
  6. 更多数据类型。

例如—— 假设我们必须添加两个8位数字:

  • CISC方法: 对于这类ADD,将有一个单独的命令或指令来执行任务。
  • RISC方法: 在这里,程序员将编写第一个加载命令,将数据加载到寄存器中,然后使用合适的运算符,然后将结果存储到所需的位置。

因此,add操作分为加载、操作、存储等部分,因为RISC程序更长,需要更多内存才能存储,但由于命令不太复杂,需要的晶体管更少。

差异——

RISC 中钢集团
关注软件 关注硬件
仅使用硬接线控制单元 使用硬接线和微程序控制单元
晶体管用于更多寄存器 晶体管用于存储复杂的数据 说明书
固定大小的指令 可变大小指令
只能执行寄存器到寄存器的算术运算 可以执行REG to REG或REG to MEM或MEM to MEM
需要更多的寄存器 需要更少的寄存器
代码大小很大 代码大小很小
在一个时钟周期内执行的一种指令 指令需要一个以上的时钟周期
用一个词就能说明问题 指令比一个单词大
© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享