《山东交通学院成人学历汇编语言期末考试题及参考答案.docx》由会员分享,可在线阅读,更多相关《山东交通学院成人学历汇编语言期末考试题及参考答案.docx(8页珍藏版)》请在第一文库网上搜索。
1、汇编语言A复习题一、单选题(每小题3分,共45分)1 .十进制数“9转换为二进制数是多少(B)oA.11010011.B.01110111.C.10000011.D.00101111.2.十进制数211转换为十六进制数是多少(A)0A.D3H.B.77H.C.83H.D.2F.3.有符号数+47转换为二进制数是多少(D)0A.11010011B.01110111.C.10000011.D.001011114.8086系统执行传送指令MOV时(A)。A.不影响标志位B.影响DF方向标志C.影响SF符号标志D.影响CF进位标志5.表示过程定义结束的伪指令是(A)A.ENDPB.ENDSC.ENDD
2、.ENDM6.条件转移指令JNBE产生转移的条件是(B)。A.CF=OANDZF=IB.CF=OANDZF=OC.CF=IANDZF=ID.CF=IANDZF=O7.执行下列指令语句,则AX=(C)oMOVA1,9511CBWA.0095HB.0F95HC.0FF95HD.9095H8.下列指令执行后既能使AX=O同时又使CF=O,OF=O的是(CA.ORAX,XB.ANDX,AXC.XORX,AXD.TESTX,09.执行指令MOVAX,WORDPTRDA2+1后AX中的内容是(C).A.ADB.BCC.CBD.DA二、简答题(每小题10分,共40分)1 .设DS=IOOOH,ES=2000
3、H,SS=3500H,SI=OOAOH,DI=0024,BX=O1OOH,BP=0200H,数据段中VA1的偏移地址为0030H,试说明下列源操作数字段的寻址方式是什么?物理地址是什么?(1) MOVAXt100H(2) MOVAX,ES:BX(3) MOVAX,BP(4) MOVAX,BX+10(5) MOVAX,BX+DI+VA1答:(1)直接寻址方式,物理地址:Io1OOH(2)寄存器间接寻址方式,物理地址=2010OH(3)寄存器间接寻址方式,物理地址=3520OH(4)寄存器相对寻址方式,物理地址=IOIIoH(5)相对基址变址寻址方式,物理地址=10154H2.通过示意图说明下列数
4、据定义程序段从OOOOH开始对内存单元的分配情况。(写出X和丫的地址,并画出每个单元中所存内容,己知a的ASCII码为6111,A,的ASCII码为41H)datasegment;数据段Xdb9,20Hdb2dup(100),?YdbaBCdataends答:X=0000H,Y=0005H,从X开始依次存放39H,20H,64H.64H,61H,42H,43H3.写出下列程序段的作用。testdx,OOOFhjzzeromovax,1jmpend1zero:movax,0cnd1:.exit0答:判断DX低四位是否为全为0(4分),全为。则AX=O(3分),否则AX=I(3分)4、写程序运行结
5、果。1)MOV1,39H2)MOVA1,45hMOVBH,27HORA1,31HADDA1,BHDAA运行后AH=()运行后A1=()ZF=()CF=()CF=()答:(1)A1=66H(2)CF=0(3)AH=75H(4)ZF=0(5)CF=0编写程序:记录BX中1的个数。答:.modeIsma11.stack.datanumdb0.code.startupmovb.82hxoraI.a1again:cmpb,0;testbx,Offffhjznextsh1bt1jncagaininca1jmpagainnext:movnum.;.exit0end答案不唯一,对每一位是否为1的处理逻辑正确得
6、4分,对位数的移动逻辑正确得4分。格式、语法正确得2分,相同错误不重复扣分。汇编语言B复习题一、单选题(每小题3分,共45分)C.10000011C)C.83HC).C.100000111 .十进制数211转换为二进制数是多少(A.11010011B.011101112 .十进制数131转换为十六进制数是多少(A.D3HB.77H.3 .有符号数T25转换为二进制数是多少(A.11010011B.01110111)D.00101111D.2FD.001011114 .用REPESCASB指令对字符串进行扫描,如CXO时,扫描结束,那么表示(D)oA.在字符串中遇上第一个A1中指定的字符B.在字
7、符串中有一个A1中指定的字符C.在字符串中有个不是A1中指定的字符D.在字符串中遇上第个不是A1中指定的字符5 .设(SS)=338AH,(SP)=45011,执行PUSHBX和PUSHF两条指令后,堆栈顶部的物理地址是(A)。A.33CECHB.33CF2HC.33CF4HD.33CE8H6 .指令SCASB操作数的段地址一定在(C)寄存器中。A.CSB.DSC.ESD.SS7 .下列指令中有语法错误的是(D)A.PUSHAXB.PUSH20H+SI+BXC.PUSHCSD.POPCS8 .D1DWAB,CD,EF,GH执行指令MOVAX,DA1+3后AX中的内容是(D)A.EFB.CDC.
8、BCD.FC9 .有语句:COUNTEQU256,下列叙述中,正确的是(C)A.COUNT是变量B.COUNT占用一个字节存储单元C.COUNT是符号常数D.COUNT占用一个字存储单元二、简答题(每小题10分,共40分)1.分别编写-一条指令完成如下功能:(每题2分,共计10分)(1)把AX寄存器和DX寄存器的内容相加,结果存入DX寄存器。(2)用寄存器BX和SI的基址变址寻址方式把存储器的一个字节与D1寄存器的内容相加,并把结果送到D1中。(3)用BX和位移量0C5H的寄存器相对寻址方式把存储器中的一个字和CX寄存湘的内容相加,并把结果送回存储器中。(4)把9542H存入地址为200OH的
9、存储单元中。(5)从地址为3FH的端口读入一个字数据。答:(1)ADDDX1AX(2) ADDD1,BX+SI(3) ADDBX+0C5H,CX(4) MOVWORDPTR2000H,9542H(5) INAX.3FH说明下2.已知DS=IOOOH,BX=0200H,SI=0002H,存储单元口0200H10205H依次存放12H、34H、56H、78H、4CH、列每条指令执行后AX寄存器的内容。(每题2分,共计10分)(1) MOVAX,1200H(2) MOVAX,BX(3) MOVAX,BX(4)MOVAX,BX+SI(5)MOVAXfBX+SI+0002H答:G)1200H(2)020
10、0H(3)3412H(4)7856H(5)B74CH3 .阅读下列程序段,写出语句的注释以及程序执行后DA2各字节中的数据(注释5分,结果5分,共计10分)diDB4bcdefghi,DA2DB9DUP(O)aIIMOVBX,DSMOVES,BX1EASI,DA11EADI.DA2MOVCX,9C1D1OP:1ODSBSUBA1,10HSTOSB1OOP1OP答:程序执行后DA2各字节中的数据:1,2,3,4,5,6,7,8,9或(31H39H)testBX,(jz(zero:(OK:.exit0答:(1)OfOOOh(2)zero4 .补充代码,实现:当BX高4位全为。时,使AX=0;否则使AX=I1)(每空2分,共计10分))(3)movAX.1(4)jmpOK(5)movAX,0编写程序:计算字符串34$DBD$798$中的$的个数。答:.modeIsmaII.datastringdb34$DBD$798$countequ$-string;COUnt=$-String.stack.code.startupmovex,count1easi,stringxorb,bmova1.Sstrc:cmpaI,sijnznext(写出完整的程序格式)incbxnext:incsi1oopstrc.exit0End