计算机组成原理
指令系统
-
指令集体系结构(ISA)
ISA规定的内容主要包括:
- 指令格式,指令寻址方式,操作类型,以及每种操作对应的操作数的相应规定
- 操作数的类型,操作数寻址方式,以及是按大段方式还是小端方式
- 程序可访问的寄存器编号、个数和位数,存储空间的大小和编址方式
- 指令执行过程的控制方式等,包括程序计数器、条件码定义等
-
指令的基本格式
操作码字段 地址码字段 定长指令字结构,变长指令字结构。主存一般是按字节编址的,所以指令字长通常为字节的整数倍。
-
零地址指令
OP -
一地址指令
OP $A_1$ -
二地址指令
OP $A_1$ $A_2$ -
三地址指令
OP $A_1$ $A_2$ $A_3$(结果) -
四地址指令
OP $A_1$ $A_2$ $A_3$(结果) $A_4$(下址)
-
-
定长操作码指令格式
-
扩展操作码指令格式
-
指令的操作类型
- 数据传送MOV,LOAD,STORE,PUSH,POP
- 算数和逻辑运算ADD,SUB,MUL,DIV,INC,DEC,AND,OR,NOT,XOR
- 移位操作
- 转移操作JMP,BRANCH,CALL,RET,TRAP
- 输入输出操作
指令的寻址方式
-
指令寻址和数据寻址
-
指令寻址
- 顺序寻址PC+1
- 跳跃寻址
-
数据寻址
操作码 寻址特征 形式地址A
-
-
常见的数据寻址方式
- 隐含寻址
- 立即(数)寻址
- 直接寻址
- 间接寻址
- 寄存器寻址EA=$R_i$
- 寄存器间接寻址
- 相对寻址
- 基址寻址
- 变址寻址
- 堆栈寻址
寻址方式 有效地址 访存次数 立即寻址 A即是操作数 0 直接寻址 EA=A 1 一次性间接寻址 EA=(A) 2 寄存器寻址 EA=$R_i$ 0 寄存器间接一次寻址 EA=($R_i$) 1 相对寻址 EA=(PC)+A 1 基址寻址 EA=(BR)+A 1 变址寻址 EA=(IX)+A 1