相较于允许运算指令直接访问内存的指令系统,Load/Store型指令系统的核心优点在于:指令格式更规整、控制器设计更简单,从而极大地有利于实现指令流水线,提升处理器吞吐率

一、Load/Store架构的优点详解

为了完成一个“内存变量A + 内存变量B -> 内存变量C”的操作,两种架构的指令序列对比如下:

寄存器-存储器型 (R-M, CISC) Load/Store型 (R-R, RISC)
MOV R1, A ; 将内存A加载到R1 LOAD R1, A ; 将内存A加载到R1
ADD R1, B ; R1 <- R1 + [B] LOAD R2, B ; 将内存B加载到R2
MOV C, R1 ; 将R1结果存回内存C ADD R3, R1, R2 ; R3 <- R1 + R2
STORE C, R3 ; 将R3结果存回内存C

表面上看,Load/Store型指令数量更多,似乎更繁琐,但其优势体现在以下几个方面:

1. 指令格式规整,多为定长指令

2. 简化指令解码与控制器设计

3. 极大地有利于指令流水线执行

这是Load/Store架构最核心、最重要的优势。一个典型的五段流水线(IF取指, ID解码, EX执行, MEM访存, WB写回)可以清晰地展示这一点。