分别说明下列各指令中源操作数和目的操作数使用的寻址方式.
1.ADDAX,0A51H2.MOVBL,DATA13.MOVDS,AX4.ANDAL,VAR1+25.ORARRY[BX],-16.TEST[SI],CL7.SUBDS...
1.ADD AX,0A51H
2.MOV BL,DATA1
3.MOV DS,AX
4.AND AL,VAR1+2
5.OR ARRY[BX],-1
6.TEST [SI],CL
7.SUB DS:[01FEH],DX
8.ADC [BP][DI],BH
9.AND CX,-19[BX][SI]
10.PUSH ES
11.CLC(清除进位标志)
请各位帮忙写出各操作数的寻址方式,最好再解析一下(阐明原因和依据)!在下表示感谢! 展开
2.MOV BL,DATA1
3.MOV DS,AX
4.AND AL,VAR1+2
5.OR ARRY[BX],-1
6.TEST [SI],CL
7.SUB DS:[01FEH],DX
8.ADC [BP][DI],BH
9.AND CX,-19[BX][SI]
10.PUSH ES
11.CLC(清除进位标志)
请各位帮忙写出各操作数的寻址方式,最好再解析一下(阐明原因和依据)!在下表示感谢! 展开
1个回答
展开全部
1.寄存器寻址,立即数
AX是寄存器,0A51H是个数(立即数)
2.寄存器,直接寻址
DATA1是个内存地址
3.寄存器,寄存器
4.寄存器,直接寻址
VAR1是个内存地址,
这个不太确定
5.变址寻址,立即数
ARRAY是个内存地址,BX是索引
6.间接寻址,寄存器
方括号[]扩起来,表示SI指向的内存单元
7.这个不知道````
8.基址变址寻址,寄存器
BP是基址寄存器.
9.没见过
10. 不知道...
11.隐含寻址
操作数隐含了.
操作数是flags寄存器. 把它里面的d0位(进位标志位)清零
水平有限````不好意思了
AX是寄存器,0A51H是个数(立即数)
2.寄存器,直接寻址
DATA1是个内存地址
3.寄存器,寄存器
4.寄存器,直接寻址
VAR1是个内存地址,
这个不太确定
5.变址寻址,立即数
ARRAY是个内存地址,BX是索引
6.间接寻址,寄存器
方括号[]扩起来,表示SI指向的内存单元
7.这个不知道````
8.基址变址寻址,寄存器
BP是基址寄存器.
9.没见过
10. 不知道...
11.隐含寻址
操作数隐含了.
操作数是flags寄存器. 把它里面的d0位(进位标志位)清零
水平有限````不好意思了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询