11、.已知,(DS)=2000H,(BX)=100H,(SI)=0002H,从物理地址20100H单元开始,依次存放数据12H、34H、56H、78H;而从物理地址21200H单元开始,依次存放数据2AH、4CH、8BH、98H。试说明下列各条指令单独执行后AX寄存器的内容。 ① MOV AX,3600H (AX)= ② MOV AX,[1200H] (AX)= ③ MOV AX,[BX] (AX)=
时间: 2024-03-01 21:49:23 浏览: 307
1. MOV AX, 3600H
这条指令将立即数3600H直接存入AX寄存器中,因此执行完这条指令后,AX寄存器的内容为3600H。
2. MOV AX, [1200H]
这条指令从逻辑地址1200H处读取一个字(word)数据,并将其存入AX寄存器中。由于没有给出数据段寄存器(DS)的值,因此无法确定1200H的物理地址。但是,由于逻辑地址是由段地址和偏移地址组成的,而DS=2000H,因此可以推算出1200H的物理地址为20100H(1200H + 2000H x 10H)。根据这个物理地址,可以得到1200H处存放的数据为12H、34H,因此执行完这条指令后,AX寄存器的内容为3412H。
3. MOV AX, [BX]
这条指令从以BX寄存器中的值作为偏移地址,以DS寄存器中的值作为段地址的内存单元读取一个字(word)数据,并将其存入AX寄存器中。由于DS=2000H,BX=100H,因此偏移地址为100H+2H=102H,逻辑地址为2000Hx10H+102H=20102H,根据这个逻辑地址,可以得到20102H处存放的数据为56H、78H,因此执行完这条指令后,AX寄存器的内容为7856H。
因此,各条指令单独执行后AX寄存器的内容分别为:
1. 3600H
2. 3412H
3. 7856H
相关问题
已知,(ds)=2000h,(bx)=100h,(si)=02h,从物理地址20100h单元开始,依次存放数据12h
这是一个关于8086处理器内存寻址的问题。根据题意,可以得出以下信息:
- (ds) = 2000h:数据段寄存器(ds)中存放的段地址为2000h。
- (bx) = 100h:基址寄存器(bx)中存放的偏移地址为100h。
- (si) = 02h:源变址寄存器(si)中存放的偏移地址为02h。
- 从物理地址20100h单元开始:数据存放的起始物理地址为20100h。
根据8086处理器的内存寻址方式,可以得出数据存放的起始逻辑地址为:
```
起始逻辑地址 = (ds) x 10h + (bx) + (si)
= 2000h x 10h + 100h + 02h
= 20020h
```
因此,数据存放的起始逻辑地址为20020h,依次存放的数据为12h。
在汇编语言中,已知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。
阅读全文