您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 微机原理复习题6(含答案)
汇编语言试卷一、单项选择题(本大题共20小题,每小题1分,共20分)1.设A=0.4H,B=0.8H,C=0.4,D=0.4Q,它们之间的关系是(C)。A)C+D=BB)A+D=BC)B=DD)ACD2.标志寄存器中属于控制标志位的是(B)。A)DF,OF,SFB)DF,IF,TFC)OF,CF,PFD)AF,OF,SF3.8088/8086存储器分段,每个段不超过(D)A)64K个字B)32K个字节C)1兆个字节D)64K个字节4.设AL中已有压缩型BCD码,为实现对AL的减1操作,可选用的指令序列是(D)。A)DECALB)SBBAL,0AASDASC)SUBAL,1D)SUBAL,1AASDAS5.要输入端口1234H中的8位数据,其指令应是(5)。A)MOVDX,1234HB)MOVDX,1234HOUTDX,AL1NAL,DXC)1NAX,1234HD)OUTDX,1234H6.若AX=-15要得到AX=15应执行的指令是(A)。A)NEGAXB)NOTAXC)INCAXD)DECAX7.8086/8088系统执行传送指令MOV时(A)。A)不影响标志位B)影响DF方向标志C)影响SF符号标志D)影响CF进位标志8.MOVAL,79ADDAL,0B1H上面指令执行后,设置的标志位CF和OF的值是(D)A)CF=0,OF=1B)CF=1,OF=1C)CF=0,OF=1D)CF=1,OF=09.已知AX,BX中均为带符号数,当进行字相除时,下面指令或指令序列正确的是(B)。A)DIVBXB)CWDIDIVBXC)XORDX,DXD)CBWDIVBXIDIVBX10.下列指令中操作数在代码段中的是(A)。A)MOVAL,42HB)ADDAL,BLC)SUB[BX],DID)1NC[DI]11.用REPESCASB指令对字符串进行扫描,如CX0时,扫描结束,那么表示(D)。A)在字符串中遇上第一个AL中指定的字符B)在字符串中有一个AL中指定的字符C)在字符串中有一个不是AL中指定的字符D)在字符串中遇上第一个不是AL中指令的字符12.下列指令执行后对源和目的操作数均无影响的是(D)。A)MOV[BX+2],AXB)SUBAX,2467HC)SBB[SI],BXD)CMPAX,BX13.表示过程定义结束的伪指令是(A)。A)ENDPB)ENDSC)ENDD)ENDM14.下列有语法错误的语句是(C)。A)DB12HB)DW4567HC)DDˋBCDˊD)DBˋCDˊ15.DB1DB8DUP(2DUP(3),3DUP(2))┇MOVAX,WORDPTRDB1[04H]上面指令执行后,AX的内容是(A)。A)0302HB)0203HC)0202HD)0303H16.BUF1DB3DUP(0,2DUP(1,2),3)COUNTEQU$-BUF1符号COUNT等价的值是(B)。A)6B)18C)16D)817.DA1DW2A05HDA2DB0FAH┇MOVAL,BYTEPTRDA1SUBDA2,AL上述指令执行后,DA2中的内容是(C)。A)0DAHB)0FAHC)0F5HD)0D0H18.设(SS)=338AH,(SP)=450H,执行PUSHBX,和PUSHF两条指令后,堆栈顶部的物理地址是(A)。A)33CECHB)33CF2HC)33CF4HD)33CE8H19.设(SP)=0028H,执行段内返回指令RET6后,SP的内容是(C)。A)0036HB)0022HC)0030HD)0020H20.条件转移指令JNBE产生转移的条件是(A)。A)CF=0ANDZF=0B)CF=0ANDZF=1C)CF=1ANDZF=0D)CF=1ANDZF=1二、填空题(本大题共5小题,每小题1分,共5分)21.8086/8088CPU允许最大的存储空间为1MB,因此CPU的地址总线是20位。22.一个语句的名字项可以是标号或变量,在程序中它们两个在书写形式上的主要区别是标号及其所代表的指令之间用冒号分开,变量及其所代表的数据之间用空格分开。。23.无符号数和带符号数的两组条件转移指令,每条指令都有完全等效的两个指令助记符,例如,JL指令另一个指令助记符是JNGE。24.指令MOVAX,SEGBUF的执行,是把BUF所在段的地址送到AX中。25.如果多个条件转移指令实现多路分支程序设计,那么为实现5路分支,需要4个条件转移指令。三、简答题(本大题共3小题,每小题2分,共6分)假设DS=2000H,COUNT=0100H,SI=0030H,指令MOVAX,COUNT[ST]①写出源操作数的物理地址?②该指令可否写成MOVAX,[COUNT+SI]?.①物理地址=20130H②可以27.下面指令有无错误?若有错,是什么错误?①MOVAX,[SI][DI]不能用两个变址连用,其中一个应为基址。②CMP[SI],[BX]存储单元之间不能直接比较28.条件转移指令的判断条件除标志位PF外还有哪几个标志位?OF、ZF、SF和CF的标志位四、程序分析题(本大题共7小题,每小题5分,共35分)29.ADRDW1234H,5678H┇LEASI,ADRLDSBX,ADR设变量ADR的偏移地址是100H,上述两条指令执行后:SI=100H,BX=1234H。30.已知DS和ES指向同一个段,且当前数据段从0000H到00FFH单元内容分别为01,02,03,…,0FF,00H。问下列程序段执行后,0000~0009H的内容是些什么值。MOVSI,0000HMOVDI,0001HMOVCX,0080HCLDREPMOVSW答案:(从0单元开始的内容是01,01,02,02,04,04,06,06,08,08)31.STR1DBˋCOMPUTERNDPASCALˊSCADBˋNˊ┇LEADI,STR1MOVAL,SCAMOVCX,10HCLDREPNESCASBNEXT:……程序运行到NEXT时CX=7ZF=132.已知AX=0FFFFH,DX=0001HMOVCX,2LOP:SHLAX,1RCLDX,1LOOPLOP上述程序段执行后,DX=0007HAX=OFFFCH33.已知DX=0A476H,CX=0302H,CF=1ORDX,DXRCRDX,CLXCHGCH,CLRCLDX,CL上述程序段执行后,DX=48ECHCF=134.MOVAX,10SHLAX,1SHLAX,1MOVBX,AXMOVCL,2SHLAX,CLADDAX,BX上述程序段执行后,BX=40或28HAX=200或0OC8H35.已知AX=78H,BX=0804HSHRBX,1ANDBX,0F0FHMOVCX,4LOP:XCHGBH,BLDIVBLSALAX,1LOOPLOP上述程序段执行后,AX=30/1EHBX=0402H五、程序填空题(本大题共2小题,每小题6分,共12分)36.下面程序执行后,AL的内容为ARRAY数组中的最小数,请在空白处各填上一条指令。ARRAYDB3,5,-3,-2,4,5,-8,6┇MOVCX,7MOVDI,0MOVAL,ARRAYA1:INCDI①CMIAL,ARRAYJLEA2MOVAL,ARRAY[DI]A2:②LOOPAl37.下面程序段是判断两个存储单元是否同为正数,如是,则AX置全0,否则AX置非0。试在空白处各填上适当的一条条件转移指令(两空白处要利用不同的标志位选用不同的条件转移指令)。VAR1DW××××VAR2DW××××┇MOVAX,VAR1MOVBX,VAR2XORAX,BX①JSNEXTTESTBX,8000H②JNENEXTMOVAX,0NEXT:……六、编程序(本大题共3小题,共22分)38.编一程序段将BUF字节单元中的数折成高低四位,并且将分离出的高四位和低四位分别放于BUF+1和BUF+2字节单元的低四位上。(5分)MOVAL,BUFMOVBUF+2,ALANDBUF+2.0FHMOVCL,4SHRAL,CLMOVBUF+1,AL39.编写一子程序,将AL中一位十六进制数转移为对应的ASCII码并用2号DOS功能调用显示出来,输入参数:被转换的十六进制数已在AL中。(5分)HEC1PROCCMPAL,l0JCK1ADDAL,7K1:ADDAL,30HMOVDL,ALMOVAH,2INT21HRETHEC1NEDP40.在数据段中,WEEK是星期一~星期日的英语缩写,DAY单元中有数1~7(1表示星期一,7表示星期日):WEEKDBˋMONˊ,ˋTUEˊ,ˋWEDˊ,ˋTHUˊ,ˋFRIˊ,ˋSATˊ,ˋSUNˊDAYDBX;数字1~7试编写一源程序,根据DAY的内容用单个字符显示功能调用(2号功能)去显示对应的英文缩写。(12分)DATASEGMENTWEEKDB‵MON′,‵TUE′,‵WED′,‵THU′,‵FRI′,‵SAT′,‵SUN′DAYDBXDATAENDSSTACK1SEGMENTPAPASTACKDW10HDUP(0)STACK1ENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXXORBX,BXMOVBL,DAYDECBLMOVAL,BLSALBL,1ADDBL,ALMOVCX.3LOP:MOVDL,WEEK[BX]MOVAH,02HINT21HINCBXLOOPLOPMOVAH,4CHINT21HCODE:ENDSENDSTART
本文标题:微机原理复习题6(含答案)
链接地址:https://www.777doc.com/doc-2469991 .html