汇编语言问题

2025-12-18 00:37:26
推荐回答(3个)
回答1:

嘿嘿 俺来帮你看看
1 汇编指令 MOV AX[1352H]
功能: 就是将有效地址为1352H的数据段的存储器单元的数据传送给累加器
寻址方式: 源操作数[1352H]为直接寻址 目地操作数AX为寄存器寻址 为16为操作数
2 根据 源操作数 的有效地址求其物理地址:
PA=DS*16+EA=10000H+1352H=11352H
然后根据这个地址 将低8位数据(11352H)=0FFH送寄存器的低8位AL
将高8位数据(11353H)=26H 送寄存器的高8位AH
3 AX=AH+AL=26FFH .
呵呵 明白 就给加分喽

回答2:

1.x86在实地址的存储器寻址,是没有进行分页分段,而是把逻辑地址进行简单的线性变换求得物理地址的;
2.在没有指定段基地址寄存器的情况下,数据指令操作默认DS作为段基地址寄存器
所以指令MOV AX[1352H]
3.转换公式是:段地址乘以16加上偏移地址(详细信息可以参考微机原理的实地址方式的寻址章节)

所以 可用PA=DS*16+EA=10000H+1352H=11352H求出物理地址
AX代表的16位的操作,根据大端存储模式把连续的16位数据,即(11352H (11353H)中的数据

26FFH存入寄存器EA

回答3:

PA=DS*16+EA=10000H+1352H=11352H
由段基地址及偏移量,得出物理地址/有效地址
(11352H)=0FFH
(11353H)=26H
基于假设,8086、80X86的大尾处理方式及上一步结论。
AX=26FFH