CISC(Complex Intruction Set Compute)
复杂指令集系统:
The main idea is to make hardware complex as a single instruction will do all loading, evaluating and storing operations just like a multiplication command will do stuff like loading data, evaluating and storing it.
增强指令的功能,设置一些功能复杂的指令,把一些原来由软件实现的、常用的功能改用硬
件的指令系统来实现,这种计算机系统称为复杂指令系统计算机。
特点:
- 指令复杂且长度不固定,增加指令译码电路的复杂性。
- 指令大小 大于一个字。
- 指令执行时间可能不止一个时钟周期。
- 在内存中执行操作时,通用寄存器的数量会减少。
- 指纹寻址方式多。
- 更多的数据类型。
RISC (Reduced Intruction Set Compute)
精简指令集系统:
The main idea behind is to make hardware simpler by using an instruction set composed of a few basic steps for loading, evaluating and storing operations just like an addition command will be composed of loading data, evaluating and storing.
尽量简化指令功能,只保留那些功能简单,能在一个节拍内执行完成指令,较复杂的功能用一段子程序来实现,这种计算机系统称为精简指令系统计算机。
特点:
- 简单指令,指令译码电器简单。
- 指令大小小于一个字
- 指令执行时间小于或等于一个时钟周期。
- CPU 中的通用寄存器数量多,一般在 32 个以上,有的可达上千个。
- 指令寻址方式少。
- 较少数据类型。
- 可以实现管道输送。
提高 CPU执行效率区别:
- [CISC] 将每个程序指令指令数减少,以增加每个指令执行周期时间为代价
- [RISC] 以程序指令数为代价,减少指令周期时间
早些时候使用汇编语言进行编程时,人们感到有必要使指令执行更多的任务,
因为汇编语言中的编程很繁琐且容易出错,因此CISC体系结构得到了发展,
但由于高级语言对汇编的依赖性降低,使RISC体系结构变得流行。
对比:
CISC | RISC |
---|---|
注重硬件 | 注重软件 |
晶体管用于存储复杂的指令 | 晶体管用于更多寄存器 |
指令大于一个字 | 指令小于一个字 |
指令执行多个时钟周期 | 指令执行单个时钟周期 |
代码量大 | 代码量少 |