您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 招聘面试 > 东北大学汇编期末试题
汇编语言程序设计试题注意:本试卷的一、二大题的答案涂在答题卡上,三、四、五、六大题的答案答在答题纸上。并且要正确地书写站点、班级、学号及姓名。一、单项选择题(从四个备选答案中选出一个正确的答案涂在答题卡上)(20分)1.指令MOVAL,100H[SI]的源操作数的寻址方式为()。A.基址寻址B.寄存器间接寻址C.变址寻址D.基址变址寻址2.确定下列哪些数据在汇编语言中的表示是合法的()。A.AL+3B.25DAND36HC.108QD.102B3.若栈顶的物理地址为20100H,当执行完指令PUSHAX后,栈顶的物理地址为()。A.20098HB.20102HC.200FEHD.20100H4.JMPWORDPTR[SI]的目标地址偏移量为()。A.SI的内容B.SI所指向的内存字单元的内容C.IP+SI的内容D.IP+[SI]5.NEXT是程序中某指令语句标号,下述哪个程序段不能实现转移到NEXT语句执行()。A.JMPNEXTB.MOVBX,OFFSETNEXTJMPBXC.MOVBX,NEXTD.LEAAX,NEXTJMPBXJMPAX6.已知AX=8065H,BX=103AH,则指令ADDBL,AL执行后,OF和CF的值分别为()。A.0,0B.0,1C.1,0D.1,17.已知AL,BX中各存放一个带符号数,计算AL*BX的积,用下述程序段()。A.XORAH,AHB.CBWMULBXMULBXC.XORAH,AHD.CBWIMULBXIMULBX8.当CX=0时,REPMOVSB执行的次数为。()A.1次B.0次C.25535次D.25536次9.已知CALLDWORDPTR[BX]执行前SP=100H,执行后SP的内容为()A.0FEHB.0FCHC.104HD.96H10.下面各组语句在语法上正确的是()A.XEQU100B.XEQU100XEQUX+XX=X+XC.X=100D.X=100XEQUX+XX=X+X二、判断题(判断每题正误,并在答题卡上涂上所选的答案)。(10分)11.MOVDS,2000HA.正确B.错误12.ADDAL,BXA.正确B.错误13.MOVBX,[BX]A.正确B.错误14.AND10,ALA.正确B.错误15.MOVCS,AXA.正确B.错误16.SHLAL,CLA.正确B.错误17.MOV[SI],10HA.正确B.错误18.RET4A.正确B.错误19.POPALA.正确B.错误20.CALL10HA.正确B.错误三、填空题。(20分)1.已知:BX=100H,BP=200H,SI=300H,DS=1000H,SS=2000H,CS=3000H,指出下述指令中存储器操作数的有效地址及实际地址。(6分)指令有效地址实际地址MOVAL,[SI+50H]⑴⑵MOVAL,[BP]⑶⑷MOVCS:[BX+SI-30H],AL⑸⑹2.执行下列指令后,AX寄存器中的内容是什么?(4分)(1)TABLEDB10,20,30,40,50(2)TABLEDW10,20,30,40,50ENTRYDW3ENTRYDW3::::MOVBX,OFFSETTABLEMOVBX,OFFSETTABLEADDBX,ENTRYADDBX,ENTRYMOVAX,[BX]MOVAX,[BX]AX=__⑺____AX=__⑻____3.写出下述两条数据定义伪指令语句经过汇编后的内存分配情况。(4分)DATA1DB-35,‘34’DATA2DW-35,‘34’4.依据下述子程序说明文件把子程序补充完整。(6分)(1)子程序名:MADD(2)子程序功能:求两个多字节数据之和(3)入口条件:两个数据的低字节地址分别在SI和DI中,数据长度在CL中(4)出口条件:和的低字节地址在SI中(5)受影响的寄存器:FMADDPROCNEARPUSHAXPUSHDIPUSHSIPUSHCX()AGAIN:MOVAL,[DI]()INCSIINCDIDECCLJNZAGAINPOPCXPOPSIPOPDIPOPAX()MADDENDP四、改错题。(10分)下列程序有错,请将它们找出并改正过来。已知程序欲完成的功能是从两个无符号数中选出较大者送入MAX单元,若两者相同,则将MAX单元清0。要求:不必操题,将错误的行号及正确的答案写在答题纸上;如果要删除某一行,则写出本行的行号,并在后面表明删除字样;若需要在某两行之间插入,则在两行的行号之间自选一个作为行号,并在后面写出插入的内容。1.DSEGSEGMENT3.DAXDB3005.DAY:DBA3H7.MAXDB09.DSEGEND11.CSEGSEGMENT13.ASSUMECS:CSEG;DS:DSEG15.BEGIN:MOVDS,DSEG19.CMPAL,DAY21.JEZERO23.JGLMAX25.MOVAL,DAY28.LMAXMOVMAX,AL30.ZEROMOVAX,4CH32.INT21H35.CSEGENDS38.ENDSTART五、简答题(25分):用尽可能少的指令编写完成下列功能的程序段1.将寄存器AL的高4位和低4位互换。2.将DX,AX中的双字数据逻辑左移一位。3.将寄存器AL的第i位清0,AL的其它位状态不允许改变,已知i值在CL中。4.已知AL中存放一个带符号数,如果AL中的数据为0,则在显示器上输出字符0;如果AL中的数据为负,则在显示器上输出“-”;否则在显示器上输出“+”。5.设一逻辑段定义如下:DSEGSEGMENTDATA1DB10H,20H,30H,40H,50H,60HDATA2DB10H,20H,30H,40H,50H,60HCOUNTDW6DSEGENDS现想用数据串操作指令CMPSB与重复前缀连用判断在DATA1和DATA2开始的连续单元中存放的两组数据是否相等,若相等,则将CF置1;否则将CF清0,试编写该程序段。六、程序设计题。(15分)已知一组带符号字节数据存放在内存DATA开始的连续单元中,数据个数在CNT单元存放。编制程序求出该组数据的最小值,并将其存入MIN单元。答案:CBCBCCDBBDBBABBABABB
本文标题:东北大学汇编期末试题
链接地址:https://www.777doc.com/doc-5595247 .html