安徽理工大学计算机科学与技术系李歌兆《汇编语言》 在通常情况下,操作教存放在教据段中,所以,其物狸地 址将由数据段寄存器DS和指令中给出的有效地址直接形成,但 如果使用段超越前缀,那么,操作數可存放在其宅段。 例如:MOVE:[1000H],AX 注意:立即寻址方式和直接寻址方式的书写格式不同,直接寻 址的地址要写在括号“[”,“]”内。在程序中,直接地址通常 用内存变量名来表示,如: MOVBX,VARW,其中,VARW是 内存字变量。 试比较下列指令中娠操作教的寻址方式(VARW是内存字 变量) MOAX,1234 H MOV AX,1234H前者是立即寻址,后者是直接寻址 MOV AX, VARW MOV AX,|VARw两者是等效的,均为直接寻址
安徽理工大学 计算机科学与技术系 李敬兆 《汇编语言》 在通常情况下,操作数存放在数据段中,所以,其物理地 址将由数据段寄存器DS和指令中给出的有效地址直接形成,但 如果使用段超越前缀,那么,操作数可存放在其它段。 例如:MOV ES:[1000H],AX 注意:立即寻址方式和直接寻址方式的书写格式不同,直接寻 址的地址要写在括号“[” , “]”内。在程序中,直接地址通常 用内存变量名来表示,如:MOV BX, VARW,其中,VARW是 内存字变量。 试比较下列指令中源操作数的寻址方式(VARW是内存字 变量): MOV AX, 1234H MOV AX, [1234H] 前者是立即寻址,后者是直接寻址 MOV AX, VARW MOV AX, [VARW] 两者是等效的,均为直接寻址
安徽理工大学计算机科学与技术系李歌兆《汇编语言》 4.寄存器间接寻址方式 定义:操作数在存储器中,操作数的有效地址用S|、Dl BX和BP等四个寄存器之一来指定,称这种寻址方式为寄存 器间接寻址方式 汇编格式:R 功能:操作数存放在存储器,寄存器R存放操作数的偏移 地址EA。 图形表示: 段基地址 指令 寄存器 存储器 基址或变址寄存器 EA 操作数
安徽理工大学 计算机科学与技术系 李敬兆 《汇编语言》 4. 寄存器间接寻址方式 定 义:操作数在存储器中,操作数的有效地址用SI、DI、 BX和BP等四个寄存器之一来指定,称这种寻址方式为寄存 器间接寻址方式。 汇编格式:[R] 功 能:操作数存放在存储器,寄存器R存放操作数的偏移 地址EA。 图形表示: EA 寄存器 操作数 存储器 + 段基地址 基址或变址寄存器 指令
要徽理工大骨计算机科学与技术系李歌池《汇编语言》 【例34】假设有指令: MOV BX,[D,在执行时,(DS) =1000H,(DI)=2345H,存储单元12345H的内容是4354H。问 执行指令后,BX的值是什么? 解:寄存器D的值不是操作数,而是操作数的地址。 该操作数的物理地址应由DS和D的值形成,即:CS十 PA=(DS)*16+D上=1000H*16+2345H=12345H 所以,该指令的执行效果是 OP 把从物理地址为12345H开始的 个字的值传送给BX DS:1000H +DI:2345H 12345H BX 10000H 4354 12345H54H 43H
安徽理工大学 计算机科学与技术系 李敬兆 《汇编语言》 【例3.4】假设有指令:MOV BX, [DI],在执行时,(DS) =1000H,(DI)=2345H,存储单元12345H的内容是4354H。问 执行指令后,BX的值是什么? 解:寄存器DI的值不是操作数,而是操作数的地址。 该操作数的物理地址应由DS和DI的值形成,即: PA=(DS)*16+DI=1000H*16+2345H=12345H。 所以,该指令的执行效果是: 把从物理地址为12345H开始的 一个字的值传送给BX。 … OP … ~~ ~~ … CS→ DS→ 54H 43H 10000H 12345H DS:1000H +DI:2345H 12345H 43 54 BX
安骰理工大学计算机科学与技术系李兆 《汇编语言》 在不使用段超越前缀的情况下,有下列规定: ◆若有效地址用SⅠ、D和BX等之一来指定,则其缺省的段寄存 器为DS; 若有效地址用BP来指定,则其缺省的段寄存器为SS(即:堆 栈段)。 该寻址方式物理地址的计算方法如下: BX 物理地址PA=16×DS+SI DI 或 物理地址PA=16×DS+BP
安徽理工大学 计算机科学与技术系 李敬兆 《汇编语言》 在不使用段超越前缀的情况下,有下列规定: ❖若有效地址用SI、DI和BX等之一来指定,则其缺省的段寄存 器为DS; ❖若有效地址用BP来指定,则其缺省的段寄存器为SS(即:堆 栈段)。 该寻址方式物理地址的计算方法如下: BX 物理地址PA=16×DS + SI DI 或 物理地址PA=16×DS+ BP
安徽理工大学计算机科学与技术系李歌兆《汇编语言》 5.寄存器相对寻址方式 定义:操作数在存储器中,其有效地址是一个基址寄存器 (BX、BP)或变址寄存器(Sl、D)的内容和指令中的8位/16 位偏移量之和。 汇编格式:X[R](X表示位移量,是8位或16位二进制补码表示 的有符号数) 功能:操作数存放在存储器,寄存器R的内容加位移量X为 操作数的偏移地址EA。 图形表示如下: 指令 段基地址 基址或变址寄存器位移量 存储器 EA 操作数 寄存器 地址
安徽理工大学 计算机科学与技术系 李敬兆 《汇编语言》 5. 寄存器相对寻址方式 定 义:操作数在存储器中,其有效地址是一个基址寄存器 (BX、BP)或变址寄存器(SI、DI)的内容和指令中的8位/16 位偏移量之和。 汇编格式:X[R](X表示位移量,是8位或16位二进制补码表示 的有符号数) 功 能:操作数存放在存储器,寄存器R的内容加位移量X为 操作数的偏移地址EA。 图形表示如下: 地址 寄存器 操作数 存储器 + 段基地址 基址或变址寄存器 位移量 指令 + EA