8086规定,在执行某种操作时,采用 的段奇存器有一个预先的约定。故指令中 般只需给出有关EA的信息,则CPU将能 够根据该次操作自动选用段寄存器,并与 EA一起形成物理地址 存储器寻址的实质就是如何形成有效 地址EA
8086规定,在执行某种操作时,采用 的段寄存器有一个预先的约定。故指令中 一般只需给出有关EA的信息,则CPU将能 够根据该次操作自动选用段寄存器,并与 EA一起形成物理地址。 存储器寻址的实质就是如何形成有效 地址EA
(1)直接寻址方式 指令中以偏移量方式直接给出操作数 的有效地址。即 EA=指令中给出的偏移量
(1) 直接寻址方式 指令中以偏移量方式直接给出操作数 的有效地址。即 EA=指令中给出的偏移量
例: MOV AX,[1234H 机器码:A13412 操作:把偏移量1234H作为EA,在数据 段中找到相应的字单元,再将字单元的内容 送AX
例:MOV AX,[1234H] 机器码:A1 34 12 操作:把偏移量1234H作为EA,在数据 段中找到相应的字单元,再将字单元的内容 送AX
MOV AX, 1234HI EA=1234H Al 本例执行完后, 34指令代码段 AX=3050H 12 设DS=3000H DS×16 =3000H×16 30000H—30000H +1234H EA=1234H 31234H 31234H50 数据段 30 3050AX AH AL
本例执行完后, AX=3050H EA=1234H 设DS=3000H 31234H +1234H EA=1234H 31234H 5360 7580 DS16 =30000H 30000H = 3000H×16 ... A1 34 12 ... ... 50 30 ... 指令 代码段 数据段 AH AL AX MOV AX, [1234H]
注 a.直接寻址的操作过程与立即寻址不同。 为表示它们的区别,直接寻址的偏移量用 对“[1”表示。 立即寻址: MOVAX,1234H 直接寻址: MOV AX,[1234H b.段基值乘以16,相当于段基值(二进 制表示)左移4位,或段基值(十六进制 表示)在末尾添一个0H
a. 直接寻址的操作过程与立即寻址不同。 为表示它们的区别,直接寻址的偏移量用一 对 “[ ]”表示。 立即寻址:MOV AX,1234H 直接寻址:MOV AX,[1234H] b. 段基值乘以16,相当于段基值(二进 制表示)左移4位,或段基值(十六进制 表示)在末尾添一个0H。 注: