“21天养成好习惯”第一期—11

cpu

指令系统——指令中的寻址方式

寻址方式:指形成操作数地址或寻找操作数的方式

1条指令,可能会涉及多种寻址方式

1.常见的寻址方式

(1)立即寻址

指令中直接包含了操作数

用来提供偏移量、常数、设置初值等

 

指令功能: 

取指令后,直接截取指令中的低16位代码,就能立即得到真值为5的操作数。因此,得到5的方式就是立即寻址。

(2)直接寻址

指令中直接给出操作数的地址码。

存储单元地址(数在M中)

寄存器编号(数在R中)

主存直接寻址(绝对寻址)

 操作数:s=(D)

寄存器直接寻址

针对操作数在寄存器中的情况

 

(3)间接寻址

指令给出操作数的间接地址

存储单元地址(数在M中)

寄存器编号(数在M中)

一般只在CISC中使用,RISC中一般不用;

主存间接寻址

 

寄存器间接寻址

 

R的地址位数少,R可提供全字长地址码,修改R内容比M快。

指针不变(由指令指定),指针内容可变,使同一指令可指向不同存储单元,以实现程序的循环,共享,并提供转移地址。

堆栈间接寻址

 

(4)变址、基址寻址及其变化

变址寻址

指令给出一个寄存器号和一个地址量寄存器,内容与地址量之和为有效地址。

格式 

基址寻址

指令给出一个计算器号和一个地址量,寄存器内容与地址量之和为有效地址(二维数组的读写)

 

变址与基址的区别

有效地址=寄存器中的内容(R)+指令中的立即数(M)

 变址寻址:指令提供基准量,寄存器提供偏移量

基址寻址:指令提供偏移量,寄存器提供基准量

 基址+变址

指令给出两个计算器号和你的地址量,计算机内容与地址量之和为有效地址(处理三维数组)

便于处理三维数组

(5)pc相对寻址

指令给出偏移量,pc当前值与偏移量相加得到有效地址。

 

是一种特殊的基址寻址方式

有效地址相对于pc浮动,编程方便

(6)页面寻址

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值