1.Load&Store Architecture (存取架构)
SPARC架构只能对存储在寄存器中的数据执行运算(例如算术和逻辑功能)。需要使用单独的指令将数据从存储器移至寄存器(Load),然后移回存储器(Store)。例如:
load x,r1
load y,r2
add r1,r2,r3
store r3,z
x,y,z代表存储器,r1,r2,r3代表寄存器。这其实和x86是一样的,x86架构下也需要先把存储器操作数加载到寄存器中变成寄存器操作数后才能进行运算。
每个SPARC指令要么进行内存访问,要么进行计算。这个设计使得每条指令固定在一个机器周期内执行。 如果所有(或大多数)数据都可以保存在寄存器中,则此架构效果最佳。为此,SPARC提供了大量的寄存器。后面会讲到SPARC的寄存器。
2.指令结构
一条指令有三个操作数(32位),操作数有两种:寄存器和立即数。
伪指令:有些指令如cmp, jmp