精简指令集架构(RISC)–
背后的主要思想是通过使用由几个基本步骤组成的指令集来简化硬件,这些基本步骤用于进行加载,评估和存储操作,就像load命令将加载数据,store命令将存储数据一样。
复杂指令集架构(CISC)–
主要思想是,一条指令将完成所有加载,评估和存储操作,就像乘法命令将执行加载,评估和存储数据之类的事情一样,因此非常复杂。
两种方法都试图提高CPU性能
- RISC:以每个程序的指令数为代价,减少每个指令的周期。
- CISC: CISC方法试图将每个程序的指令数量减至最少,但以增加每个指令的周期数为代价。
早些时候使用汇编语言进行编程时,人们感到有必要使指令执行更多的任务,因为汇编语言中的编程很繁琐且容易出错,因此CISC体系结构得到了发展,但是随着高级语言对汇编的依赖性的提高,RISC体系结构也有所减少。占了上风。
RISC的特征–
- 更简单的指令,因此简单的指令解码。
- 指令的大小不超过一个字。
- 指令仅需一个时钟周期即可执行。
- 更多数量的通用寄存器。
- 简单的寻址模式。
- 较少的数据类型。
- 可以实现流水线。
CISC的特点–
- 复杂指令,因此需要复杂的指令解码。
- 指令大于一个字的大小。
- 指令可能需要多个时钟周期才能执行。
- 由于在内存本身中执行操作的通用寄存器数量较少。
- 复杂的寻址模式。
- 更多数据类型。
示例–假设我们必须添加两个8位数字:
- CISC方法:为此,将有一条命令或指令(如ADD)执行任务。
- RISC方法:此处,程序员将编写第一个加载命令以将数据加载到寄存器中,然后将使用合适的运算符,然后将结果存储在所需的位置。
因此,加法操作分为多个部分,即加载,操作,存储,由于RISC程序较长,因此需要更多的存储器来存储,但由于命令的复杂程度较低,因此需要的晶体管也更少。
区别 –
RISC | CISC |
---|---|
Focus on software | Focus on hardware |
Uses only Hardwired control unit | Uses both hardwired and micro programmed control unit |
Transistors are used for more registers | Transistors are used for storing complex Instructions |
Fixed sized instructions | Variable sized instructions |
Can perform only Register to Register Arithmetic operations | Can perform REG to REG or REG to MEM or MEM to MEM |
Requires more number of registers | Requires less number of registers |
Code size is large | Code size is small |
An instruction execute in a single clock cycle | Instruction takes more than one clock cycle |
An instruction fit in one word | Instructions are larger than the size of one word |