《微机原理与汇编语言复习题及参考答案.doc》由会员分享,可在线阅读,更多相关《微机原理与汇编语言复习题及参考答案.doc(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流微机原理与汇编语言复习题及参考答案.精品文档.微机原理与汇编语言复习题及参考答案 CSDN下载频道提供,请尊重原创一、选择题:1. 设AL=0A8H,CX=2,CF=1,执行RCL AL,CL指令后,AL中的值为 ( )A. 51H B. A3H C. 47H D. 0C5H2. 下述指令的执行结果是 ( )MOV AL,0C2HAND AL,0F0HA.AL=40H B.AL=20H C.AL=0C0H D.AL=0E0H3. 完成对CL寄存器的内容乘以4的正确操作是 ( )A.ROL CL,1 B.MUL 4 C.SHL CL,1 D.M
2、OV CL,2ROL CL,1 SHL CL,1 SHL CL,CL4. 无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,应执行的指()A. ADDBH,01H B. ORBH,01H C. XORBH,01HD. TESTBH,01H5. 假设(AL)= 37H,(BL)= 95H,执行指令IMUL BL后(AX)= ( )A. 0E903H B. 2003H C. 0DBBH D. 2008H6. 下面的数据传送指令中,错误的操作是 ( )A. MOV SS:BX+DI,1000H B. MOV DX,1000HC. MOV WORD PTRBX,1000H D. MOV DS
3、,2000H7. CPU要访问的某一存储单元的实际地址称 () A段地址B偏移地址C物理地址D逻辑地址8. 某存储单元的物理地址是12345H,可以作为它的段地址有 ()A2345HB12345H C12340HD1234H9. 计算机能直接识别的的语言 ( )A汇编语言B机器语言 C高级语言D低级语言10. 下列指令中操作数在代码段中的是 ( )AMOV AL,25H BADD AH,BL CINC DS:25 DCMP AL,BL11直接、间接、立即三种寻址方式指令的执行速度,由决至慢的排序为 ( )A直接、立即、间接 B直接、间接、立即C立即、直接、间接 D不一定12若栈顶的物理地址是2
4、010011,当执行完指令CALL AX后,栈顶的物理地址是( )A2010211 B2010111 C200FFH D200FEH13当执行完下列指令序列后,标志位CF和OF的值是 ( )MOV AX,OC126HMOV BX,5AB7HSUB AX,BXA0,0 B0,1 C1,0 D1,114. JMP BX的目标地址偏移量是(D)。ASI的内容 BSI所指向的内存字单元之内容CIP+SI的内容 DIP+SI15.指令MOV AX,10BX的源操作数的寻址方式是 ( )A基址寻址 B寄存器寻址 MOV AX,BXC变址寻址 AX【BX+DI】(只能用BX,BP;SI和DI) D寄存器相对
5、寻址16指出下列哪个数据在汇编语言中是非法的。 ()A19BH+25D B25+ALC108-102Q D101B*OABH17用来存放即将执行的指令的偏移地址的寄存器是 ( )ASP BIP CBP DCS18源变址寄存器是( )ASI BDI CSP DBX19.设SP=1200H,执行POP AX后,SP中的内容为 ( )ASP=1112H BSP=11OEH CSP=1111H DSP=11OFH20数字6704不可能是 ( )A六进制数 B十进制数C十二进制数 D十六进制数21下面四个寄存器中,不能用于间接寻址的寄存器是 ( )ABX BAX CBP DDI22若(BX)=OCA8H
6、,则执行指令MOV CL,8ROR BX,CL后,(BX) ( )AOCA8H B8ACOH COA80CH DOA8COH23.下面数据传送指令中,正确的是 ( )AMOV DS,ES BMOV AL,WORD PTR BX+DICMOV AL,BYTE PTR SI+DI DMOV CX,SI24下列哪一种寻址方式最快? ( )A立即寻址 B直接寻址C寄存器寻址 D寄存器间接寻址25寄存器间接寻址中,操作数在 ( )A通用寄存器 B堆栈C主存单元 D段寄存器26在顺序结构的流程图中,不包含有 ( )A起始框 B终止框C判断框 D处理框27以8086/8088为CPU的微机内存最大容量为 (
7、 )A4MB B1MBC640KB D64KB28与lA.5H不等的数据是 ( )A26.3125D B11010.0101BC32.5Q D10110.0100B298位二进制补码表示的整数数据范围是 ( )A-128127 B-127127C-128128 D-12712830下列四个寄存器中,不允许用传送指令赋值的寄存器是 ( )ACS BDSCES DSS31指令MOV 100SIBP,AX的目的操作数的隐含段为 ( )A数据段 B堆栈段C代码段 D附加段32运算型指令的寻址和转移型指令的寻址,其不同点在于 ( )A前者取操作数,后者决定程序的转移地址B后者取操作数,前者决定程序的转移
8、地址C两者都是取操作数D两者都是决定程序的转移地址33设AL=0A8H,CX=2,CF=1,执行RCL AL,CL指令后,AL= ( )A51H BA3H C47H D0C5H34目的变址寄存器是 ( )ASI BDI CSP DBX35下列常用寻址方式中,哪种属于立即寻址 ( )AMOV AX,ES:2000H BMOV BX,AXCMOV AX,2000H DMOV AX,BX+3AH36设SP=1110H,执行PUSH AX后,SP中的内容为 ( )ASP=1112H BSP=110EHCSP=I111H DSP=110FH37下列指令中错误的指令为 ( )AMOV AX,CS BMOV
9、 DS,1500HCMOV SI,BX DMOV 2000H,BL38语句DA1 DB 2 DUP(3,5),7 汇编后,与该语句功能等同的语句是 ( )ADA1 DB 3,5,7 BDA1 DB 2,3,5,7CDA1 DB 3,5,3,5,7 DDA1 DB 3,5,7,3,5,739下面四个寄存器中,用来作为I/O端口间接寻址的寄存器是 ( )ABX BDX CBP DDI40下列哪一种寻址方式最快? ( )A立即寻址 B直接寻址 C寄存器寻址 D寄存器间接寻址41在串处理指令REPNZ CMPSB表示在 ( )A当(CX)不等于0且ZF等于1的情况下,重复执行串搜索B当(CX)不等于0
10、且ZF等于0的情况下,重复执行串搜索C当(CX)不等于0且ZF等于1的情况下,重复执行串比较D当(CX)不等于0且ZF等于0的情况下,重复执行串比较42. 若(DX)=0A74CH,(CL)=5,则指令SAR DX,CL执行后,(DX)= ( )A053AH B653AHC0FD3AH D740AH43.完成将有符号数BX的内容乘以2的正确指令是 ( )ASHR BX,1 BSAR BX,1CSAL BX,1 DRCR BX,144指令LOOPNZ的循环执行条件是 ( )ACX 0且ZF=0 BCX 0或ZF=0CCX 0且ZF=1 DCX 0或ZF=145下列寄存器中不能作为间址寄存器的是
11、( )ASI BDI CCX DBX46JMP WORD PTRBX转移的目标地址是 ( )ABX中的内容 BSP+BX之和CIP+BX之和 DBX指示的内存单元之内容二、填空题:1. 计算机中的CPU由_ _和_ _组成。2. (513.85)10 = ( _ _ )16 ; (105.3)8 = ( _ )10 。3. 假定机器的字长为8位,且最高位为符号位,则(-127)10的原码用8位二进数表示为_,其补码用8位二进数可表示为_。4. I/O端口有两种编址方式,分别是 _ _ 和 _ _。5. 8086/8088的中断系统能够处理 _256_ 个不同的中断源,并为每一个中断安排一个编号
12、,称为中断类型。每种中断类型对应的中断服务程序的入口地址称为 _。6. 循环结构的程序主要由 _、循环体、 _ 和循环控制部分组成。7. 若DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOVAX,(SI+COUNT)中,源操作数的有效地址EA为_,其物理地址为_。8. 当标志位_=1时表示无符号数运算产生溢出,而当标志位_=1是表示带符号数运算产生溢出。9. 将十进制数513.85转换成二进制数、八进制数、十六进制数和BCD码分别可表示为_、_、_、_。10. 十进制数52的原码、反码、补码(采用8位二进制,最高位为符号位)分别可表示为_、_、_。11已知某个数的补码为9DH
13、,则其真值为_。12.以下宏定义的功能是将一位十六进制数转换为ASCII码,请在空白处填入恰当内容,使程序完整。HEXTOA _AND AL,0FHCMP AL, _JNA HEXTOA1ADD AL,7HHEXTOA1: ADD AL, _ENDM13地址2000H: 0480H,其物理地址是_,段地址是_,偏移量是_。14. 225D= _B= _H。15已知X补=11010101,则X= _D。16执行部件EU的主要功能是:_和_。17. 8086 CPU在取指令时,会选取段寄存器_的值作为段基值,再加上由_提供的偏移地址形成20位的物理地址。18. 8086最多可处理_种中断,对每一个
14、中断都设置一个_。198086 CPU有两种外部中断请求线,它们分别是_和_。20CPU与外设之间的数据传送方式有_、_、_和DMA方式传送。21. 冯诺依曼型的计算机制结构由_、_、_、_和_五大部分组成。22. 101011.101B = _D =_O = _H。23数字9的ASCII码为_。24. I/O端口有_和_两种编址方式,8086的最大I/O寻址空间为_。25若一个程序段开始执行之前,(CS)=97F0H,(IP)=1B40H,该程序段启动执行指令的实际地址是_。26. 6AB.24H = _B = _O。27. 数字“0”和字母“K”的对应的ASCII码分别为_和_。28十进制
15、数-26的原码、反码、补码(采用8位二进制,最高位为符号位)分别为_、_、_;已知一个数的补码为B2H,其真值为_。29汇编语句中,语句标号具备的三种属性分别是_、_、_;变量具备的三种属性分别是_、_、_。308086CPU的数据总线为_位,地址总线为_位,最大的存储空间是_。31. 8086CPU的标志寄存器共有9个有效标志位,其中有6个状态标志位,分别是_、_、_、_、_、_。32已知X=-1011011B,则X的反码为_,X的补码为_。33 8086CPU在取指令时,会选取段寄存器_的值作为段基值,再加上由_提供的偏移地址形成20位的物理地址。三、判断题:1奇偶标志位PF,当运算结果的
16、低8位中有偶数个1时,被置为0。 ( )2. CS, DS, ES和SS段都可以存放指令代码。 ( )3MOV SI,SI ( )4MOV DI,SI ( )5两数相等时转移可用JZ指令。 ( )6OUT BX,AL ( )7当IF=0时,CPU不能响应NMI中断。 ( )8把若干个模块连接起来成为可执行文件的系统程序是汇编程序。 ( )9使汇编程序执行某种操作的命令是宏指令。 ( )10串操作指令中,目的操作数的段地址一定在DS寄存器中。 ( )11在汇编语句AGAIN: INC SI中的AGAIN 称为标号。 ( )12MOV BH,1000SI,该指令中源操作数采用的寻址方式是寄存器间接
17、寻址。( )13OR AL,AL 是逻辑或操作指令。 ( )14DOS 系统功能调用中,显示单个字符的系统调用号是01H。 ( )15使计算机执行某种操作的命令是伪指令。 ( )四、改错题:1.下述程序执行后,应将LIST数组中的最大值存入MAX单元,数组元素为无符号字数据,数据个数在CNT单元中。现已知程序有错,请改正,使之完成预定功能。1)DSEG SEGMENT2)LIST DW 1,200,30,400,0,7,40003) CNT DB 74) MAX DW?5) DSEG ENDS6) CSEG SEGMENT7) ASSUME DS:DSEGDS:CODE8) FMAX: MOV
18、 DX,DSEG9) MOV DS,AX10) LEA SI,LIST11) MOV CX,CNT12) CLD13) LODSW14) DEC CX15) CMP AL,SI16) JLE SMALL17) LODS W18) SMALL: INC SI19) INC SI20) DEC CX21) LOOP AGAIN22) MOV MAX,SI23) MOV AL,4CH24) INT 21H25) CSEG END26) END START2.下面的程序是将内存单元一字节数据乘以10放回单元的程序,找出错误并改正。DATA SEGMENTDA DW 34DATA ENDSCODE SE
19、GMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV SI,OFFSET DAMOV AL,SIMUL 10MOV SI,AXMOV AH,4CHINT 21HCODE ENDSEND START五、简答题:1. 80386/80486有几种工作模式?各有什么特点?2.假定一个名为MAINPRO的程序要调用子程序SUBPRO,试问:(1)MAINPRO中的什么指令申明汇编程序SUBPRO是在外部定义的?(2)SUBPRO怎么知道MAINPRO要调用它?3.现有(DS)=2000H,(BX)=O100H,(SI)=0002H,(201
20、00H)=12H,(2010H)=34H,(20102H)=56H,(20103H)=78H,(21200H)=2AH,(21201H)=4CH,(21202H)=B7H,(21203H)=65H,试说明下列指令执行后,AX寄存器中的内容。(1)MOV AX,1200H (2)MOV AX,BX(3)MOV AX,1100HBX (4)MOV AX,BX+SI(5)MOV AX,1100H+BX+SI4.汇编语言源程序的语句类型有哪几种?各自的作用和使用规则是什么?5.一个汇编源程序应该由哪些逻辑段组成?各段如何定义?各段的作用和使用注意事项是什么?6.什么是微型计算机的系统总线?定性说明微处
21、理器三大总线的作用。六、程序分析题:1.试分析下列程序段,如果AX和BX的内容分别给出如下5种情况,问程序分别转向何处?(1) AX = 1478H, BX = 80DCH(2) AX = 0B568H, BX = 54B5H(3) AX = 42C8H, BX = 608DH(4) AX = 0D023H, BX = 9FD0H(5) AX = 94B7H, BX = 0B568H ADD AX,BX JNO L1 JNC L2 SUB AX,BX JNC L3 JNO L4 JMP L52已知数据段中定义DAT1DB 12H,34H,56H,78HMOVCX,0MOVAX,WORDPTRD
22、AT1MOVCL,DAT1+3当程序段执行完后AX=_,CX=_。3.执行完程序后,回答指定的问题。BLOCK DB 20H,1FH,08H,81H,OFFHRESULT DB?START: LEA SI,BLOCKMOV CH,OMOV CL,SIDEC CXINC SIMOV AL,SILOP1: CMP AL,SI+1JLE NEXTMOV AL,SI+1NEXT: INC SILOOP LOP1MOV RESULT,ALHLT问:(1)该程序的功能是( );(2)该程序的循环次数是( )。4. 分析下列程序,回答问题:(1)该程序完成什么功能?(2)程序中的INC SI可否用指令ADD
23、 SI,1代替,为什么?(3)程序中的指令LEA SI,DATAI可用指令()代替。(4) CLC指令的目的是()。DATA SEGMENTDATAI DB 85H,27H,4AHDATA2 DB 93H,87H,65HLEGH DW 3SUM DB 0,0,0DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXLEA SI,DATA1LEA BX,DATA2LEA DI,SUMMOV CX,LEGHCLCAGAIN: MOV AL,SIADC AL,BXMOV DI,ALINC SIINC BXINC D
24、ILOOP AGAINMOV AH,4CH1NT 21HCODE ENDSEND START5.执行完程序后,回答指定的问题。MOV AX,200HMOV BX,500HMOV BX+1OH,30HADD AX,BX+1OHLEA SI,BX+lOHMOV BX,AX问:程序段执行后,SI=( ),BX=( )。七、程序设计:1将DAT字存储单元中的16位二进制数分成四组,每组四位,然后将这四组数分别放至DAT1、DAT2、DAT3和DAT4这4个字节单元中。2设有10个学生的成绩分别是70,75,89,68,63,88,78,74,81和90。编制一个子程序统计60-69,70-79,80-
25、89,90-99及100分的人数并分别存放到S6,S7,S8, S9和S10单元中。3已知在以BUR为首地址的数据区中存放了N字节数据,编写程序完成将数据块搬至BUF2为首地址的存储区中,要求:(1)用一般数据传送指令MOV实现;(2)用数据串传送指令MOVSB实现;(3)用数据串指令LODSB/STOSB实现。4对一组无符号数进行比较,把最大数显示在屏幕上。5已知两个无符号字数据X、Y分别存放在ADRX和ADRY单元,编制程序,若X是Y的倍数,则显示器上显示0,否则显示1。参考答案一、选择题:1B 2C 3C 4B 5A 6D 7C 8D 9B 10A11C 12D 13C 14A 15D
26、16B 17B 18A 19B 20A21B 22C 23D 24A 25C 26C 27B 28C 29A 30A31B 32A 33B 34B 35C 36B 37B 38C 39B 40A41B 42C 43C 44C 45C 46D二、填空题:1运算器 控制器 2201.D999 69.375311111111 10000001 4统一编址 独立编址5256 中断向量 6循环初始化部分 循环参数修改部分720A8H 11488H 8CF OF91000000001.1011B 1001.6631O 201.D999H 10100010011.10000101B1000110100B 0
27、0110100B 00110100B 11-63H12MACRO 9 30H1320480H 2000H 0480H1411100001 E115-43H16执行指令 产生访问存储器时所需的16位偏移地址17CS IP18256 中断码类型19NMI INTR(可屏蔽中断请求信号)20无条件传送 查询方式传送 中断方式传送21运算器 控制器 存储器 输入设备 输出设备2243.625 53.5 2B.A 2339H24统一编址 独立编址 64KB2599A40H263253.11 1707.1412730H 4BH 2810011010B 11100101B 11100110B -4EH29段
28、属性 偏移量属性 距离属性; 段属性 偏移量属性 类型属性3016 20 1MB31进位标志位(CF) 辅助进位标志位(AF) 符号标志位(SF)零标志位(ZF) 溢出标志位(OF) 奇偶标志位(PF)3210100100B 10100101B33CS IP三、判断题:1 2 3 4 5 6 7 89 10 11 12 13 14 15四、改错题:1解答:(1)3行,数据定义伪指令DB改为DW(2)8行,DX改为AX(3)15行,循环入口,加标号AGAIN,即将本行改为:AGAIN:CMP AX,SI(4)16行,JLE改为JAE(5)17行,LODSW改为MOV AX,SI(6)20行,去掉
29、该行语句(7)22行,SI改为AX(8)23行,AL改为AH(9)25行,END改为ENDS(10)26行,START改为程序入口标号FMAX2解答:MOV AL,SI 改为MOV AL,BYTE PTR SIMUL 10 改为MOV BL,10 MUL BL五、简答题:1答:80386/80486有实地址模式、保护模式和虚拟8086模式三种工作方式。(1) 实地址模式下的80386/80486的工作原理与8086相同,内存管理只采用分段管理方式,而不采用分页管理;内存最大空间为1MB,采用段地址寻址的存储方式,每个段最大为64KB;操作数的默认长度为16位。(2) 保护模式下,CPU实际可访问的物理空间最大为4GB,可选择使用分页结构;存储器空间用逻辑地址、线性地址和物理地址空间描述;CPU基本结构没有发生变化,指令和寻址方式依旧。在这种寻址方式中,可以对存储器实施保护功能(禁止程序非法操作)和特权级的保护功能(主要保护操作系统的数据不被应用程序修改)。虚拟8086模式下,既有保护模式功能,又可执行8086的指令代码。2答:(1)只要在MAINPRO中用EXTRN说明SUBPRO即可; (2)只要定义SUBPRO时用PUBLIC定义即可。3答:(1)AX=4C2AH
限制150内