您好,欢迎访问三七文档
《汇编语言程序设计》试卷模拟试卷一一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。1.用户为了解决自己的问题,用汇编语言所编写的程序,称为()A)目标程序B)源程序C)可执行程序D)汇编程序2.指令指针寄存器是()A)BPB)IPC)SPD)PSW3.当堆栈为空时,如SS=0805H,SP=40H,栈底字单元的物理地址是()A)08090HB)08089HC)0808EHD)08450H4.下面指令中,源操作数的寻址方式为立即寻址的是()A)MOVAX,OFFSETAB)MOVAX,AC)MOVAX,A+1D)MOVAX,A[BX]5.下面各传送指令中,正确的是()A)MOV[DI],[SI]B)MOV[DX+DI],ALC)MOVAL,BXD)MOVWORDPTR[BX],0100H6.已知CS=2300H,DS=2400H,执行下列指令序列后,CS和DS值是()PUSHCSPOPDSA)CS=0B)CS=2400HC)CS=2400HD)CS=2300HDS=2300HDS=2300HDS=2400HDS=2300H7.执行下面指令语句,则AX=()MOVAL,95HCBWA)0095HB)0F95HC)0FF95HD)9095H8.当执行指令ADDAX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是()A)表示结果中含1的个数为偶数B)表示结果中含1的个数为奇数C)表示该数为偶数D)表示结果中低八位含1的个数为偶数9.设AX=1000HNEGAXNOTAX执行上述指令后,正确的结果是()A)AX=1001HB)AX=0FFFHC)AX=1000HD)AX=0111H10.完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是()A)MOVAL,00HB)ANDAL,00HC)XORAL,ALD)SUBAL,AL11.将CX寄存器低4位清零的正确指令是()A)ANDCX,0F0HB)ANDCX,0FFF0HC)ANDCX,1110HD)MOVCX,012.执行后使BX=0的同时也使CF=0,OF=0的指令是()A)XORBX,BXB)ORBX,BXC)ANDBX,BXD)CMPBX,BX13.在串操作指令前使用重复前缀指令REPE,终止串的重复操作条件是()A)CX=0且ZF=0B)CX=0且ZF=1C)CX=0或ZF=0D)CX=0或ZF=114.条件转移指令JBE产生转移的条件是()A)CF=0ORZF=0B)CF=0ORZF=1C)CF=1ORZF=0D)CF=1ORZF=115.比较BX和SI中的两个存储器地址,若BX≥SI转向HIGH的正确指令是()A)JAEHIGHB)JBEHIGHC)JEGHIGHD)JLEHIGH16.循环指令Loop规定循环次数必定在寄存器()A)DX中B)DL中C)CX中D)CL中17.DECWORDPTR[BX]指令中的操作数的数据类型是()A)字B)双字C)字节D)四字18.下面指令执行后,变量DAB中的内容是()DAWDW2A05HDABDB0FAH:MOVAL,BYTEPRTDAWSUBDAB,ALA)0DAHB)0FAHC)0F5HD)0D0H19.使用汇编语言的伪操作命令定义()VALDB2DUP(1,2,3DUP(3),2DUP(1,0))则在VAL存储区内前十个字节单元的数据是A)1,2,3,3,2,1,0,1,2,3B)1,2,3,3,3,3,2,1,0,1C)2,1,2,3,3,2,1,0,2,1D)1,2,3,3,3,1,0,1,0,120.设NUM=60H,表达式(NUMLT60HAND30)OR(NUMGE60HAND40)的值是()A)0B)30HC)40D)0FFFFH二、填空题(本大题共5小题,每空1分,共20分)1.INTEL8088管理的存储器空间最大容量为______________,I/O端口地址空间最大容量为_____________。2.在8086/8088汇编语言中,有五条串操作指令,其中搜索字符串指令的助记符是______。3.8086/8088存储器分四个段,这四个段的段名所对应的段寄存器分别是________、________、________、________。4.现有(AX)=2000H,(BX)=1200H,(DS)=3000H,(DI)=0002H,(31200H)=50H,(31201H)=02H,(31202H)=40H,(CF)=0。请写出下列各条指令独立执行完后有关寄存器及存储单元的内容,并指出标志位ZF、CF的值。①ADDAX,1200H;问AX=________HZF=________②SUBAX,BX;问AX=________HZF=________③MOVAX,[BX];问AX=________HCF=________④NEGWORDPTR[1200H];问(31200H)=________HCF=________5.设(DS)=2200H,(BX)=1000H,(SI)=0100H,偏移量D=0A2B1H,试计算出下列各种寻址方式下的有效地址,填入横线上。①使用D的直接寻址________②使用BX的寄存器间接寻址________③使用BX和D的寄存器相对寻址________④使用BX、SI和D的相对基址变址寻址________⑤使用BX、SI的基址变址寻址________三、简答题(8分)设当前(SP)=0100H,(SS)=0300H,(PSW)=0240H,在内存段地址为0900H及偏移地址为00A0H的单元中有一条中断指令INT11H(该指令占两个字节),试问执行这条INT11H指令后,SP、CS、IP、PSW的内容是什么?栈顶的三个字是什么(画出堆栈示意图)?PC机内存中的一段数据如下:0000:0040B3188ACC4DF800F0--41F800F0C5188ACC0000:005039E700F0A0198ACC--2EE800F0D2EF00F08086CPU中PSW内容如下:1514131211109876543210OFDFIFTFSFZFAFPFCF四、程序分析题(本大题共3小题,共20分)1.阅读下面的程序段(6分)NUMDB?MOVAH,1INT21HCMPAL,39HJBENEXTSUBAL,7NEXT:SUBAL,30HMOVNUM,AL上述程序段运行后,(1)若输入’F’,则(NUM)=_____(用二进制表示)(2)若输入’8’,则(NUM)=_____(用二进制表示)(3)该程序段的功能是_____。2.阅读下面的程序段(6分)MOVCX,16MOVBX,0MOVDX,1AG:TESTAX,DXJZNEXTINCBXNEXT:SHLDX,1LOOPAG请回答:(1)该程序段的功能是什么?(2)若程序执行前(AX)=1234H,程序执行完后(BX)=3.阅读下面的程序段(8分)BUF1DB-1,2,-3,4,-5,6,-7,8,-9BUF2DB9DUP(0)┇XORBL,BLMOVSI,0MOVCX,9LOP:MOVAL,BUF1[SI]TESTAL,80HJZKINCBLNEGALK:XORAL,01HMOVBUF2[SI],ALINCSILOOPLOP……(1)写出程序运行后BUF2中的各字节数据(2)BL=______________五、程序填空题(本大题共2小题,每小题6分,共12分)1.下面程序段是判断两个存储单元是否同为正数,如是,则AX置全0,否则AX置非0。试在空白处各填上适当的一条条件转移指令(两空白处要利用不同的标志位选用不同的条件转移指令)。VAR1DW××××VAR2DW××××┇MOVAX,VAR1MOVBX,VAR2XORAX,BX①TESTBX,8000H②MOVAX,0NEXT:……2.已知数据段DAT单元存放某一数N(-6≦N≦6)下面的程序段用查表法求数N的平方值,结果送SQR单元,请将程序填写完整。TABLEDB0,1,4,9,16,25DATDBNSQRDB?LEABX,TABLEMOVAL,DAT①JGENEXT②NEXT:XLATHLT六、编制程序题(本大题共2小题,共20分)1.在N1和N2两数据区中,分别有10H个带符号数。试编制一源程序,找出对应项中较小的数据,并将这些较小的数据存入N3数据区中。DATASEGMENTN1DB××,××,××……N2DB××,××,××……N3DB10HDUP(0)DATAENDS2.编程序计算SUM=∑ai=a1+a2+...+a20,已知a1......a20依次存放在以BUF为首址的数据区,每个数据占两个字节,和数SUM也为两个字节。(要求用循环结构编写,循环控制采用计数控制)。DATASEGMENTBUFDW××,××,××,……SUMDW?DATAENDS模拟试卷一参考答案一、单项选择题(本大题共20小题,每小题1分,共20分)1.B2.B3.A4.A5.D6.D7.C8.D9.B10.A11.B12.A13.C14.D15.B16.C17.A18.C19.D20.C二、填空题(本大题共5小题,每空1分,共20分)1.1MB64KB2.SCAS3.CSDSESSS4.①3200H0②0E00H0③0250H0④0B0H15.①0A2B1H②1000H③0B2B1H④0B3B1H⑤1100H三、简答题(8分)解:INT11H指令的中断码为11H,在中断向量表中得到中断服务程序入口地址为F000H:F84DH。INT11H指令执行后,(SP)=00FAH,(CS)=0F00H,(IP)=0F84DH,(PSW)=0040H堆栈中内容如下图:0300H:00FAHA2H0300H:00FBH00H0300H:00FCH00H0300H:00FDH09H0300H:00FEH40H0300H:00FFH02H四、程序分析题(本大题共3小题,共20分)1.(1)00001111(2)00001000(3)将输入的十六进制数码的ASCII码转化为对应的数值。2.(1)检查AX寄存器中保存的16位二进制数据中“1”的个数(2)0005H3.(1)0,3,2,5,4,7,6,9,8(2)05H五、程序填空题(本大题共2小题,每小题6分,共12分)1.①JSNEXT②JZNEXT2.①CMPAL,0②NEGAL六、编制程序题(本大题共2小题,共20分)1.CODESEGMENTASSUMECS:CODE,DS:DATABEGIN:MOVAX,DATAMOVDS,AXMOVBX,0MOVCX,10L1:MOVAL,N1[BX]MOVAH,N2[BX]CMPAL,AHJGL2MOVN3[BX],ALJMPL3L2:MOVN3[BX],AHL3:INCBXLOOPL1MOVAH,4CHINT21HCODEENDSENDBEGIN2.程序段:MOVAX,0MOVBX,OFFSETBUFMOVCX,20LOP:ADDAX,[BX]INCBXINCBXLOOPLOPMOVSUM,AX模拟试卷二一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。1.将汇编语言的程序翻译成机器码程序的实用程序是()A)编译程序B)汇编程序C)解释程序D)目标程序2.标志寄存器中属于控制标志位的是()A)DF,OF,SFB)DF,IF,TFC)OF,CF,PFD)AF,OF,SF3.8088/8086存储器分段,每个段不超过()A)64K个字B)32K个字节C)1M个字节D)64K个字节4.已知DS=12A0H,ES=22A0H,SS=33A0H,BP=0174H,指令“MOVAX,DS:[BP]”中源操作数的物理地址是()A)12A074HB)22B74HC)33B74HD)12B
本文标题:汇编语言模拟试卷
链接地址:https://www.777doc.com/doc-2156523 .html