您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > IBM-PC汇编语言程序设计试题
第1页共8页南华大学2007–2008学年度第1学期汇编语言程序设计课程考试试卷(A卷、2005级)考试日期:2008年1月16日考试类别:考试考试时间:120分钟题号一二三四五六总分得分一、填空题:(每空1分,共20分)1、设SS=1000H,SP=10H,AX=BX=5678H,顺序执行PUSHAX,PUSHBX后,SP=_____,AX=_______,BX=_______。2、MOVAX,[1234H]指令中的源操作数的寻址方式为______。3.汇编语言程序上机编译的命令是________,连接的命令是______。4.如果在一个程序开始执行以前(CS)=1a45H,(IP)=2B40H,则该程序的第一个字的物理地址是____________。.5.DB、DD伪指令中定义的每个操作数分别占____、____字节。6.子程序的参数传送方式有变量传送,____和地址表,____四种方式。7.汇编程序有2种功能调用,分别为_________、_______。8.中断系统的中断向量表用来存放______,共预留了____个字节空间。9.一个中断类型号为11H的中断向量存储在地址为____至___的单元中。10、在串操作指令CMPSB执行时,用于源地址的寄存器是______;目的地址的寄存器是________;如果DF=1,则该指令执行后,目的地址寄存器____。得分阅卷人………………………………………线………………………………………订………………………………………装………………………………………线………………………………学院专业考号姓名第2页共8页二、单项选择题(在每小题的四个备选答案中,选出一个正确的答案。每小题2分,共40分)1.十进制33.25转换成十六进制数为()A.B1.4HB.1B.19HC.21.4HD.33.4H2.下列通用寄存器哪一个用于循环计数()A.AXB.CXC.BXD.DX3.指令指针寄存器是()A.IPB.SPC.BPD.PSW4.完成同指令XCHGAX,BX相同功能的指令或指令序列是()A.MOVAX,BXB.MOVBX,AXC.PUSHAXD.MOVCX,AXPOPBXMOVAX,BXMOVBX,CX5.在汇编语言程序中,对END语句的叙述正确的是()A.END语句是一可执行语句B.END语句表示程序执行到此结束C.END语句表示源程序到此结束D.END语句在汇编后要产生机器码6.下面的数据传送指令中,错误的操作是()A.MOVSS:[BX+DI],1000HB.MOVDX,1000HC.MOVWORDPTR[BX],1000HD.MOVDS,2000H7.执行指令MOVAL,[BP]时,所读取的数据应在()A.CS段中B.DS段中C.SS段中D.ES段中8.使8086/88的标志寄存器FLAG中的中断标志IF置为关中断的命令是()A.CLI清除中断允许位B.STDC.STI设置中断允许位D.CLD9.某微机有16条地址线,能够覆盖的地址范围是()A.0001H-FFFFHB.00001H-FFFFFHC.0000H-FFFFHD.00000H-FFFFFH得分阅卷人第3页共8页10.若寄存器AX、BX、CX、DX的内容分别为12、13、14、15,依次执行PUSHAX,PUSHBX,POPCX,POPDX后,寄存器CX,DX的内容分别为()A.12,13B.13,14C.14,15D.13,1211.CPU执行算术运算指令不会影响的标志位是()A.溢出标志B.符号标志C.零标志D.方向标志12.设(AX)=2000H,(BX)=1000H,则在执行了指令“CMPAX,BX”后,标志位CF和ZF的值分别为()A.0,0B.0,1C.1,0D.1,113.伪指令是在_________执行的。()A.程序运行期间B.汇编时由汇编程序C.连接时由连接程序D.装入时由command.com程序14.AL高4位清0,应执行的指令是()A.ANDAL,0F0HB.ANDAL,0FHC.ORAL,0FHD.TESTAL,0FH15.DOS功能调用的功能号是()A.21HB.20HC.22HD.10H16.在计算机系统中能直接执行的程序是()A.任何形式的程序B.对源程序汇编,连接以后的程序C.对源程序汇编以后的程序D.汇编语言源程序17.指令LOOP标号转移到标号的的条件是()A.CX≠0ANDZF=0B.ZF=0C.CX≠0D.CX≠0ORZF=118.下列指令中不会改变指令计数器IP的是()A.MOVB.JMPC.CALLD.RET19.与MOVBX,OFFSETX等价的指令是()A.MOVBX,XB.LDSBX,XC.LESBX,XD.LEABX,X20.有符号数AX除以2的指令是()第4页共8页A.SHRAX,1B.SARAX,1C.RORAX,1D.RCRAX,1三、分析简答题:(每小题5分,共30分)1.在某子程序的开始处要保护AX,BX,CX,DX四个寄存器信息,在子程序结束时要恢复这四个寄存器信息。例如:PUSHAX;保护现场PUSHBXPUSHCXPUSHDX::;恢复现场试写出恢复现场时的指令序列。2.已知宏定义如下:ADDXYMACROX,YMOVAX,XADDAX,YMOVX,AXENDM若有以下的宏调用:ADDXYX1,X2则宏展开为:3.完成下列操作,写程序段:(1)将AX的内容,减去0520H,和上次运算的借位;得分阅卷人得分阅卷人第5页共8页(2)将变量名TABL的段地址送AX;4.设寄存器AL,BL,CL中内容均为0F0H,XORAL,0FHANDBL,0FHORCL,0FH执行上述指令序列后,AL,BL,CL的结果是什么?5、下面的程序段完成什么功能?程序执行后,AX寄存器的内容是什么?XORAX,AXMOVBX,3MOVCX,10L:ADDAX,BXADDBX,2LOOPL6.读下面程序段:STRINGDB‘ABCDEFGHIJ’MOVAH,01;从键盘输入字符1~9INT21HANDAL,0FHDECALXORAH,AHMOVBX,OFFSETSTRINGADDBX,AX第6页共8页MOVDL,[BX]MOVAH,02H;显示输出INT21H:试回答:(1)上述程序段的功能是什么?(2)如从键盘输入字符‘4’,程序段有什么结果?四、如下是一个二进制转换成十进制ASCII码并显示的程序,阅读程序并在指定位置填入一条指令,使程序完整。(每空2分,共10分)DATASEGMENTINCSICOMDW10000,1000,100,10,1ADDDI,2NDADW5456HMOVAX,DXBUFDW7DUP(?)_______DATAENDSMOVBUF[SI],”$”CODESEGMENTLEADX,BUFASSUMECS:CODE,DS:DATA_______START:MOVAX,DATAINT21HMOVDS,AXMOVAX,4C00HMOVAX,NDAINT21H______CODEENDSJNSPLUSENDSTARTNEGAXMOVBUF,”-“JMPCVDPLUS:MOVBUF,”+“CVD:MOVCX,5MOVSI,1_______CVS:CWDMOVBX,COM[DI]MOVBUF[SI],AL得分阅卷人得分阅卷人第7页共8页答案一填空题(1)0CH_5678H5678H(2)直接寻址(3)masmlink(4)1CF90H(5)14(6)寄存器传送堆栈传送(7)宏调用子程序调用(8)相应的中断处理程序的入口地址1k(9)0044h0047h(10)SIDI地址自动减量二单项选择题1~5CBADC6~10DBACD11~15DABBA16~20BCADB三分析简答题(1)POPDXPOPCXPOPBXPOPAX(2)1MOVAX,X11ADDAX,X21MOVX1,AX(3)解:(1)MOVBX,0520H第8页共8页SBBAX,BX(2)MOVAX,SEGTABLE(4)解:AL0FFHBL00HCL0FFH(5)解:功能:对等差数列(3+5+7+…+21,共十项)求和.3+5+7+9+11+13+15+17+19+21AX120D即为01111000H(6)解:(1)输入数字n,显示字符串的第n-1个字符(从第0个开始计)(2)显示字符D四程序分析题CMP_AX,00HMOVDI,0;XOR_DX,DXDIV_BXLOOP_CVSMOV_AH,09H
本文标题:IBM-PC汇编语言程序设计试题
链接地址:https://www.777doc.com/doc-2876665 .html