最近一直比较疑惑,RISC指令集以及CISC指令集区别在哪些方面呢?趁机也就补充了相关资料,进行了一些总结。
目前CISC(复杂指令集)的代表为X86(CISC),RISC(精简指令集)的代表为ARM、MIPS(RISC)还有新兴的RISCV指令集架构。
很长一段时间,我关于处理器的相关知识,都是大学课程《微机系统原理》中的8086,甚至不涉及到x86处理器。在实际项目或者工作中,更多的却是ARM/MIPS等处理器。所以工作过程中,难免疑惑不解,张冠李戴。为什么很多基本知识在面对ARM和MIPS时不再适用,主要是因为X86属于复杂指令集系统(CISC),而ARM,MIPS属于精简指令集系统(RISC)。
load-store体系结构
RISC使用的是load-store结构。load-store结构的本质,在于RISC技术的CPU只处理(指逻辑,算术运算处理)寄存器中的数据。相反,X86却能够直接处理存储器中的数据。
RISC体系架构的CPU,存储器和寄存器之间的数据交互,由专门的load和store指令负责。存储器是指内存或者Flash(NOR Flash)等可以被CP