您的位置:首页 > 其它

IBM-PC汇编_寻址方式

2014-12-04 01:00 176 查看
与数据有关的寻址方式
一、立即寻址方式:操作数直接放在指令中
MOV AL,5
执行后,(AL)=05H

二、寄存器寻址方式:操作数放在寄存器中
对于16位的操作数:AX,BX,CX,DX,SI,DI,SP,BP
对于8位的操作数:AL,AH,BL,BH,CL,CH,DL,DH
MOV AX,BX

下述寻址方式即为求得有效地址(EA)的不同途径
有效地址的组成:EA = 基址 + (变址 * 比例因子)+位移量

位移量:存放在指令中的一个8位、16位或32位的数,但它不是立即数,而是一个地址
基址:存放在基址寄存器中的内容。它是有效地址中的基址部分,通常用来数据段中数组或字符串的首地址
变址:存放在变址寄存器中的内容。通常用来访问数组中的某个元素或字符串中的某个字符
比例因子
基址:BI、BX

变址:DI、SI

跨越前缀的使用限制

串处理指令的目的串必须用ES
PUSH指令的目的和POP指令的源必须用SS段
指令必须存放在CS段中

三、直接寻址方式:有效地址只有位移量一种成分
MOV AX,[2000H]
如果(DS)=3000H
根据实模式寻址方式来找到相应地址的值
即:相应的地址为:32000



四、寄存器寻址方式:有效地址只有基址(BP、BX)或变址(DI、SI)一种成分
MOV AX,[BX]
如果(DS) = 2000H,(BX) = 1000H
则物理地址 = 20000 + 1000 = 21000H

五、寄存器相对寻址方式:操作数的有效地址为基址或变址寄存器的内容和指令中指定的位移量之和
MOV AX,COUNT[SI]/[COUNT+SI]
如果(DS)=3000H,(SI)=2000H,COUNT = 3000H
则物理地址 = 30000 + 2000 + 3000 = 35000H

六、基址变址寻址方式:有效地址为基址和变址的和
MOV AX,[BX][DI]/[BX+DI]
七、相对基址变址寻址方式:有效地址为基址与变址的内容和指令中指定的位移量之和
MOV AX,MASK[BX][SI]/MASK[BX+SI]/[MASK+BX+SI]
八、比例寻址方式

与转移地址有关的寻址方式
一、段内直接寻址方式:转向有效地址是当前IP寄存器的内容和指令中指定的8位或16位位移量之和
这是相对与IP值得位移量来表示,所以是相对寻址方式
适用于:条件转移及无条件转移
            条件转移:8位
            无条件转移:8位(短跳转)和16位(近跳转)
JMP NEAR PTR PROGIA(符号地址,近跳转)
JMP SHORT QUEST(符号地址,短跳转)

二、段内间接寻址:有效地址是寄存器或一个存储单元的内容
此内容可以用数据寻址方式中除立即数以外的任何一种寻址方式取得,所得到的转向的有效地址用来取代IP寄存器的内容
JMP BX
JMP WORD PTR[BP+TABLE]

实例:
假设:(DS) = 2000H,(BX) = 1256H,位移量 = 20A1H,(232F7H) = 3280H
JMP TABLE[BX]
结果:(IP) = (16d*(DS))+(BX)+位移量)
                 =(20000+1256+20A1) = (232F7) = 3280H
解释:首先,段内寻址是放在IP寄存器中,所以执行完段内寻址,结果都是在IP寄存器中
           类比到数据寻址方式,找出相应的物理地址,首先,段基址为DS,乘16,即对应16进制向左移一位,右边用0补上
            相加后,找到相应的题目中给定了的值
----------------------------------------------------------------------------------
以上两种是段内转移,所以直接把求得的转向的有效地址送到IP寄存器就可以了
----------------------------------------------------------------------------------

三、段间直接寻址:直接提供了转向段地址和偏移地址,偏移地址取代IP,段地址取代CS
JMP FAR PTR NEXTROUTINT
NEXTROUTINT(转向的符号地址),FAR PTR(段间转移的操作符)

四、段间间接寻址:两个相继字的内容来取代IP和CS寄存器中的原始内容
JMP DWORD PTR[INTERS+BX]
[INTERS+BX]数据寻址方式为直接变址寻址方式, DWORD
PTR为双子操作符,说明转向地址需取双字为段间转移指令
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: