计算机组成原理——指令体系
指令结构
指令的分类
1次访存
2次访存
4次访存
扩展操作码
指令寻址
指令寻址和编码方式有关
定长之指令结构
变长指令,通过读取第一个字节在判断指令长度
无条件转移指令
数据寻址
六种普通寻址方式
直接寻址
有效地址就是真实地址
间接寻址方式
存储的是数据地址的地址
寄存器寻址
操作数在寄存器里面
寄存器间接寻址
寄存器里面存放的是操作数的地址
隐含寻址
地址不是明显的给出
立即寻址
操作数会直接放在指令中,这种操作数被称为立即数
三种偏移寻址
基址寻址
根据基址寄存器作为基地址,在根据基地址和数据码求和得到真实的地址,也可以用通用寄存在来存放这个基地址,每个程序的位置都是不定的,在程序移动的时候基地址也会改变,这样不论程序在什么位置都这个操作码都能指向正确的地址
基址寄存器的值不由人为控制,完全面向操作系统
变址寻址
变址寄存器和基址寄存器的原理一模一样,都是地址码加上寄存器的值得到真实地址,唯一的区别是变址寄存器可以人为的指定,且地址码作为基地址而寄存器里面的值作为偏移量。
基址寻址&变址复合寻址
相对寻址
通过程序和数据的分段可以很好的解决程序内代码移动造成的数据位置改变的问题。相对寻址又可以解决跳转指令因为代码移动而给改变的问题。
堆栈寻址
硬堆栈;用寄存器存储
软堆栈:用内存存储
总结
# CISC和RISC