寻址方式

寻址方式(产生操作数的有效地址)
1、直接寻址:
指令直接给操作数(立即数),存放方式有两种:操作数包含在指令中、和指令后
2、主存直接寻址:
指令直接给出操作数的有效主存地址,根据该地址从主存储器中读取写入操作数

优点:简单直观,便于硬件实施,适用于寻找地址固定的操作数
缺点:①只能访问某个固定主存单元,想多处重复利用就受限了、②指令需给出全字长地址码,导致指令长度很长

3、寄存器直接寻址:指令给出寄存器号,操作数实际存储在指定编号的寄存器,其中可编程访问的是通用寄存器
寄存器号→操作数
优点:减少指令中地址位的宽度,提高cpu工作效率
4、主存间接寻址:
操作数存放在某个主存单元,操作数地址又放在另一单元,该主存单元被称为间址单元,间址单元的地址(操作数地址的地址)
间址单元地址→操作数地址→操作数
优:支持程序循环性,实现程序共享
缺:增加访存次数,严重拖慢CPU执行指令的速度
在这里插入图片描述

5、寄存器间接寻址:指令给出寄存器号,寄存器存放操作数有效地址,按照地址访问主存,读取写入操作数,操作数加一
在这里插入图片描述
优:让寄存器充当地址指针,比主存中读取有效地址及修改主存单位内容快很多

6、变址寻址:
寄存器内容作偏移量,形式地址为基准地址
在这里插入图片描述
有效地址=形式地址+变址量
例:某计算机主有容量为2 GB,目标数据大小为512B,可存放主存任意区域,则形式地址应有多少位?偏移量多少位?
2gb = 21*230
512=29
故形式地址31位,偏移量(变址量)为9

7、基址寻址方式:与上面不同的是,寄存器中的内容作为基准地址,形式地址为偏移量

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值