一、总览

二、偏移寻址

  1. 基址寻址:将CPU中基址寄存器(BR)的内容加上指令格式中的形式地址A,而形成操作数的有效地址,即EA=(BR)+A

    注:基址寄存器是面向操作系统的,其内容由操作系统或管理程序确定。在程序执行过程中,基址寄存器的内容不变(作为基地址),形式地址可变(作为偏移量)。
    当采用通用寄存器作为基址寄存器时,可由用户决定哪个寄存器作为基址寄存器,但其内容仍由操作系统确定
    优点:可扩大寻址范围(基址寄存器的位数大于形式地址A的位数);用户不必考虑自己的程序存于主存的哪一空间区域,故有利于多道程序设计,以及可用于编制浮动程序。
  2. 变址寻址
    变址寻址:有效地址EA等于指令字中的形式地址A与变址寄存器lX的内容相加之和,即EA=(IX)+A,其中X为变址寄存器(专用),也可用通用寄存器作为变址寄存器。

    注:变址寄存器是面向用户的,在程序执行过程中,变址寄存器的内容可由用户改变(作为偏移量),形式地址A不变(作为基地址)。
    优点:可扩大寻址范围(变址寄存器的位数大于形式地址A的位数);在数组处理过程中,可设定A为数组的首地址,不断改变变址寄存器lX的内容,便可很容易形成数组中任一数据的地址,特别适合编制循环程序
  3. 相对寻址
    相对寻址:把程序计数器PC的内容加上指令格式中的形式地址A而形成操作数的有效地址,即EA=(PC)+A,其中A是相对于当前指令地址的位移量,可正可负,补码表示。

    优点:操作数的地址不是固定的,它随着PC值的变化而变化,并且与指令地址之间总是相差一个固定值,因此便于程序浮动。相对寻址广泛应用于转移指令

相对寻址举例:
某机器指令字长为16位,主存按字节编址,取指令时,每取一个字节PC自动加1。当前指令地址为2000H,指令内容为相对寻址的无条件转移指令,指令中第一个字节为操作码,第二个字节为形式地址,当前形式地址为40H。
(1)求取指令后及指令执行后PC内容。
(2)若要求转移到1F00H,求形式地址的内容。

三、总结

指令系统——数据寻址(2)(详解)相关推荐

  1. [转载]用数据说话 Pytorch详解NLLLoss和CrossEntropyLoss

    [转载]用数据说话  Pytorch详解NLLLoss和CrossEntropyLoss https://www.cnblogs.com/jiading/p/11979391.html NLL_Los ...

  2. Python数据科学-技术详解与商业实践视频教程

    Python数据科学-技术详解与商业实践(八大案例) 网盘地址:https://pan.baidu.com/s/13QrR_5Er6LgWCWzSb7qOrQ 提取码:s7vw 备用地址(腾讯微云): ...

  3. android json mysql_Android通过json向MySQL中读写数据的方法详解【读取篇】

    本文实例讲述了Android通过json向MySQL中读取数据的方法.分享给大家供大家参考,具体如下: 首先 要定义几个解析json的方法parseJsonMulti,代码如下: private vo ...

  4. java编程数据溢出问题_Java数据溢出代码详解

    Java数据溢出代码详解 发布时间:2020-10-05 15:08:31 来源:脚本之家 阅读:103 作者:Pony小马 java是一门相对安全的语言,那么数据溢出时它是如何处理的呢? 看一段代码 ...

  5. java 分割数据_java 分割csv数据的实例详解

    java 分割csv数据的实例详解 实际需要解析的csv中很多都是从excel中转过来的,数据中本身包含了逗号的数据导致split的过程中发现数据对不上,因此,基于这种特性,重新写了一个csv数据的分 ...

  6. c语言 recv_sin,C++_C语言中经socket接收数据的相关函数详解,recv()函数: 头文件:#incl - phpStudy...

    C语言中经socket接收数据的相关函数详解 recv()函数:头文件: #include #include 定义函数: int recv(int s, void *buf, int len, uns ...

  7. 负载均衡原理与实践详解 第五篇 负载均衡时数据包流程详解

    负载均衡原理与实践详解 第五篇 负载均衡时数据包流程详解 系列文章: 负载均衡详解第一篇:负载均衡的需求 负载均衡详解第二篇:服务器负载均衡的基本概念-网络基础 负载均衡详解第三篇:服务器负载均衡的基 ...

  8. python数据科学课后答案_Python数据科学-技术详解与商业实践-第五讲作业

    作者:Ben,著有<Python数据科学:技术详解与商业实践>.<用商业案例学R语言数据挖掘>.<胸有成竹-数据分析的SAS EG进阶>作者.2005年进入数据科学 ...

  9. 阿里云物联网平台-数据解析脚本详解

    阿里云物联网平台-数据解析脚本详解 var COMMAND_REPORT = 0x00; //属性上报. var COMMAND_SET = 0x01; //属性设置. var COMMAND_REP ...

  10. Discuz3.数据库数据表字典详解(完整版)

    Discuz3.数据库数据表字典详解(完整版) 转自:https://discuzt.cr180.com/discuzcode-db.html pre_common_admincp_cmenu后台菜单 ...

最新文章

  1. FuseSeg:用于自动驾驶领域的RGB和热成像数据融合网络
  2. 多用户使用一台计算机可设置,《计算机应用基础》试卷(A)
  3. linux c++ 函数 查看,在C++ man pages中查询C++的函数
  4. 326. Power of Three
  5. 微软或在开发自己的 CPU、TikTok 发布电视版本、索尼撤下《赛博朋克2077》并为玩家退款|Decode the Week...
  6. vs code打开文件显示的中文乱码
  7. 第二篇:Dapper中的一些复杂操作和inner join应该注意的坑
  8. 使用SpringBoot yml配置文件
  9. 面试官系统精讲Java源码及大厂真题 - 48 一起看过的 Java 源码和面试真题
  10. Java对象运行时在内存中的情况
  11. java 流 存放在哪_java IO流学习
  12. c语言操作access数据类型,2016计算机二级《ACCESS》基本操作题及答案
  13. 通过channel进行goroutine间的通信
  14. pppoe拨号中的server name和service name
  15. 集合字典序(优先队列)
  16. 哪款软件可以测试网速上行,怎么测试自己宽带的上行速度(查询上下行宽带方法)...
  17. mysql proxy maxscale_maxscale参数配置
  18. 电子合同助力“在线教育”高效发展
  19. android 华为 imei,华为手机EMUI系统查看S/N IMEI/MEID 产品识别码的方法
  20. 网站加速教程--提升性能的同时节约10倍成本

热门文章

  1. kafka 日志相关配置
  2. ultilize什么意思_ultilize是什么意思
  3. Djang重新整理migrations,解决:Django Table xxx already exist
  4. MySQL数据库重点概要总结
  5. php 获取delete蚕丝_php结合Redis实现100万用户投票项目,并实时查看到投票情况的案例...
  6. ioread32函数有关知识
  7. C# Socket 编程详解
  8. android:layout 冒号,android-json解析及简单例子(补汉6个汉字字).pdf
  9. 一些自己编写的字符串操作函数
  10. 百度前端技术学院,学习第一天。