微型计算机原理考试题.docx

上传人:rrsccc 文档编号:9271588 上传时间:2021-02-13 格式:DOCX 页数:97 大小:96.91KB
返回 下载 相关 举报
微型计算机原理考试题.docx_第1页
第1页 / 共97页
微型计算机原理考试题.docx_第2页
第2页 / 共97页
微型计算机原理考试题.docx_第3页
第3页 / 共97页
微型计算机原理考试题.docx_第4页
第4页 / 共97页
微型计算机原理考试题.docx_第5页
第5页 / 共97页
点击查看更多>>
资源描述

《微型计算机原理考试题.docx》由会员分享,可在线阅读,更多相关《微型计算机原理考试题.docx(97页珍藏版)》请在三一文库上搜索。

1、=汇编语言程序设计模拟试卷01= 一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干的括号内。每题2分,共20分) 1.若栈顶的物理地址是20100H,当执行完指令CALL AX后,栈顶的物理地址是( )。 A)20102H B)20101H C)200FFH D)200FEH 2.当执行完下列指令序列后,标志位CF和OF的值是( )。 MOV AH,85H SUB AH,32H A)0,0 B)0,1 C)1,0 D)1,1 3.JMP SI的目标地址偏移量是( )。 A)SI的内容 B)SI所指向的内存单元的内容 C)IP+SI的内容 D)IP+SI 4. 循

2、环指令LOOPNZ终止循环的条件是()。A、CX=0,且ZF=0 B、CX=0,或ZF=1C、CX0,且ZF=0 D、CX0,或ZF=1 5指出下列哪个数据在汇编语言中是非法的?( ) A)19BH+25D B)25+AL C)108-102Q D)101B*0ABH 6.已知AL, BX中各放一个无符号数,计算AL*BX的积,应采用下列程序段( ) A)MUL BX B)IMUL BX C)XOR AH, AH D)CBX MUL BX MUL BX 7.NEXT 是程序中某指令语句标号,下述四个程序段中,不能实现转移到NEXT 语句执行的是( ) A)JMP NEXT B)MOV BX ,

3、OFFSET NEXT JMP BX C)MOV BX, NEXT D)LEA AX, NEXT JNP BX JNP AX 8.DATA 的定义如下: DATA DW 1234H 现想把12H 取入到AL寄存器,可以实现该功能的程序段是( ) A)MOV AL, BYTE PTR DATA B)MOV AL, DATA+1 C)MOV AL, BYTE PTR DATA+1 D)MOV AX, DATA 9. 下面指令执行后,改变AL寄存器内容的指令是()。A、TESTAL,02H B、ORAL,ALC、CMPAL,BL D、ANDAL,BL 10. 在汇编语言程序的开发过程中使用宏功能的顺

4、序是()。A、宏定义,宏调用 B、宏定义,宏展开C、宏定义,宏调用,宏展开 D、宏定义,宏展开,宏调用 二、填空题(每空1分,共30分) 1. 设机器字长为16位,若N1=117,用二进制数和16进制数表示时分别为_B和_H。若N2= 117,则N2原= _ B,N2补=_H. 2. 指出下列各指令中源操作数的寻址方式,并计算指令执行后AX的内容。 其中:(DS)=3000H,(ES)=4000H,(SS)=5000H,(AX)=1200H,(BX)=1300H, (BP)=1400H,(SI)=1500H,(42000H)=1260H,(51400H)=1270H,(33800H)=1280

5、H。 MOV AX, 1250H ;_ 寻址方式,(AX)=_。 MOV AX,ES:2000H ;_ 寻址方式,(AX)=_。 MOV AX,BP ;_ 寻址方式,(AX)=_。 XCHG AX,BX+SI+1000H;_寻址方式,(AX)=_。 MOV AX,BX+2500H ;_ 寻址方式,(AX)=_。3.执行下列两条指令: MOV BX,9048H SUB BH,BL 执行后,各标志位分别为:CF=_,ZF=_,SF=_,OF=_,AF=_。 4.在存储器里以_为单位存储信息;在机器里,访问存储器都是以_为单位进行的,也就是说,机器是以_(奇或偶)地址访问存储器的 5.I/O端口有_

6、和_两种编址方式,8086采用_编址方式,最大I/O寻址空间是 _. 6. 执行下列指令,写出每条指令执行后右边所示的内容: MOV AL, 28H ADD AL, 68H ;(AL) =_,CF=_,AF=_。 DAA ;(AL)=_。 三、改错题(15分) 下列程序求一组带符号字节数据的平均值,数据的首地址为DATA,数据个数存放在CNT单元,但程序有逻辑错误,请将错误改正过来。 1 DSEG SEGMENT 2 DATA DB 100.-100,90,20,-120,60 3 CNT DW 0005H 4 AVER DB ? 5 DSEG ENDS 6 CSEG SEGMENT 7 AS

7、SUME CS:CSEG,DS:DSEG 8 MAIN PROC FAR 9 PUSH DS 10 XOR DX,DX 11 PUSH DX 12 MOV AX,DS 13 MOV DS,AX 14 MOV SI,OFFSET DATA 15 MOV CX,OFFSET CNT 16 AGAIN: ADD DL,SI 17 ADC DH,0 18 DEC CX 19 LOOP AGAIN 20 DIV CL 21 MOV AVER,AL 22 RET 23 MAIN ENDP 24 CSEG ENDS 25 END MAIN 四、简单程序设计题(每小题5分,共10分) 用尽可能少的指令实现完成

8、下列功能的程序片段。 1.假设在数据段中有一字符串string1,其长度为20,要求把它们传送到附加段string2中,假设DS和ES都初始化在同一数据段中。 2.DX:AX中双字数据算术右移n位,n值在CL中。 五阅读下列程序,回答后面的问题:(10分) DATASEGMENT DATA1DB85H,27H,4AH DATA2DB93H,87H,65H LEGHDW3 SUMDB0,0,0 DATAENDS CODESEGMENT ASSUMECS:CODE,DS:DATA START:MOVAX,DATA MOVDS,AX LEASI,DATA1 LEABX,DATA2 LEADI,SUM

9、 MOVCX,LEGH CLC AGAIN:MOVAL,SI ADCAL,BX MOVDI,AL INCSI INCBX INCDI LOOPAGAIN MOVAH,4CH INT21H CODEENDS ENDSTART 请回答: (1)该程序完成什么功能? (2)程序中的INCSI可否用指令ADDSI,1代替,为什么? (3)程序中的指令LEASI,DATA1可用指令()代替。 (4)CLC指令的目的是()。 六、程序设计题(要求:写出完整的汇编语言源程序,并给出适当的注释,15分) 设在数据段中有一字数组:3,5,15,23,37,49,52,65,78,99,105,并且已按从小到大的

10、顺序存储,该数组的首地址和末地址分别为Array_head和Array_end,要求编写程序,将数N=55插入该数组的正确位置,使得插入N后数组仍按从小到大的顺序存储。 Data Segment X DW ? Array_head DW 3,5,15,23,37,49,52,65,78,99 Array_end DW 105 N DW 55 Data Ends =汇编语言程序设计模拟试卷02= 一 填空(每空1分,共30分) 1225D()B()H 2已知X-1011011,求X补()。 3已知X补11010101,则X()D。 48086CPU在取指令时,会选取段寄存器()的值作为段基值,再

11、加上由()提供的偏移地址形成20位的物理地址。 5地址2000H:0480H,其物理地址是(),段地址是(),偏移量是()。 6按存储器的位置,可以将存储器分为和。 7汇编语言程序的建立及汇编过程为:先用( )产生源程序,然后用( )产生目标程序,最后用( 0产生可执行文件。 8执行下列两条指令: MOV BX,9048H SUB BH,BL 执行后,各标志位分别为:CF=( 0,ZF=( ),SF=( ),OF=( ),AF=( )。 9对于下面的数据定义: DATA1 DW 10 DATA2 DB 2,8 DATA3 DW 100 DUP(0) 请写出下列的MOV 指令分别被汇编后的指令形

12、式: MOV BX,(DATA1 LT 5) AND 20)OR (DATA1 GE 5) AND 30) ;_。 MOV SI, TYPE DATA2 ;_。 MOV CX,LENGTH DATA3 ;_。 MOV CX, SIZE DATA3 ;_。 10在存储器里以( )为单位存储信息;在机器里,访问存储器都是以( )为单位进行的,也就是说,机器是以( )(奇或偶)地址访问存储器的 11I/O端口有( )和( )两种编址方式,8086采用( )编址方式,最大I/O寻址空间是 ( ). 二 选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干的括号内。每小题2分,共20

13、分) 1用来存放即将执行的指令的偏移地址的寄存器是()。 A)SPB)IPC)BPD)CS 2源变址寄存器是()。 A)SIB)DIC)SPD)BX 3设SP1110H,执行PUSHAX后,SP中的内容为()。 A)SP1112HB)SP110EHC)SP1111HD)SP110FH 4语句DA1DB2DUP(3,5,7)汇编后,与该语句功能等同的语句是()。 A)DA1DB3,5,7 B)DA1DB2,3,5,7 C)DA1DB3,5,7,2 D)DA1DB3,5,7,3,5,7 5下面四个寄存器中,不能用来作为间接寻址的寄存器是()。 A)BXB)CXC)BPD)DI 6完成将BX清零,并

14、使标志寄存器CF清零,下面指令错误的是()。 A)SUB BX,BX B)XORBX,BX C)MOVBX,0 D)ANDBX,0000H 7下面数据传送指令中,正确的是()。 A)MOVBUF1,BUF2B)MOVCS,AX C)MOVCL,1000 D)MOVDX,WORDPTRBP+DI 8下面指令执行后,改变AL寄存器内容的指令是()。 A、TESTAL,02H B、ORAL,AL C、CMPAL,BL D、ANDAL,BL 9完成将有符号数BX的内容除以2的正确指令是()。 A)SHRBX,1B)SARBX,1 C)RORBX,1D)RCRBX,1 10指令LOOPZ的循环执行条件是

15、()。 A)CX0且ZF0B)CX0或ZF0 C)CX0且ZF1D)CX0或ZF1 三 改正下列程序中的错误(直接在程序中改正)(12分) 1下面是将内存一字节数据高4位和低4位互换并放回原位置的程序,找出错误并改正。 1 DATASEGMENT 2DD1DB23H 3 DATAENDS 4 CODESEGMENT 5 ASSUMECS:CODE,DS:DATA 6 START:MOVAX,DATA 7 MOVDS,AX 8 LEASI,OFFSETDD1 9 MOVAL,SI 10 MOVCL,4 11 RCRAL,CL 12 MOVSI,AL 13 MOVAH,4CH 14 INT21H

16、15 CODEENDS 16 ENDSTART 2下面的程序是将内存单元一字节数据乘以10放回单元的程序,找出错误并改正。 1 DATASEGMENT 2DADW34 3 DATAENDS 4 CODESEGMENT 5ASSUMECS:CODE,DS:DATA 6 START:MOVAX,DATA 7 MOVDS,AX 8 MOVSI,OFFSETDA 9 MOVAL,SI 10MUL10 11MOVSI,AX 12MOVAH,4CH 13INT21H 14 CODEENDS 15ENDSTART 四 程序分析(12分) 1 执行完程序后,回答指定的问题。 MOVAX,0 MOVBX,2 M

17、OVCX,50 LP:ADDAX,BX ADDBX,2 LOOPLP 问:(1)该程序的功能是: (2)程序执行完成后,(AX)()。 2 执行完程序后,回答指定的问题。 BLOCKDB20H,1FH,08H,81H,OFFH RESULTDB? START:LEASI,BLOCK MOVCH,0 MOVCL,SI DECCX INCSI MOVAL,SI LOP1:CMPAL,SI+ JLENEXT MOVAL,SI+1 NEXT: INC SI LOOP LOP1 MOV RESULT,AL HLT 问:(1)该程序的功能是: (2)该程序的循环次数是()。 五、填语句(12分)。 1 从

18、键盘输入一个十六进制数码,转换成二进制数放入HEXNUM单元,在横线上填入适当的语句。 HEXNUM DB ? MOV AH, INT 21H CMP AL,39H _ NEXT SUB AH, NEXT:SUBAL,30H MOVHEXNUM,_ HLT 六、程序设计题(要求:写出完整的汇编语言源程序,可以上机调试运行,并给出适当的注释,14分) 知在内存中从BLOCK单元起存放有20个带符号字节数据,统计其中负数的个数并放入COUNT单元。 DATASEGMENT BLOCKDB7,1,12,-90,-70,34,-1,56,45,-12 DB3,-4,23,0,12,11,-9,-8,6

19、7,-56 CN EQU$-BLOCK COUNTDB? DATAENDS =汇编语言程序设计模拟试卷03= 一 填空题(每空1分,共20分) 1计算机系统由_和_组成。 2计算机语言是_ 与_ 之间交流信息的工具,计算机语言可分为三类:_ 、_ 、_ 。 328.625D_ B_ Q_ H。 48086CPU是_ 位微机,8088CPU是_ 位微机,80386CPU是_ 位微机。 5在下列空白处,填上一个属于同类的运算符号: (1) 、*、/、SHL、SHR (2) AND、OR、NOT (3) EQ、NE、LT、LE、GT、 6. 在8086/8088中,存储器以_为单位存储信息;在机器里

20、,访问存储器都是以_为单位进行的,也就是说,机器是以_(奇或偶)地址访问存储器的。 7已知X补11010101,则X_D。 二 选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干的括号内。每题2分,共20分) 1以8086/8088为CPU的微机内存最大容量为()。 A)4MB B)1MB C)640KBD)64KB 2与1A.5H不等的数据是()。 A)26.3125D B)11010.0101B C)32.5Q 38位二进制补码表示的整数数据范围是()。 A)-128127B)-127127 C)-128128 D)-127128 4下列四个寄存器中,不允许用传送指令

21、赋值的寄存器是()。 A)CSB)DSC)ESD)SS 5指令MOV100SIBP,AX的目的操作数的隐含段为()。 A)数据段B)堆栈段C)代码段D)附加段 6确定下列哪些数据在汇编语言中是非法的()。 A)19AHB)1372C)ABH D)145 7若栈顶的物理地址为20100H,当执行完指令PUSHAX后,栈顶的物理地址为()。 A)20102HB)20101HC)200FFHD)200FEH 8当执行完下列指令序列后,标志位CF和SF的值是()。 MOVAL,0C4H ADDAL,9DH A)0,0B)0,1C)1,0D)1,1 9JMPWORDPTRBX转移的目标地址是()。 A)

22、BX中的内容B)SPBX的和 C)IPBX之和D)BX指示的内存单元的内容 108086/8088CPU的I/O指令采用间接寻址时,可使用的间址寄存器是()。 A)BXB)DXC)SID)DI 三 判断题,若错误,请说明原因或改正(判断每题的正误,对的在题后括号内画“”,错的画“X”)(20分,) 1在8位补码表示中,10000000表示的真值为-0。( ) 2奇偶标志位PF,当运算结果的低8位中有偶数个1时,被置为0。( ) 3CS、DS、ES和SS段都可以存放指令代码。() 4INC AX() 5MOVDI,SI() 6两数相等时转移可用JZ指令。() 7OUTBX,AL() 8当IF0时

23、,CPU不能响应NMI中断。() 9已知AL、BX为带符号数,计算AL*BX的乘积,使用下列程序段。 CBW IMUL BX() 10在8位补码表示法中,对-128求补会产生溢出。() 四 程序分析(10分) 1试分析下列程序段。 ADDAX,BX JNOL1 JNCL2 SUBAX,BX JNCL3 JNOL4 JMPSHORTL5 如果AX和BX的内容给出如下: AXBX (1)14C680DC (2)B56854B7 (3)42C8608D (4)D0239FD0 (5)9FD0D023 问该程序分别在上面5种情况下执行后,程序转向哪里?请直接标注在题后。 五 宏定义如下,试展开下面的宏

24、调用。(每题5分,共10分) 1Dfmess1 MACRO LAB,NUM,NAME LAB&NUM DB Hello MR.&NAME,0DH,0AH,0 ENDM ;宏调用语句: Dfmess1 Mess,1,Assembly ;宏展开为: _ 2 Dfmess2 MACRO MESS DB &MESS,0DH,0AH,0 ENDS ;宏调用语句: Dfmess2 90 Dfmess2 %(10+52) 宏展开为: _ _ 六 写出实现下列功能的程序片段。(5分) 若要测试AL寄存器中第2位是否为1(但不能改变AL的值),如为1则转移到EXIT去执行,否则将其第5、3位变反。 七 程序设计

25、(要求写出完整的汇编语言源程序,包括段的定义,寄存器保护等,并给出适当的注释,15分) 已知两个无符号字数据X、Y分别存放在ADRX和ADRY单元,编制程序,若X是Y的倍数,则在显示器上显示0,否则显示1。 Data Segment Array_end DW 105 N DW 55 Data Ends =汇编语言程序设计模拟试卷04= 一 填空(每空1分,共30分) 1冯诺依曼型计算机将计算机的硬件部分分为五大功能部件,分别是、。 2119DBH 3已知X-1011011,求X反,X补。 4十进制数45的组合BCD码为BCD。 5执行部件EU的主要功能是:_。 68086CPU在取指令时,会选

26、取寄存器的值作为段基值,再加上由_提供的偏移地址形成20位的物理地址。 7地址2000H:0480H,其物理地址是,段地址是,偏移量是。 8将汇编语言源程序翻译成目标程序的过程叫。 9执行下列两条指令: MOV BX,7896H ADD BH,BL 执行完上述指令后,各标志位分别为: CF=_,ZF=_,SF=_,OF=_,AF=_。 10指出下列各指令中源操作数的寻址方式,并计算指令执行后AX的内容。 其中:(DS)=3000H,(ES)=4000H,(SS)=5000H,(AX)=1200H,(BX)=1300H, (BP)=1400H,(SI)=1500H,(42000H)=1999H,

27、(51400H)=2000H,(33800H)=2001H。 MOV AX, 1250H ;_寻址方式,(AX)=_。 MOV AX,ES:2000H ;_寻址方式,(AX)=_。 MOV AX,BP ;_寻址方式,(AX)=_。 XCHG AX,BX+SI+1000H ;_寻址方式,(AX)=_。 二 选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干的括号内。每题2分,共30分) 1目的变址寄存器是()。 A)SIB)DIC)SPD)BX 2下列常用寻址方式中,()属于立即寻址,()属于寄存器间接寻址,()属于变址寻址,()属于直接寻址。 A)MOVAX,ES:200

28、0H B)MOVBX,AX C)MOVAX,2000HD)MOVAX,BX+3AH E)MOVDI+12H,AXF)MOVAX,BX 3设SP1110H,执行PUSHAX后,SP中的内容为()。 A)SP1112H B)SP110EH C)SP1111HD)SP110FH 4下列指令中错误的指令为()和()。 A)MOVAX,CS B)MOVDS,1500H C)MOVSI,BX D)MOV2000H,BL E)MOVDI32H,1845HF)MOVAX,BX 5语句DA1DB 2DUP(3,5),7汇编后,与该语句功能等同的语句是()。 A)DA1DB3,5,7B)DA1DB2,3,5,7

29、C)DA1DB3,5,3,5,7D)DA1DB3,5,7,3,5,7 6下面四个寄存器中,用来作为I/O端口间接寻址的寄存器是()。 A)BXB)DXC)BPD)DI 7完成将BX清零,并使标志寄存器CF清零,下面指令错误的是()。 A)SUBBX,BXB)XORBX,BX C)MOVBX,0 D)ANDBX,0000H 8下面数据传送指令中,正确的是()。 A)MOVBUF1,BUF2B)MOVCS,AX C)MOVCL,1000D)MOVDX,WORDPTRBP+DI 9完成将有符号数BX的内容乘以2的正确指令是()。 A)SHRBX,1B)SARBX,1 C)SALBX,1D)RCRBX

30、,1 10指令LOOPNZ的循环执行条件是()。 A)CX0且ZF0B)CX0或ZF0 C)CX0且ZF1D)CX0或ZF1 11下列寄存器中不能作为间址寄存器的是()。 A)SIB)DIC)CXD)BX 三 改错题(16分) 下列程序执行后,应将LIST数组中的最大值存入MAX单元,数组元素为无符号字数据,数据个数在CNT单元中。现已知程序有错,请改下,使之完成预定功能。 1 DSEG SEGMENT 2 LISTDW1,200,30,400,0,7,4000 3 CNTDB7 4 MAXDW? 5 DSEG ENDS 6 CSEG SEGMENT 7 ASSUMEDS:DSEG,DS:CO

31、DE 8 FMAX: MOVDX,DSEG 9 MOVDS,AX 10 LEASI,LIST 11 MOVCX,CNT 12 CLD 13 LODSW 14 DECCX 15 CMPAL,SI 16 JLESMALL 17 LODSW 18 SMALL: INC SI 19 INC SI 20 DEC CX 21 LOOP AGAIN 22 MOV MAX,SI 23 MOV AH,4CH 24 INT 21H 25 CSEG ENDS 26 END START 四 程序分析(9分) 1执行完程序后,回答指定的问题。 MOV AX,0 MOV BX,2 MOV CX,50 LP: ADD AX,BX ADD BX,2 LOOP LP 问:(1) 该程序的功

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1