已知,(DS)=2000H,(BX)=100H,(SI)=02H,从物理地址20100H单元开始,依次存放数据12H、34H、56H、78H;而从物理地址21200H单元开始,依次存放数据2AH、4CH、8BH、98H。试说明下列各条指令单独执行后AX寄存器的内容
时间: 2023-07-10 19:27:34 浏览: 249
这是一个8086处理器的内存操作问题。根据题目给出的信息,我们可以得到以下数据存放的起始逻辑地址:
- 起始逻辑地址1 = (DS) x 10h + (BX) + (SI) = 2000h x 10h + 100h + 02h = 20020h
- 起始逻辑地址2 = (DS) x 10h + (BX) + (SI) = 2000h x 10h + 100h + 02h = 20020h
因此,第一组数据存放的起始逻辑地址为20020h,第二组数据存放的起始逻辑地址为21202h。
下面分别说明各条指令单独执行后AX寄存器的内容:
1. MOV AX, [20020h]
这条指令从逻辑地址20020h处读取一个字(word)数据,并将其存入AX寄存器中。因为20020h单元存放的数据为12h、34h,所以执行完这条指令后,AX寄存器的内容为3412h。
2. MOV AX, [21202h]
这条指令从逻辑地址21202h处读取一个字(word)数据,并将其存入AX寄存器中。因为21202h单元存放的数据为2Ah、4Ch,所以执行完这条指令后,AX寄存器的内容为4C2Ah。
3. ADD AX, [20022h]
这条指令将逻辑地址20022h处的一个字数据加到AX寄存器中的内容上。因为20022h单元存放的数据为56h、78h,所以执行完这条指令后,AX寄存器的内容为3412h + 7856h = A368h。
4. SUB AX, [21204h]
这条指令将逻辑地址21204h处的一个字数据从AX寄存器中的内容中减去。因为21204h单元存放的数据为8Bh、98h,所以执行完这条指令后,AX寄存器的内容为4C2Ah - 988Bh = C3A5h。
因此,各条指令单独执行后AX寄存器的内容分别为:
1. 3412h
2. 4C2Ah
3. A368h
4. C3A5h
阅读全文