文章目录
CISC
CISC:Complex Instruction Set Computer,复杂指令集计算机,桌面PC使用的基本上都是这种指令集。
CISC 指令集存在的严重问题是:各个指令的使用频率严重不平衡:大约 的比较简单的指令被反复使用,使用量占整个程序的 ;而另外 的指令则很少使用。
在 CISC 中,为了优化目标程序,支持高级语言和编译程序,增加了许多复杂的指令:用一条指令代替一串指令。通过增强指令系统的功能,简化了软件的编写和编译,但是却增加了硬件的复杂程度。而这些复杂指令并不有利于缩短程序的执行时间;同时,CISC 为了实现大量复杂的指令,控制逻辑极不规范,给微控制器制造工艺造成很大困难;后来就出现了 RISC。
RISC
RISC:Reduced Instruction Set Computer,精简指令集计算机,RISC 通过简化指令系统的方式使计算机的结构更加简单合理,从而提高运算效率。在 RISC 中,优先选取使用频率最高、效率最高、结构简单的指令,避免使用复杂指令;固定指令长度,减少指令格式和寻址方式种类,并在指令之间各字段的划分比较一致,各字段功能也比较规整,大部分指令控制在一个或小于一个机器周期内完成;采用高级语言编程,重视编译优化工作,以减少程序执行时间。
CISC 和 RISC 计算机的特点比较
类别 | CISC | RISC |
指令系统规模 | 指令数量庞大 | 指令数量通常不超过 100 |
执行时间 | 有些指令的执行时间比较长 | 一般指令的执行时间不会太长 |
编码长度 | 编码长度可在 1 ~ 15 字节之间 | 编码长度固定,一般为 4 字节 |
寻址方式 | 多样 | 简单寻址 |
操作 | 可以对存储器和寄存器进行算术和罗操作 | 只能对寄存器进行算法和逻辑操作,Load/Store体系结构 |
编译 | 很难用优化编译器来生成高效的目标代码程序 | 可以采用优化编译技术 |
尽管 RISC 相比 CISC 有很多优点,但是 RISC 架构也不能完全代替 CISC 结构。现代的CPU 一般使用 CISC 做外围,内部加入 RISC 的特征,达到优势互补。例如,超长指令集 CPU 就是融合了RISC 和CISC 两者优势,称为未来CPU的发展方向。在 PC 和服务器领域,CISC 体系结构仍旧是市场的主流;在嵌入式领域,RISC 结构的微处理器将占有重要的位置;