当前位置:首页 > 微机原理课后习题参考答案 - 2011 - 简版
10
1. 设当前SS=C000H,SP=2000H,AX=2355H,BX=2122H,CX=8788H,则当前栈顶的物理地址是多少?若连续执行PUSH AX,PUSH BX,POP CX 3跳指令后,堆栈的内容发生了什么变化?AX ,BX,CX中的内容是什么?
答:物理地址=C0000H+2000H=C2000H; 执行指令后,地址C000H:1FFFH内容是23H; 地址C000H:1FFEH内容是55H; 地址C000H:1FFDH内容是21H; 地址C000H:1FFCH内容是22H; (AX)=2355H,(BX)=(CX)=2122H;
3. 设存储器内数据段中存放了两个字2FE5H和3EA8H,已知DS=3500H,数据存放的偏移地址为4B25H和3E5AH,画图说明两个字在存储器中的存放情况。若要读取这两个字,需要对存储进行几次总线读操作?答:
? A8H 3EH ? E5H 2FH ?
2个字共需要3次总线操作。
4. 8086中的标志寄存器FR中有哪些状态标志和控制标志?这些标志位各有什么含义?假设(AH)=03H,(AL)=82H,试指出将AL和AH中的内容相加和相减后,标志位CF、AF、OF、SF、IF和PF的状态。答:
6个状态标志: CF:进位标志;
11
38E5AH 38E5BH 39B25H 39B26H
PF:奇偶标志; AF:辅助进位标志; ZF:零标志; SF:符号标志; OF:溢出标志; 3个控制标志:
IF:中断允许标志; DF:方向标志; TF:单步标志。
03H+82H=85H计算后:CF=0;PF=0;AF=0;ZF=0;SF=1;OF=0。 03H-82H=81H计算后:CF=1;PF=1;AF=0;ZF=0;SF=1;OF=1。 82H-03H=7FH计算后:CF=0;PF=0;AF=1;ZF=0;SF=0;OF=1。
5. 有一个22个字的数据组成的数据区,起其实地址为6101H:1CE7H。试计算出该数据区首末存储单元的物理地址?答:
起始物理地址为:62CF7H
数据区末的物理地址为:62CF7H+(22*2-1)2 = 62D22H
6. 假设(SS)=20A0H,(SP)=0032H,将(CS)=0A5BH,(IP)=0012H,(AX)=0FF42H,(SI)=537AH,(BL)=5CH依次压入堆栈保存。要求: (1)画出堆栈数据存放示意图; (2)写出压栈完毕后SS和SP的值。 答:(1)
堆栈必须为字操作—只有PUSH BX 是正确的 此时,BX中的高8位BH不能确定,但不影响压栈操作,不影响SP的变化 12
5CH 00H 7AH 53H 42H FFH 12H 00H 5BH 0AH
20A28H 20A29H 20A2AH 20A2BH 20A2CH 20A2DH 20A2EH 20A2FH 20A30H 20A31H
堆栈必须为字操作 (2)SS=20A0H, SP=0028H
7. 若某存储单元的实际地址为2BC60H,且该存储单元所在的段首地址为2AF00H,则该存储单元在段内的偏移地址为多少?答:
偏移地址=2BC60H-2AF00H=0D60H
13
共分享92篇相关文档