“CS、DS、ES” 、?CS、SS、ES”等进行替代。
2.4、8086/8088系列微机在存储器中寻找存储单元时,逻辑地址由哪两部分组成?
答:在8086/8088系列微机在存储器中寻找存储单元时,逻辑地址由段基值和偏移量两部分组成,它们都是16位无符号二进制数。
2.5、设IBM PC微机内存某一单元的物理地址是12345H,试完成下列不同的逻辑地址表示:
①、1234H:0005_H ;EA=段基值+DISP=12340H+0005H=12345H ②、1200H:0345H
2.6、假设某用户程序装入内存后,(SS)=0950H,(SP)=64H,试问该用户程序的堆栈底部(字单元)物理地址是是多少?
2.7、设堆栈段寄存器(SS)=3E4BH,程序中设置堆栈长度为200个字节。试计算出堆栈底部字单元物理地址,堆栈指针SP初始值(即堆栈中没有数据时)和SP初始值指向的物理地址。
2.8、设某用户程序(SP)=30H,(AX)=1234H,(DS)=5678H。如现有两条指令:
PUSH PUSH
AX DS
;EA=段基值+DISP=12000H+0345H=12345H
试问两条指令执行后,图2.18中各单元的数据是多少? (SP)=?
答: (SP)=30H-4H=2CH
2.9、在IBM-PC微机上,分别进行下列8位二进制数的运算后,标志寄
存器中OF、ZF、SF、CF的值各是多少?
①、10101011+01010101 ③、01010101-00111110 2.10、设(SP)=50H PUSH AX PUSH BX PUSH CX
执行上述三条指令后,(SP)= 44H。 2.11、设(SP)=6EH POPF POP
AX
②、11011010+11101101 ④、10110011-01100010
执行上述两条指令后,(SP)= 72H 。
第三章
3.1、试分别说明下列各指令中源操作数和目的操作数使用的寻址方式: ①、AND ②、AND ③、MOV ④、CMP ⑤、MOV ⑥、SUB ⑦、ADC ⑧、OR ⑨、PUSH
AX,0FFH
;立即数寻址 ;直接寻址 ;寄存器寻址 ;寄存器间接寻址
BL,[0FFH] DS,AX [SI],CX
DS:[0FFH],CL ;带前缀的直接寻址 [BP][SI],AH ;基址变址寻址 AX,0ABH[BX] ;基址寻址 AX,-35[BX][DI] DS
;基址变址寻址
;寄存器寻址
⑩、CMC
;立即数寻址
3.2、试分别指出下列各指令语句的语法是否有错,若有错,指明是什么错误。
①、MOV ②、TEST ③、ADD ④、AND ⑤、CMP ⑥、SHR ⑦、NOT ⑧、LEA ⑨、INC ⑩、PUSH
[BX][BP],AX [BP],BL
;错,BX与BP必须二选一 ;正确
;错,源目操作数不能同时为存储器 ;错,同一寄存器高、低字节不能与 ;正确 ;正确
;错,NOT指令只有一个操作数 ;正确 ;正确 ;正确
[SI],DA_BYTE DH,DL
CL,1234H [BX][DI],3 CX,AX
DS,35[SI] CX,1 45[DI]
3.3、下面两条指令执行后,标志寄存器中CF,AF,ZF,SF和OF分别是什么状态?
MOV DL,,86 ADD DL,0AAH 答:以上两条指令执行后:
CF= AF= ZF= SF= OF=
3.4、在8086/8088CPU中可用于作地址指针的寄存器有哪些? 答:
3.5、已知(DS)=091DH,(SS)=1E4AH,(AX)=1234H,(BX)=0024H (CX)=5678H,(BP )=0024H,(SI)=0012H,(DI)=0032H,单元(09226H)=00F6H,(09228H)=1E40H,(1E4F6H)=091DH 下各指标令或程序段分别执行后的结果如何?
①、MOV ②、MOV ③、LEA MOV ④、LDS
MOV ⑤、XCHG XCHG
3.6、已知(SS)=0915H,(DS)=0930H,(SI)=0A0H, (DI)=1C0H,(BX)80H,(BP)=470H.现有一指令 ?MOV
AX,OPRD?,若源操作数的物理地址为095C0H,试用4种不同寻
CL,20H[DI][SI] [BP][DI],CX BX,20H[BX][SI] AX,2[BX] SI,[BX][DI] [SI],BX CX,32H[BX] AX,[SI]
址方式该写此指令(要求上述每个已知条件至少要使用一次)。
3.7、已知(DS)=1234H,(SI)=124H,(12464H)=30ABH,(12484H)=464H
LEA
SI, [SI]