第3题
设堆栈指针(SP)=0110H,执行下面三条指令后,SP的内容是()。
PUSH AX
PUSHF
POP AX
A.010EH
B.010AH
C.0116H
D.0108H
第5题
为了使AX和BX寄存器中的16位二进制数具有相同的符号位,下面的程序段中应填写什么指令?
PUSH AX
______
TEST AX, 8000H
JZ SAME
XOR BX, 8000H
SAME: POP AX
A.AND AX, BX B.XOR AX, BX
C.SUB AX, BX D.OR AX, BX
第6题
设原堆栈指针指向系统堆栈,在用户堆栈(0200:0800)栈顶的第一个单元存放了一个数,下面的子程序完成这样的功能:将栈顶的数取出,转换为一个表格中的代码(表格首址为DS:0000),再输出到0200H端口,并返回。改正下面程序中的错误。
DAI: PUSH DX
PUSH AX
MOV SP,0800
MOV SI,0A00
MOV SS,0200
POP AX
XLAT
OUT 0200,AL
POP AX
POP DX
RET
第8题
A.PUSH只能将字节型数据压入堆栈。
B.PUSH只能将字型数据压入堆栈。
C.PUSH只能将双字型数据压入堆栈。
D.PUSH可对任何类型数据操作。
第9题
假设(SS)=3000H,(SP)=0200H,(AX)=0001H,(DX)=0100H,执行下列指令后,(AL)=______。
PUSH AX
PUSH DX
POP AX
POP DX
A.32H B.30H
C.01H D.00H
第10题
DSEG SEGMENT
ARRAY DB 'Computer$'
MUM DW 0
DSEG ENDS
SSEG SEGMENT STACK
DB 256 DUP (O)
SSEG ENDS
CSEG SEGMENT
ASSUME DS: DSEG, SS: SSEG, CS: CSEGI
START: MOV AX, DSEG
MOV DS, AX
MOV AX, OFFSET ARRAY
PUSH AX
CALL[1]
MOV AH, 4CH
INT 2IH
CSEG1 ENDS
CSEG2 SEGMENT
ASSUME DS: DSEG, SS: SSEG, CS: CSEG2
STRLEN PROC FAR
PUSH BP
MOV BP, SP
PUSH SI
MOV SI, [BP+6]
NEXT: CMP BYTE PTR[ SI],'$' ;串尾吗?
JZ DONE
INC SI
JMP NEXT
DONE: MOV AX, SI
SUB AX, [BP+6]
POP SI
POP BP
RET 2
STRLEN ENDP
CSEG2 ENDS
END STARRT
第11题
A AX=9ABCH DX=8765H
B AX=9ABCH DX=9ABCH
C AX=8765H DX=8765H
D.AX=8765H DX=9ABCH