己知(DS)=3000H,(BX)=1470H,(31470H)=12H,(31471H)=36H(30600H)=52H(30601H)=57H。指出下列指令单独执行后AX 寄存器的内容,寻址方式:指出(2)(3)小题中源操作数的物理地址。 (I) MOV AX, 1067H (3) MOV AX,[0600H] (2) MOV AX,[BX] (4) MOV AX,BX
时间: 2024-04-01 10:31:15 浏览: 168
根据题目中给出的信息,可以得到:
- DS = 3000H
- (BX) = 1470H
- (31470H) = 12H
- (31471H) = 36H
- (30600H) = 52H
- (30601H) = 57H
根据这些信息,可以回答问题:
1. 执行指令 MOV AX, 1067H 后,AX 寄存器的内容为 1067H。
2. 执行指令 MOV AX, [BX] 后,源操作数的物理地址为 DS:BX,即 301470H。
3. 执行指令 MOV AX, [0600H] 后,源操作数的物理地址为 DS:0600H,即 30600H。
4. 执行指令 MOV AX, BX 后,AX 寄存器的内容为 BX 的值,即 1470H。
相关问题
在汇编语言中,已知DS=3000H,BX=4000H,SI=01H,字节单元(34000H)=11H,(34001H)=22H,(340002H)=33H,(34003H)=44H,(34004H)=55H,执行指令JMP WORD PTR[BX]之后IP和CS值是多少
根据题目中给出的信息,DS=3000H,BX=4000H,SI=01H,字节单元(34000H)=11H,(34001H)=22H,(340002H)=33H,(34003H)=44H,(34004H)=55H,执行指令JMP WORD PTR[BX]之后IP和CS的值如下:
1. 由于JMP指令需要跳转到一个地址,因此需要将[BX]中的值作为跳转地址。由于[BX]是一个字节指针,因此需要根据段地址DS和偏移地址BX计算跳转地址。
跳转地址 = DS * 16 + BX = 3000H * 16 + 4000H = 70000H
2. JMP指令会跳转到跳转地址处执行,因此IP应该被设置为跳转地址的偏移地址,即IP=70000H mod 10000H = 0000H(这里对16位寄存器的最大值FFFFH取模,得到的结果是0000H)
3. 跳转地址的段地址应该是跳转指令的下一条指令的段地址,即CS=IP+2=0002H
因此,执行指令JMP WORD PTR[BX]之后IP=0000H,CS=0002H。
AX=1234H,DS=1000H,BX=2000H,(12000H)=3123H,执行MOV AL,【BX】后,AL的值为多少
根据题目给出的信息:
- AX=1234H,表示AX寄存器中的值为1234H;
- DS=1000H,表示数据段寄存器DS中的值为1000H;
- BX=2000H,表示基址寄存器BX中的值为2000H;
- (12000H)=3123H,表示内存地址12000H中存储的值为3123H。
执行MOV AL, [BX]指令,将BX寄存器中存储的值作为偏移地址,加上DS寄存器中存储的值1000H,得到的结果为3000H,然后从内存地址3000H中读取一个字节数据,存储到AL寄存器中。因为题目并没有给出内存地址2000H中存储的值,所以无法确定移动到AL寄存器中的值。
所以,无法计算AL的值。
阅读全文