操作数寻址

  操作数的寻址方式一共有8种

1. 立即寻址

  直接指出操作数的数据, 即操作数是立即数

MOV AX, 1200H

该指令中, 源操作数是1200H, 它是立即数, 这种寻址的方式就是立即寻址

2. 直接寻址 ( 存储器寻址 )

  指令中的操作数是存储器操作数

MOV AX, [3100H]

该指令中, 表示将内存里数据段中, 偏移地址是3100H单元和3101H单元的内容复制一份到寄存器AX中。

"[]" 内用16位上述表示存放数据的偏移地址, 数据的段基地址默认为数据段

段重设

段寄存器:[偏移地址]

MOV AX, ES:[1200H]

该指令中, 表示将内存里附加段中, 偏移地址是1200H单元和1201H单元的内容复制一份到寄存器AX中。

注意:
该种寻址方式中, 如果目标操作数是寄存器, 虽然 “[ ]” 中是16位, 但是具体复制的数据的字节数, 取决于目标操作数寄存器的字长, 如果是8位, 则复制一个单元, 如果是16位, 则复制两个单元。

3. 寄存器寻址

  指令中的两操作数均为寄存器

MOV AX, BX

该指令中, 表示将寄存器BX中的值复制到寄存器AX中

注意:
  两个寄存器的字长应该是一样的

4. 寄存器间接寻址(间址寄存器寻址)

  寄存器的内容是操作数的偏移地址

MOV AX, [SI]

该指令中, 表示将内存中 以寄存器SI中数据的值 为偏移地址的单元数据复制到AX寄存器中

规定, 在"[ ]"中的寄存器必须是间址寄存器, 仅有四个通用寄存器可为间址寄存器, BX BP SI DI

简单的说, 就是直接寻址的时候, 后面 “[ ]” 里的数被存放到了间址寄存器中, 实际上与直接寻址道理是一样的

5. 寄存器相对寻址(相对寻址)

  在寄存器间接寻址中, “[ ]” 加了一个位移量

MOV AX, [SI + 5]
MOV AX, [SI]5

该指令中, 表示 将内存中 以SI寄存器中数据的值加5后的值 为偏移地址的单元数据复制到AX寄存器中

6. 基址-变址寻址

  由一个基址寄存器(BX, BP)的内容和一个变址寄存器(SI, DI)的内容相加形成操作数的偏移地址

MOV BX, 1000H
MOV SI, 1000H
MOV AX, [BX][SI]

7. 基址-变址-相对寻址

  由一个基址寄存器(BX, BP)的内容、一个变址寄存器(SI, DI)的内容和一个偏移量相加形成操作数的偏移地址

MOV BX, 1000H
MOV SI, 1000H
MOV AX, [BX][SI]5 ==> MOV AX, [2000H]5 ==> MOV AX, [2005H]

8. 隐含寻址

有些指令的操作数为一个, 其实另一个是被隐藏了, 系统规定了另一个操作数所在的寄存器, 我们不能进行改变, 记住即可, 这种操作数隐藏的指令码的寻址方式, 就是隐含寻址

MUL BL

该指令, 是将AL中的内容与BL中的内容相乘, 结果放到AX寄存器中, 该指令中, AL寄存器没有说出来, 被隐藏了, 所以叫做隐含寻址, 实际上就是系统规定了寻址寄存器, 我们不能更改

8086指令系统中的寻址方式相关推荐

  1. 8086指令系统(8086基本知识点)

    目录 一.指令的寻址 1 操作数寻址 1.1 立即数寻址 1.2 寄存器寻址 1.3 直接寻址 1.4 寄存器间接寻址 1.5 寄存器相对寻址 1.6 隐含寄存器的操作数 2 指令地址寻址 二.808 ...

  2. EMU8086使用及8086指令系统(微机原理实验)

    目录 1. 实验要求 2. 实验目的 3. 实验代码及实验结果 1. 寻址方式:立即寻址 2. 寻址方式:直接寻址 3. 寻址方式:寄存器寻址 4. 寻址方式:寄存器间接寻址 5. 寻址方式:寄存器相 ...

  3. 微型计算机原理与接口技术——8086指令系统之数据传送指令

    8086指令系统之数据传送指令 前言 1.通用数据传送指令 一般传送指令MOV 指令格式 指令功能 MOV指令可实现以下各种传送 堆栈操作指令PUSH和POP 压栈指令 PUSH 指令格式 执行过程 ...

  4. 8086简单的指令流水线_在8086微处理器中执行流水线的指令和概念的步骤

    8086简单的指令流水线 Any computer or machine works according to some instructions. These instructions are re ...

  5. mcq 队列_MCQ | 8086微处理器中的字符串操作指令

    mcq 队列 Question 1: 问题1: A string is a collection of characters. Each Character is an of byte length ...

  6. 【Proteus仿真8086】往8086 内存中写入数据

    这部分内容参考这个博主 https://blog.csdn.net/TTTSEP9TH2244/article/details/122584312 微机原理与接口技术--Proteus仿真软件的使用方 ...

  7. 8086系统中 BHE# 和 A0 引脚

    8086系统中 BHE# 和 A0 引脚 8086的引脚 AD15 ~ AD0 为地址/数据总线,T1 时用作地址总线的低 16 位,其他时间用作数据总线 A19 ~ A16 / S6 ~ S3为地址 ...

  8. 8086汇编中mov,add,sub语法

    8086汇编中mov,add,sub语法 mov,add,sub三个都是两个操作数 几个必要的元素 1.数据 2.寄存器(指定一般寄存器) 3.段寄存器 4.内存单元 mov指令 mov 寄存器,数据 ...

  9. 计算机组成原理:指令系统指令格式与寻址方式

    目录 指令格式 寻址方式 指令格式 一.指令的一般格式 指令字:二进制的形式,由操作码和地址码构成 操作码:操作特性与功能 地址码:指定参与操做的操作数的地址 二.操作码 操作码字段的位数取决于指令系 ...

最新文章

  1. malloc calloc realloc的对比
  2. js 获取图片url的Blob值并预览
  3. php文件代码采用UTF-8编码的BOM问题---转自CSDN---十方地藏---http://blog.csdn.net/webdesman...
  4. tortoisesvn › prefer local prefer repository
  5. 改变服务器控件的显示属性,2.6.1 设置Style特性和其他属性
  6. 实验室服务器18.04LTS+RTX2080Ti+CUDA10.0+CUDAnn7.4+tf1.13装机之路
  7. OpenCASCADE:IGES 翻译器的介绍
  8. springboot socket服务端_从零开始学SpringBoot之Spring Boot WebSocket:编码分析
  9. Java 8:测试Lambda水
  10. 数据层优化-jdbc连接池简述、druid简介
  11. linux vnc离线安装包,Linux之部署vnc应用
  12. 华为HCNA之IPv6实验
  13. 根据点云及其对应的四元数与GPS计算出其相对坐标系的经纬坐标(matlab)
  14. 自动升降压PD快充方案 30W快充TYPE-C方案
  15. 小红书怎么点击查看大图_小红书图片如何调整呢?
  16. python书籍排行榜2020_2020年Python文章盘点,我选出了个人TOP10
  17. Android 图像处理软件
  18. @node-click的用途
  19. 在调试时出现:~处有未经处理的异常: 0xC0000005: 读取位置 0xcccccccc 时发生访问冲突
  20. [ACTF新生赛2020]easyre 1

热门文章

  1. windows2012R2安装python3.x版本报错0x80240017
  2. NUC970 SD卡驱动(SDIO)
  3. linux查看redis链接数,查看redis连接数
  4. 灵异问题,使用EasyConnect后,用navicat可以访问数据库,但是用Idea跑项目连接超时怎么办?
  5. 行业:美团将在快手开放平台上线美团小程序
  6. Stream流的学习
  7. html用图片代替color,Image Colorizer - 将黑白照片变为彩色照片在线工具
  8. 子库存-OU-库存组织-关系
  9. python新手入门指导_Python初学者入门指导,Python自学者的福音来了
  10. [车联网安全自学篇] Car Hacking之CAN总线初探