8086存储器组织以及操作数寻址方式

您所在的位置:网站首页 计算机中存储单元中存储的内容 8086存储器组织以及操作数寻址方式

8086存储器组织以及操作数寻址方式

2024-06-30 17:02| 来源: 网络整理| 查看: 265

8086某些引脚功能

时钟周期:时钟周期是CPU的基本时间计量单位,由CPU主频决定,数值上等于CPU主频的倒数。一个时钟周期又称为一个T状态,因此基本总线周期可以用T1、T2、T3、T4表示。 ALE:地址锁存信号,T1结束的时候,电平由高跳变至低,将地址锁存起来,由地址锁存器给CPU提供地址,T1时ALE为高电平:AB有效。 BHE非/S7:高8位总线允许信号,低,表示高8位有效,高,表示低8位有效。 DT/R(非):数据传送方向,高:CPU输出,低:CPU输入。

8086存储器组织

8086有20根地址线,可以配置1MB的内存储器。每个存储单元存储一个字节(8位)数据,若要存储一个字,则将其存放在两个相邻的存储单元中,高字节存放在高地址单元中,低字节存放在低地址单元中。每个存储单元由20位地址,1M个存储单元对应的地址为00000H~FFFFFH。 一个存储单元存放的信息称为该单元的内容,表示为:(00001)=9FH;含义是地址为10001的存储单元存放的数据是9FH;MOV AL,[0001](假设地址从0开始)。如果从地址为0011FH开始的连续的两个存储单元存放的字型数据为DF46H,记为(0011F)=DF46H;MOV AX,[0011F]

8086指令系统的寻址方式 定义:寻找操作数存放地址的方法。 4种操作数:

(1)立即数操作数:操作数包含在指令字节中。即指令格式中操作数部分就是操作数本身。 (2)寄存器操作数:操作数存放在CPU的某个内部寄存器中。 (3)存储器操作数:操作数在内存的数据区中。 (4)I/O端口操作数:操作数来自或送到I/O端口。 操作数可分为数据操作数和地址操作数,因此寻址方式也分为数据寻址方式和地址寻址方式。

4种操作数寻址方式: (1)立即数寻址方式

#指令中的操作数直接存放在机器代码中,紧跟在操作码之后(操作数作为指令的一部分存放在操作码之后的主存单元中); #可以是8位数值(00H~FFH) 也可以是16位数值(0000H~FFFFH); #立即数寻址方式常用来给寄存器和存储单元赋值,多以常量形式出现。例:MOV AX,1234H;源操作数寻址方式即为立即数寻址方式。 在这里插入图片描述

(2)寄存器寻址方式

#操作数存放在CPU内部寄存器中: 8位寄存器:AH,AL,BH,BL,CH,CL,DH,DL 16位寄存器:AX,BX,CX,DX,SI,DI,BP,SP 4个段寄存器:CS,DS,DS,SS,ES #寄存器名表示其内容(操作数) 例如:MOV AX,CX 在这里插入图片描述

(3)I/O端口寻址方式

#直接端口寻址方式:当端口地址小于等于FFH时,直接给出端口地址,例:IN AL,21H;注意,此时21H是端口地址,而不是立即数。在这里插入图片描述 #间接端口寻址方式:当端口地址大于FFH时,将端口地址先送到DX中,然后再进行操作。例: MOV DX,1234H OUT DX,AL 在这里插入图片描述

(4)存储器寻址方式

#操作数存放在存储器单元中,要存取操作数就必须知道其存储器的单元地址,在指令中可直接或间接给出操作数的地址。指令中给出的地址只是有效地址,由“[]”括起来。若要从存储器中存取操作数必须知道其物理地址。物理地址=(AS/BS/CS/DS×10H+偏移地址(物理地址=段基址×10H+有效地址)。 #有效地址可以由以下3种地址分量构成:位移量:存放在指令中的一个8位或16位数值;基址:存放在基址寄存器BX或BP中的内容;变址:存放在变址寄存器SI或DI中的内容。 a:直接寻址方式:有效地址在指令中直接给出,例:MOV AX,[2000H],默认的段地址在DS寄存器,[2000H]表示在内存中数据段段寄存器中偏移地址为2000H存储单元的内容,其物理地址为:DS×10H+2000H;MOV AX,ES:[2000H]表示内存中附加数据段中偏移地址为2000H存储单元中的内容送到AX中,其物理地址为:ES×10H+2000H。 例:MOV AL,[1064H]在这里插入图片描述

b:寄存器间接寻址 #有效地址存放在基址寄存器BX、BP或变址寄存器SI、DI中 #段地址对应的BX/SI/DI寄存器默认是DS,对应BP寄存器默认是SS;可用段超越前缀改变。 例:MOV AX,[SI] 在这里插入图片描述 c:寄存器相对寻址方式 #有效地址是寄存器内容与有符号数8位或16位位移量之和,寄存器可以是BX/BP/SI/DI 有效地址=BX/BP/SI/DI+8/16位位移量 #段地址对应BX/SI/DI寄存器默认是DS,对应BP寄存器默认是SS;可用段超越前缀改变。 例:MOV CL,[BX+1064H] 在这里插入图片描述 d:基址加变址寻址方式 #有效地址由基址寄存器(BX/BP)的内容加上变址寄存器(SI/DI)的内容构成;有效地址=BX/BP+SI/DI #段地址对应BX基址寄存器默认是DS,对应BP基址寄存器默认是SS;可用段超越前缀改变。 例:MOV AH,[BP] [SI] (SS*10H+BP+SI)在这里插入图片描述 e:基址加变址相对寻址 #有效地址是基址寄存器(BX/BP)、变址寄存器(SI/DI)与一个8位或16位位移量之和; 有效地址=BX/BP+SI/DI+8/16位位移量 #段地址对应BX基址寄存器默认是DS,对应BP基址寄存器默认是SS;可用段超越前缀改变。 例:MOV [BX+DI+1234H],AH 在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3