四川大学汇编语言程序设计期末试题附答案Word格式文档下载.docx
- 文档编号:14744207
- 上传时间:2022-10-24
- 格式:DOCX
- 页数:10
- 大小:30.75KB
四川大学汇编语言程序设计期末试题附答案Word格式文档下载.docx
《四川大学汇编语言程序设计期末试题附答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《四川大学汇编语言程序设计期末试题附答案Word格式文档下载.docx(10页珍藏版)》请在冰豆网上搜索。
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
1.以下寄存器中,哪一个不属于地址指针寄存器?
(A)
(A)AX(B)BX(C)SI(D)DI
2.以下标志位中,哪一个不属于状态标志位?
(C)
(A)CF(B)OF(C)IF(D)AF
3.以下寄存器中,哪一个用于指示堆栈的栈顶位置?
(A)IP(B)SI(C)SP(D)BX
4.以下寄存器中,哪一个用于提供代码段的段基值?
(A)SS(B)DS(C)CS(D)AX
5.以下指令中,不影响标志位的是哪一条?
(D)
(A)INC(B)AND(C)SUB(D)XCHG
第1页,共10页
试卷编号:
6.SF标志位的含义是如下哪一个?
(A)符号标志(B)零值标志(C)补码溢出标志(D)进位标志
7.LOOP指令隐含使用如下哪一个寄存器作为计数器?
(A)AX(B)BX(C)CX(D)DX
8.以下指令中,哪一条一定会访问堆栈段?
(A)DEC(B)ADD(C)MOV(D)CALL
9.以下伪指令中,用于结束一个段定义的是哪一个?
(A)END(B)SEGMENT(C)ENDP(D)ENDS
10.以下伪指令中,用于分配一个字节空间的是哪一个?
(B)
(A)DB(B)DW(C)DD(D)EQU
11.假设(AL)=35H,执行指令ANDAL,0FH后,(AL)=(D)
(A)3FH(B)F5H(C)30H(D)05H
12.假设(AL)=02H,执行指令INCAL后,CF=(D)
(A)0(B)1(C)2(D)与执行INC指令前一致
13.假设(AL)=05H,执行指令ADDAL,0后,PF=(B)
(A)0(B)1(C)2(D)与执行SUB指令前一致
14.假设(AL)=88H,执行指令SUBAL,90H后,OF=(A)
(A)0(B)1(C)2(D)与执行ADD指令前一致
15.假设(AL)=68H,执行指令ADDAL,08H后,AF=(B)
16.假设(AL)=81H,执行指令ROLAL,1后,(AL)=(C)
(A)80H(B)18H(C)03H(D)0C0H
17.假设(AL)=93H,执行指令SHLAL,1后,OF=(b)
18.假设(SP)=0060H,执行指令PUSHAX后,(SP)=(b)
(A)0058H(B)005EH(C)0062H(D)0060H
19.假设CF=1,以下哪一条转移指令一定会转移至目标地址?
(A)JC(B)JNC(C)JS(D)JNZ
20.假设(BL)=04H,执行指令XORBL,0FH后,(BL)=(D)
(A)00H(B)0FH(C)04H(D)0BH
第2页,共10页
二、多项选择题(本大题共5小题,每小题2分,共10分)提示:
在每小题列出的五个备选项中有二个至五个是符合题目要求的,请将其代码填写在下表中。
错选、多选、少选或未选均无分。
1.以下哪些指令会影响CF标志位?
(CD)
(A)INC(B)DEC(C)AND(D)SUB(E)JC
2.以下指令中,哪些会访问堆栈段?
(ABDE)
(A)CALL(B)RET(C)JMP(D)PUSH(E)POPF
3.假设(AL)=92H,CF=1,执行指令ADCAL,88H后,以下结果哪些是正确的?
(ACE)
(A)(AL)=1BH(B)(AL)=1AH(C)CF=1(D)OF=0(E)ZF=0
4.假设(AL)=86H,执行指令SARAL,1后,以下结果哪些是正确的?
(ACDE)
(A)(AL)=0C3H(B)(AL)=0CH(C)CF=0(D)OF=0(E)PF=0
5.以下指令中,哪些使用了存储器寻址方式?
(BCD)
(A)ADDAL,02H(B)SUBBL,[0104H](C)INCBYTEPTR[BX]
(D)ANDAL,[SI](E)XORBL,CL
三、判断改错题(本大题共5小题,每小题4分,共20分)提示:
下列各语句可能有语法错误,判断各语句正确与否,对于错误的语句,需解释其错误的原因,对于正确的语句,若做出正确判断则给4分,对于错误的语句,做出正确判断给2分,做出正确的解释再给2分。
1.NEG145X
NEG指令不能跟立即数
2.JZBXX
条件转移指令JZ不能寄存器寻址,只能跟标号
第3页,共10页
3.ORBL,SI
对
4.MOVBYTEPTR[SI],BYTEPTR[BX]X
MOV指令的两个操作数不能都为内存单元
5.XCHGAL,05HX
XCHG指令的操作数不能有立即数
四、程序分析题(本大题共5小题,每小题5分,共25分)。
提示:
每小题给出了一个程序片段,请按各小题的要求分析程序片段的执行结果或功能,并在空白处填写分析结果,分析正确则按照每空后标注的分值给分,如果分析错误则该空不得分。
1.有如下程序片段:
MOVAL,35H
MOVCL,04H
SHLAL,CL
执行该程序片段后,(AL)的十六进制形式为50H(3分),PF=1(1分),
ZF=0(1分)
2.有如下程序片段:
MOVAL,76H
ANDAL,0FH
ORAL,80H
执行该程序片段后,(AL)的十六进制形式为86H(3分),CF=0(1分),
OF=0(1分)
第4页,共10页
3.有如下程序片段:
MOVAL,0F2H
TESTAL,01H
JZL1
JMPL2
L1:
ORAL,01H
JMPL3
L2:
ANDAL,0FEH
L3:
……
执行该程序片段后,(AL)的十六进制形式为0F3H(3分),CF=0(1分),
PF=1(1分)
4.有如下程序片段:
MOVAL,02H
XORBL,BL
MOVAH,13H
MOVCX,08H
SHLAH,1
JCL2
ADDBL,AL
LOOPL1
执行该程序片段后,(BL)的十六进制形式为06H(3分),(CX)=00H(1分),
第5页,共10页
5.有如下程序片段:
MOVAL,92H
MOVAH,03H
CMPAL,AH
JGL1
MOVAL,0
L2:
MOVAL,0FFH
执行该程序片段后,(AL)的十六进制形式为0FFH(3分),OF=0(1分),
SF=1(1分)
五、程序设计题(本大题共2小题,第1小题12分,第2小题13分,共25分)。
每小题给出了一个程序设计要求,请按照要求写出源程序代码,如果源程序代码中出现语法错误或逻辑错误,则酌情扣分。
1.试编写一个子程序,统计指定8位补码数组中负数的个数,假设指定数组最大长度不超过255字节。
子程序的入口参数包括指定数组的偏移量、指定数组的长度,要求使用堆栈传递入口参数,传递顺序按上述顺序;
子程序的出口参数为数组中负数的个数,要求使用AL寄存器传递出口参数。
(注:
仅写出子程序相关源代码,不写调用该子程序的相关源代码)
GRAVESPROCFAR
PUSHBP
MOVBP,SP
PUSHDS
PUSHSI
PUSHCX
PUSHBX
PUSHAX
MOVBX,[BP+6]
MOVCX,[BP+8]
XORAH,AH
LOOP1:
MOVAH,[BX]
ORAH,7FH
CMPAH,0FFH
JEL1
JMPL2
L1:
INCAL
INCBX
LOOPLOOP1
POPAX
POPBX
POPCX
POPSI
POPDS
POPBP
RET4
GRAVESENDP
2.试编写一个完整程序,从键盘接收一个字符串(最大长度不超过50个字符),检测字符串中的逗号字符,在每个逗号后插入一个空格字符,换行显示处理后的字符串。
写出完整源代码)
DATASEGMENT
MAXLENDB50
LENDB?
STR1DB51DUP(?
)
STR2DB101DUP(?
NLINEDB0AH,0DH,'
$'
DATAENDS
CODESEGMENT
ASSUMEDS:
DATA,CS:
CODE
BEGIN:
MOVAX,DATA
MOVDS,AX
MOVAH,0AH
LEADX,MAXLEN
INT21H
MOVCL,LEN
XORCH,CH
LEASI,STR1
LEADI,STR2
MOVAL,[SI]
MOV[DI],AL
INCDI
CMPAL,'
'
MOVDL,'
'
MOV[DI],DL
INCSI
LEADX,NLINE
MOVAH,09H
INT21H
LEADX,STR2
MOVAH,4CH
CODEENDS
ENDBEGIN
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 四川大学 汇编语言 程序设计 期末 试题 答案