课程代码: 21043
适用专业: 计算机应用、应用电子
一、填空题 (每空1分,共17分)
1.在基址变址寄存器中,可用于基址的寄存器是_______、_______;其中_______是相对于SS段寻址的。
2.执行加法时,如果两个操作数的符号相同,而结果的符号与之相反时,OF=_____ 。
3.PC机BIOS显示中断号类型为______,它在中断向量表中的物理地址为________ 。
4.用DEBUG调入一个数据文件后,寄存器______:______表示的是该文件的长度,其文件内容位于DS:_____开始的内存区域中。
5.VGA显示器的显示区域从物理地址_______处开始,CGA从________处开始,单色显示器MDA从______处开始。
6.PC机I/O设备的数据传送方式共有三种,分别是__________________________ 、______________ 、_____________ 。
7.可用DOS功能调用(INT 21h)的功能号AH=__________来设置中断向量,用功能号AH=__________来获取中断向量。
二、指出下述指令的对与错 (每空1分,共8分)
1.JMP FAR PTR BX
2.CALL AX
3.MOV DS , 2000H
4.SHL BP,3
5.PUSH [BX]
6.RET 3
7.DIV 10
8.CMP AX,[SI+DI]
三、简答题 (共15分)
1.对于下面的数据定义,三条MOV指令分别汇编成什么(可用立即数方式表示)?(6分)
TABLEA DW 10 DUP(?)
TABLEB DB 10 DUP(?)
TABLEC DB "1234"
...
⑴ MOV AX, LENGTH TABLEA
⑵ MOV BX,SIZE TABLEB
⑶ MOV CX,TYPE TABLEC
2.指出下列各条指令单独执行时,所涉及寄存器的值。(6分)
DATAX SEGMENT PARA
X1 DD 12345678h
X2 LABEL BYTE
X3 DW 1234h
ORG 100h
X4 EQU $-X1
DATAX ENDS
⑴ MOV BX,OFFSET X3 ; BX=
⑵ MOV AX,X4 ; AX=
⑶ MOV CX,WORD PTR X1+3 ; CX=
3.简述REPZ CMPSB指令的执行过程 (3分)
四、编程实现 (共34分)
1.编写一子程序GetString,从键盘上输入一个字符串。入口条件是:CX中为允许的串最大长度,DS:SI为串的首地址。(17分)
2.在数据段有一字符缓冲区,首地址为Buffer,以1Ah字节结尾。编写一子程序WriteBuffer将此缓冲区内容写入文件"MYFILE"中。(17分)
五、阅读程序,回答问题(每空2分,共26分)
1.如下程序为一个中断驻留程序,请在空白处填入必需的内容。(14分)
CODEX SEGMENT PRAR
ASSUME CS:CODEX , DS:CODEX
ORG 100H
P1 PROC FAR ;此为9Ah中断处理程序
PUSH AX
PUSH BX
PUSH CX
PUSH DX
PUSH SI
PUSH DI
PUSH BP
PUSH DS
PUSH ES
____________
;此处为中断号为9Ah的中断处理程序处理部分
____________
POP ES
POP DS
POP BP
POP DI
POP SI
POP DX
POP CX
POP BX
POP AX
_____________
P1 ENDP
LEN EQU $-0
P2 PROC NEAR
MOV DX,_________
MOV AX,_________
MOV DS,AX
MOV AX,259AH
INT 21H
MOV AX , 3100H
MOV DX , _________
INT 21H
P2 ENDP
CODEX ENDS
END ___________
2.如下程序比较两个ASCII字符串(均为大写)按字典顺序排列的大小(AX=0,0表示结果)
CMPSTRS PROC NEAR
PUSH ES
PUSH DI
PUSH SI
PUSH DS
POP ES
MOV SI, _____________ ; [SI]=A串首地址(名为STRINGA)
MOV DI, _____________ ; [DI]=B串首地址(名为STRINGB)
_________
L0: LODSB
CMP AL , _______________ ; 比较A[i] 及 B[i]
JZ L1
JA L2
MOV AX,0
_______________
L1: CMP AL , 0
JZ L2
_________________
JMP SHORT L0
L2: MOV AX, 1
L3: POP SI
POP SI
POP ES
RET
CMPSTRS ENDP
|