您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > 华中科技大学80X86汇编语言程序设计试卷
1《汇编语言程序设计》网络学院模拟试卷一2004.4班级________________姓名______________学号______________成绩______一、改错题(10分,每题1分,在错误处划线,线下写上正确答案)1.SHRBH,82.ADD[BX],–153.LEAPOINT,BUF4.INDX,2005.PUSHDH6.MUL257.XLATBX,TAB8.REPNZMOVSW9.MOVAX,2[SI][DI]10.MOV[BX],[SI]二、单选题(20分,每题1分)1.MOV指令的特点是________。A.影响DFB.影响SFC.影响CFD.不影响标志位2.使用寄存器间接寻址方式访问堆栈中某变量时,要选用________寄存器。A.BXB.BPC.SID.SP3.8086标志寄存器中的三个控制标志是________。A.IF、PF、SFB.DF、OF、CFC.DF、IF、TFD.TF、AF、IF4.若有符号数运算的结果溢出,则置________为1。A.OFB.CFC.SFD.IF5.若某存贮器操作数的偏移地址在SI中,访问该操作数应采用________寻址方式。A.立即B.寄存器C.寄存器问址D.直接6.串操作指令中,目的串的逻辑地址应为________。A.DS:[SI]B.DS:[DI]C.ES:[DI]D.ES:[SI]7.不在本模块定义而在本模块中引用的符号称________符号。A.公共B.局部C.自定义D.外部8.若(CL)=4,(AX)=0FF0FH,执行语句“RORAX,CL”后,(AX)=________。A.0FFFFHB.0FFF0HC.0F0FFHD.0FFFH9.已知AL中存放着一个压缩BCD码,为实现AL减1操作,应选用________指令序列。A.DECALB.SBBAL,0C.SUBAL,1D.SUBAL,1AASDASAASDAS10.要将BL中的8位数据送到1234H端口号的外部设备中去,应选用________指令序列。A.OUT1234H,BLB.MOVDX,1234HOUTDX,BLC.MOVAL,BLD.MOVDX,1234HMOVDX,1234HMOVAL,BLOUTDX,ALOUTAL,DX11.已知AX,BX中均为有符号...数据,当进行字.除法时,应采用________指令序列。A.XORDX,DXB.CBWC.IDIVBXD.CWDDIVBXIDIVBXIDIVBX212.要将DX的内容送入堆栈中从当前栈顶起第10个字中,应使用________语句。A.MOV18[SP],DXB.MOV18[BP],DXC.MOVBP,SPD.PUSH18[DX]MOV18[BP],DX13.要将CL中8位有符号数送入SI中去,应采用________。A.MOVSI,CLB.MOVBYTEPTRSI,CLC.MOVCH,OD.MOVAL,CLMOVSI,CXCBWMOVSI,AX14.8086指令系统中的PUSH操作,会对SP自动进行________操作。A.减1B.加2C.减2D.加115.下列指令执行后,对源、目的操作数均无影响的指令是________。A.XCHGAX,BXB.CMPAX,BXC.SBBAX,[BX]D.MOVAX,BX16.用REPESCASB指令对某字符串进行扫描,若当扫描结束时CX≠0,则表示________。A.在字符串中有一个与(AL)不同的字符B.在字符串中找到了第1个与(AL)不同的字符C.在字符串中有一个与(AL)相同的字符D.在字符串中找到了第1个与(AL)相同的字符17.条件转移指令JNLE的转移条件是________。A.SF⊕OF=0,且ZF=0B.SF⊕OF=1,且ZF=0C.SF⊕OF=0,且ZF=1D.SF⊕OF=1,且ZF=118.表示宏定义结束的伪指令是________。A.ENDMB.ENDSC.ENDPD.END19.设(SS)=448AH,(SP)=450H,执行PUSHFAXPUSH后,当前栈顶的物理地址=_______。A.44CE6HB.44CECHC.44CF4HD.44CF2H20.下列数据定义伪指令中,________是错误的。A.DB12HB.DW1234HC.DB'ABCD'D.DW'ABCD'三、填空题(10分,每题1分)1.要清除AX中的D15~11位,需采用________________________指令来实现。2.已知(AX)=789AH,问执行指令CBW后,(AX)=________________________。3.使用DOS中2号功能调用时,需先将________________________________送入DL中。4.在MOVAX,–5[BX][DI]中,源操作数采用是________________________寻址方式。5.已知在DATA数据段中已定义有变量DUF,AA等,问与AXDS,MOVDATAAXMOV中划线语句等效的指令是________________。6.与MOVAX,OFFSETBUF等效的LEA指令是________________________________。7.与JNL指令等同的指令操作符是________________________。8.中断类型号为25H的中断服务程序的中断矢量存放在内存~___单元中。9.主、子程序间参递参数的常用三种方式是_____________、_____________和___________法。10.要对DX中的内容求绝对值,在横线上应填入何指令。_____________ANDDX,DXJNSL1______________L1:……∶3∶TESTBX,80HJNETJMPNTT:…NT:…∶DATA...SSSP四、作图及填充题(10分)已知数据段定义如下:DATASEGMENTC1DB'0AH',2DUP('12',1),–7C2DW'0A',–7C3EQU$–C2ORG20C4DWC2+2DATAENDS1.画出数据在主存中的分配图(细化到字节)(5分)2.在划线处填上执行结果。①MOVAX,C2-3;(AX)=__________②MOVDX,C2+2;(DX)=__________③MOVBL,C1+5;(BL)=__________④MOVBX,OFFSETC1+3;(BX)=__________⑤MOVCL,C3-4;(CL)=__________五、程序分析题(每小题3分,共24分)1.已知BX=0F0FH,请判别右边程序段执行后,程序转向_______执行。2.设A变量的偏移地址为100ADW5665H,1234H∶LEASI,A左边程序段的二条指令执行后(SI)=________LDSBX,A(BX)=________∶3.如果在执行以下程序段前堆栈为空栈,且程序其余处也未用堆栈操作指令。要求:①画出执行完①时堆栈变化示意图∶CALLPRO1B1:……∶B2:……∶PRO1PROCPUSHCXPUSHBX①∶POPBX②从子程序能返回到主程序B1处吗?为什么?RET______________________________________PRO1ENDP______________________________________∶44.已知DS和ES指向同一个段,且当前数据段偏离0000H~00FFH的存贮单元中依次存放的内容为0~0FFH,请回答下列程序段执行后0000H~0009H单元中的内容为:∶___________________________________________。MOVSI,0000HMOVDI,0001HMOVCX,10CLDREPMOVSW∶5.∶STR1DB'COMPUTERNDPASCAXZ'SZMDB'E'∶MOVAL,SZMLEADI,STR1问左边程序段执行到NEXT处时,MOVCX,17(CX)=__________CLD(ZF)=__________REPNESCASBNEXT:…∶6.已知:AX=0D800H,DX=0003H∶MOVCX,2L:SHLAX,1问左边程序段执行后RCLDX,1(AX)=__________LOOPL(DX)=__________∶7.程序段的功能是将数组的最大数送AL,请在各空白处填上一条合适的指令。AADB3,7,32,10,100,……NEQU$–AA∶MOVCX,NMOVDI,OFFSETAAMOVAL,[DI]BB:INCDI__________________①JAECCMOVAL,[DI]CC:___________________②。8.∶ADW?BDW?∶MOVAX,AMOVBX,BXORAX,BX_________________①TESTBX,8000H_________________③MOVAX,0NEXT:……∶左边程序段为判A、B两字变量是否同为正数。是,置AX为0,否则,置AX为非零。请在各空白处填上一条合适的条件转移指令。(两处不能用同一条条件转移指令。)59.读下面程序,回答下列问题:①当输入为:ABCD↙时,输出什么?_____。②在程序中的宏指令的;后,写出其宏扩展的形式。③当输入字符串为①所述,则(BUF1+1)=________。④若漏写了一条DECSI指令,程序结束后又显示什么?____________。六、设计程序或程序段(26分)1.设计将当前数据段偏移地址1000H至3000H的字.存贮单元中全设置为–1的程序段。(用二种不同方法)(4分)RWMACROA,BMOVAH,ALEADX,BINT21HENDMDATASEGMENTBUF1DB30,?,30DUP(0)BUF2DB'PLEASEINPUT:'BUF3DB0AH,0DH,'$'DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATESTART:MOVAX,DATEMOVDS,AXRW9,BUF2;RW10,BUF1;RW9,BUF3;MOVCL,BUF1+1MOVCH,0MOVSI,CXMOVAH,2LOPA:MOVDL,BUF1+1[SI]INT21HDECSILOOPLOPAMOVAH,4CHINT21HCODEENDSENDSTART62.设计求某无符号字节变量....A的9倍的程序段(结果不超过一无符号字节数的范围)。(用二种不同方法)(4分)3.用二种不同的方法设计将DI的高8位与DI的低8位互换的程序段。(用二种方法)(4分)4.编写从键盘输入一串字符,从中找出字母A出现的个数,并将此数在屏幕下一行上用十进制数形式显示出来的程序。要求:①结构完整。(3分)②回车换行用宏指令。(2分)③将AX中16位无符号二进制数→十进制数并在屏幕显示可调用已有的子程序PROS。(2分)④画出流程图。(2分)(或子模块PROS)⑤程序正确。(5分)《汇编语言程序设计》网络学院模拟试卷二2004.4班级________________姓名______________学号______________成绩______一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题中的括号内。每小题1分,共10分)71.CPU发出的访问存储器的地址是()。A.物理地址B.偏移地址C.逻辑地址D.段地址2.将高级语言的程序翻译成机器码程序的实用程序是()。A.编译程序B.汇编程序C.解释程序D.目标程序3.DECBYTEPTR[BX]指令中的操作数据类型是()。A.字B.双字C.字节D.字符4.在下列语句中,BUFFER称为()。A.符号B.变量C.助记符D.标号5.串操作指令中,源串操作数的段地址一定在()寄存器中。A.CSB.SSC.DSD.ES6.使计算机执行某种基本操作的命令是()。A.伪指令B.指令C.标号D.助符7.将数据5618H存放在存储单元中的伪指令是()。A.DATA1DW1856HB.DATA1DB18H,56HC.
本文标题:华中科技大学80X86汇编语言程序设计试卷
链接地址:https://www.777doc.com/doc-2643129 .html