【计算机组成原理】指令系统(三)—— 指令寻址与数据寻址

本文详细介绍了指令寻址的顺序寻址和跳跃寻址,以及数据寻址的多种方式,包括隐含、立即、直接、间接、寄存器、寄存器间接、相对、基址和变址寻址。同时,探讨了堆栈寻址的硬堆栈与软堆栈区别,并对比了CISC和RISC指令集的特点。

一、指令寻址

指令寻址:下一条欲执行指令的地址(始终由程序计数器PC给出)。

在这里插入图片描述

指令寻址最主要的就是确定 PC 的值,其在不同的情况下的计算是不同的,不能仅仅使用 PC = ( PC ) + 1 计算。根据编址方式的不同或者指令长度的不同,可能是加2也可能直接赋一个值。

顺序寻址

  • PC = ( PC ) + 1 的情况

在这里插入图片描述

  • PC = ( PC ) + 2 的情况

在这里插入图片描述

  • PC = ( PC ) + n 的情况

采用变长指令字结构时,读入一个字,根据操作码判断这条指令的总字节数 n,修改PC的值。

在这里插入图片描述

跳跃寻址

跳跃寻址: 由转移指令指出 PC 的值

在这里插入图片描述

分析:执行完序号3的指令时,此时 PC 的值为4,指向图中蓝色方框的指令。但是使用 转移指令JMP 后,PC 的值变为 7, 指向的指令为序号为7的指令:‘LDA 1100’

指令寻址总结

在这里插入图片描述

二、数据寻址

数据寻址:确定 本条指令的地址码指明的真实地址

在这里插入图片描述

数据寻址有如上图所示方式,为了标识数据寻址的方式,在指令结构中增加了 寻址方式位 这一字段。

在这里插入图片描述

在这里插入图片描述

(一)、六种简单寻址

1. 隐含寻址

隐含寻址:不是明显地给出操作数的地址,而是在指令中隐含着操作数的地址 。

在这里插入图片描述

优点:有利于缩短指令字长
缺点:需增加存储操作数或隐含地址的硬件。

2. 立即寻址

立即寻址:形式地址A就是操作数本身,又称为立即数,一般采用补码形式

一条指令的执行:取指令 访存1次;执行指令 访存0次;暂不考虑存结果共访存1次。

优点:指令执行阶段不访问主存,指令执行时间最短。
缺点:A 的位数限制了立即数的范围。如 A 的位数为 n,且立即数采用补码时,可表示的数据范围为 − 2 n − 1 ~ 2 n − 1 − 1 -2^{n-1}~2^{n-1}-1 2n1</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

何为xl

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值