1、 专业: 年级: 学号 姓名 ……………………………………………………………………………………..试题不要超过密封线……………………………………………………………………….. --------------------------------------------------------------------------------------------------------------------------------------------------------------
2、 三峡大学成人教育 年 学期 《微型计算机原理》课程考试试卷(A卷) 专业 命题教师 注 意:1、本试卷共 页; 2、考试时间: 110 分钟; 3、姓名、学号必须写在指定地方。 题 号 一 二 三 四 五 六 七 八 九 十 总 分 得 分 一.选择题(共15题,每题2分,合计30分) 1.若8位
3、机器数10000000B的真值是-128,则它是( )形式。 A.原码 B.反码 C.补码 D.原码或反码 2.计算机的字长取决于( )的宽度。 A.地址总线 B.数据总线 C.控制总线 D.通信总线 3.编程人员不能直接读写的寄存器是( )。 A.BX B.SP C.DI D.IP 4.堆栈操作的原则是( )。 A.先进后出的原则 B.存多少取多少的原则 C.栈指针以下(对向下生成的栈)为无效栈顶的原则 D.以上都不是 5.RESET信号有效后,CS的内容为( )。 A.0000H
4、 B.FFFF0H C.FFFFH D.FFFFFH 6.下列指令正确的是( )。 A.OUT 10H,AL B.INC [BX] C.SAR BL,2 D.MOV DS,1000H 7.使得JB指令执行转移的条件是( )。 A.CF=1 B.CF=0 C.CF=1且ZF=0 D.CF=0或ZF=1 8.汇编语言在上机过程中用不到的程序为( )。 A.编辑程序 B.汇编程序 C.连接程序 D.编译程序 9.CPU不能直接访问的是( )。 A.内存 B.外存 C.RAM
5、 D.ROM 10.EPROM27256的容量为256Kb,有8条数据线,则它具有( )条地址线。 A.15 B.16 C.17 D.18 11.8237是可编程( )接口芯片。 A.串行 B.并行 C.DMA控制 D.总线控制 12.可编程计数/定时器芯片8253的工作方式共有( )。 A.3种 B.4种 C.5种 D.6种 13.8086从奇地址单元开始访问一个字至少需要( )。 A.一个总线周期 B.两个总线周期 C.一个时钟周期 D.两个时钟周期 14.与8
6、255芯片数据线和端口C相连的分别是( )。 A.CPU、外设 B.外设、CPU C.CPU、CPU D.外设、外设 15.下列单字符命令不是DEBUG命令的是( )。 A.A B.B C.D D.T 二.填空题(共10题,每题1分,合计10分) 1.1000D= B= H。 2.8086系统中段地址和偏移地址为3016:1253H的存储单元的物理地址是 H。 3.若AL中的内容为7DH,则执行AND AL,0FH后,AL=
7、 H, 若AL中的内容为72H,则执行OR AL,2AH后,AL= H。 4.8086CPU从功能上可分为 和 两部分。 5.用容量为1024×4位的SDRAM组成1024字节的存储空间,需要 片该芯片。 6.8255A的端口C可以分成两个4位端口,以配合 和 使用。 7.利用8251可以实现两个8086系统之间的 通信。 8.若8253的端口地址为40H~43H,若对计数器0初始化,则工
8、作方式控制字应写入 ,计数初值应写入 。 9.一片可编程中断控制器8259A可处理 个外部中断源的优先权判断。 10.要将声音信号采集到计算机中存储起来,需要用到的转换芯片是: 。 三.简答题(共15题,每题4分,合计60分) 1.CPU、ALU 2.IBM PC中,中断类型为12H的中断向量存储在什么地方? 3.有如下程序段,该程序的功能是什么? CLD MOV CX,10 LEA SI,FIRST LEA DI,SECOND REP MOVSB
9、 4.微机与外设之间的传送方式总共有哪几种? 5. 总共用三条不同指令,各自完成BX=0操作。 6. 什么是逻辑地址?什么是物理地址?如何将逻辑地址转换为物理地址? 7.简述8086CPU对中断的响应和处理过程。 8. 指出下列指令的错误原因 (1) INC [ESI] (2) MOV AX,BL (3) MOV 2,EAX (4) MOV AX,[DX] (5) MOV AX,[BX+BP] (6) MOV AX,[SI+DI] (7) MOV AH,300 (8) MOV [ESI],[EDI] (9) PUSH AL (10) P
10、OP DH (11) MOV CS,AX (12) MOV SS,AX (13) SHL AX,3 9.试分别指出下列各指令语句的语法是否有错,如有错,指明是什么错误。 MOV [BX][BP],AX TEST [BP],BL ADD SI,ABH AND DH,DL CMP CL,1234H SHR [BX][DI],3 NOT CX,AX LEA DS,35[SI] INC CX,1 PUSH 45[DI] 10. 指出下列指令的错误: (1)MOV AH,BX (2)MOV [BX],[SI] (3)MOV
11、AX,[SI][DI] (4)MOV MYDAT[BX][SI],ES:AX (5)MOV BYTE PTR[BX],1000 (6)MOV BX,OFFSET MYDAT[SI] (7)MOV CS,AX 11.已知SS=1500H,SP=0110H, ①如果向堆栈中压入8个字节数据,此时SP的内容是多少? ②如果又从堆栈中弹出2个字数据,此时SS和SP内容又是多少? 12. 分别指出下列指令中源操作数和目的操作数的寻址方式 (1) MOV EAX,12345678H (2) MOV [ESI],AX (3) MOV 2[
12、EDI],BX (4) MOV 2[BX+SI],DX (5) MOV AX,[10] (6) MOV EAX,2[ESI*4] (7) MOV EAX,2[EBX*8][EDI] (8) MOV EAX,[ESI][EBP+0FFFF0H] (9) MOV EAX,2[EDI*8][EBP+80] 13.试分别说明下列各指令中源操作数和目的操作数使用的寻址方式: AND AX,0FFH AND BL,[OFFH] MOV DS,AX CMP [SI],CX MOV DS:[0FFH],CL SUB [BP][SI],AH ADC AX,0ABH[BX
13、] OR DX,-35[BX][DI] PUSH DS CMC 14. 总共用三条不同指令,各自完成BX=0操作。 15. 什么是逻辑地址?什么是物理地址?如何将逻辑地址转换为物理地址? 答案 1、 选择题 1、C 2、B 3、D 4、A 5、C 6、A 7、A 8、D 9、B 10、A 11、C 12、D 13、B 14、A 15、B 2、填空题 1、0011 1111 1000 3E8 2、313B3 3、0D 7A 4、执行单元 总线接口单元 5、2 6、端口A 端
14、口B 7、串行 8、43H 40H 9、8 10、A/D转换芯片 或 模数转换芯片 3、简答题 1、CPU、ALU 答:CPU:中央处理单元 ALU:算术逻辑单元 2、IBM PC中,中断类型为12H的中断向量存储在什么地方? 答:存放在0000:0048H~0000:004BH连续的4个内存单元中。 或 存放在00048H~0004BH连续的4个内存单元中。 3、有如下程序段,该程序的功能是什么? 答:改程序完成从FIRST的位置按地址增量连续拷贝10个字节到SECOND单元中。 CLD MOV CX,10 LEA SI,FIRST
15、 LEA DI,SECOND REP MOVSB 4、微机与外设之间的传送方式总共有哪几种? 答:有无条件传送、条件传送(查询方式传送)(1分)、中断方式传送(1分)、DMA方式传送(1分) 5. 总共用三条不同指令,各自完成BX=0操作。 答:MOV BX,0;XOR BX,BX;AND BX,0000H;SUB BX,BX 6. 什么是逻辑地址?什么是物理地址?如何将逻辑地址转换为物理地址? 解:逻辑地址是指在程序和指令中使用的一种地址,它包括两部分:段基地址和偏移地址。段基地址说明每段在主存中的起始位置,它来自于段寄存器(CS、DS、ES、SS)。偏移地址说明主存
16、单元距离段起始位置的偏移量。它是一个16位的偏移地址,根据指令的不同,它可以来自于8086CPU中不同的16位寄存器 IP、SP、BP、SI、DI、BX等。 物理地址是指CPU对存储器进行访问时实际寻址所使用的地址,物理地址是由段寄存器与偏移地址共同确定的。在实际工作时,从段寄存器中取出段基址,将其左移4位,再与16位偏移地址相加,就得到了物理地址,此地址在CPU总线接口部件BIU的20位地址加法器中形成。物理地址的计算方法为:物理地址=段基地址×16+偏移地址。 7.简述8086CPU对中断的响应和处理过程。 答:8086对各类中断的响应不完全相同,主要区别在于如何获得中断类型码。
17、可屏蔽中断的响应过程。首先必须满足中断允许标志IF置1,当没有内部中断,非屏蔽中断(NMI=0)和总线请求(HOLD=0)时,外设向中断控制器8259A发出中断请求,经8259A处理,得到相应的中断类型码,并向CPU申请中断(INTR=1)。 ⑴等待当前指令结束,CPU发出中断响应信号。 ⑵8259A连续(两个总周期)接收到两个INTA 的负脉冲的中断响应信号,则通过数据总线将中断类型码送CPU,CPU把中断类型码乘4作为中断矢量表的地址指针。 ⑶CPU保护断点,将状态标志字PSW及当前的CS和IP内容压栈。 ⑷清IF和TF标志为0。 ⑸查中断矢量表,取
18、中断处理程序首地址,将其分别置入IP和CS中,程序转入执行中断处理程序。 非屏蔽中断的响应过程:非屏蔽中断请求在NMI加入,等待当前指令执行结束,CPU优先响应NMI中断请求,其中断类型码由硬件决定类型为2,无须从外部引入,其余响应过程与可屏蔽中断相同。 内部中断响应操作:内部中断响应的共同点是: ⑴中断类型码由指令码给定或硬件决定,无须外部逻辑输入; ⑵无INTA 信号响应周期; ⑶不受IF控制; ⑷除单步中断 外,其它内部中断响应优先于外部中断,响应过程与非屏蔽中断类似。 8. 指出下列指令的错误原因 (1) INC [ESI] (2) MOV AX,BL (3) MO
19、V 2,EAX (4) MOV AX,[DX] (5) MOV AX,[BX+BP] (6) MOV AX,[SI+DI] (7) MOV AH,300 (8) MOV [ESI],[EDI] (9) PUSH AL (10) POP DH (11) MOV CS,AX (12) MOV SS,AX (13) SHL AX,3 解: 指令 错误原因 (1) INC [ESI] 目的操作数[ESI]类型不明确 (2) MOV AX,BL 源操作数和目的操作数类型不一致 (3) MOV 2,EAX 常数不能作目的操作数 (4) MOV AX,[DX] DX
20、不能作地址寄存器 (5) MOV AX,[BX+BP] 源操作数寻址方式错,两个寄存器都是基址寄存器 (6) MOV AX,[SI+DI] 源操作数寻址方式错,两个寄存器都是变址寄存器 (7) MOV AH,300 300超出AH允许范围 (8) MOV [ESI],[EDI] 源操作数和目的操作数不能同时为内存单元地址 (9) PUSH AL 入栈的数据必须是一个16或32位数据 (10) POP DH 出栈的数据是一个16或32位数据,DH是8位寄存器 (11) MOV CS,AX CS值不能由程序员编程该变 (12) MOV SS,AX SS值不能由程序员
21、编程该变 (13) SHL AX,3 移位次数大于1,应先将移位次数送CL 9.试分别指出下列各指令语句的语法是否有错,如有错,指明是什么错误。 MOV [BX][BP],AX TEST [BP],BL ADD SI,ABH AND DH,DL CMP CL,1234H SHR [BX][DI],3 NOT CX,AX LEA DS,35[SI] INC CX,1 PUSH 45[DI] 答:(1)应将BP,BX其中之一该为SI或DI (2)正确 (3)ABH改为0ABH (4) (5)是字操作,CL改为CX
22、 (6)移位数大于1时,应用CL (7)NOT指令只有一个操作数 (8)LEA指令的源操作数应为一内存单元地址 (9)此指令不用指出1 (10)45改为45H 10. 指出下列指令的错误: (1)MOV AH,BX (2)MOV [BX],[SI] (3)MOV AX,[SI][DI] (4)MOV MYDAT[BX][SI],ES:AX (5)MOV BYTE PTR[BX],1000 (6)MOV BX,OFFSET MYDAT[SI] (7)MOV CS,AX 答:(1)M
23、OV AH,BX AH 为八位,BX为16位 (2)MOV [BX],[SI] 两个操作数不能都是存储单元 (3)MOV AX,[SI][DI] 一个操作数中不能用两个变址寄存器 (4)MOV MYDAT [BX][SI],E8:AX ES ES 后应为一个变址寄存器,表示偏移量 (5)MOV BYTE PTR[BX],1000 BYTE 说明时BX进行字节操作。 而1000为字 (6)MOV BX,OFFSET MYDAT [SI] OFFSET 为取某个地址的偏移量,故后面不应用[S
24、I],而应是一个符号地址。 (7)MOV 是数据寻址,不应用程序段寄存器CS. 11.已知SS=1500H,SP=0110H, ①如果向堆栈中压入8个字节数据,此时SP的内容是多少? ②如果又从堆栈中弹出2个字数据,此时SS和SP内容又是多少? 答:0108H,1500H,010CH 12. 分别指出下列指令中源操作数和目的操作数的寻址方式 (1) MOV EAX,12345678H (2) MOV [ESI],AX (3) MOV 2[EDI],BX (4) MOV 2[BX+SI],DX (5) MOV AX,[10] (6) MOV EAX,2[ESI*
25、4] (7) MOV EAX,2[EBX*8][EDI] (8) MOV EAX,[ESI][EBP+0FFFF0H] (9) MOV EAX,2[EDI*8][EBP+80] 解: 指令 目的操作数的寻址方式 源操作数的寻址方式 (1) MOV EAX,12345678H 寄存器寻址 立即寻址 (2) MOV [ESI],AX 寄存器间接寻址 寄存器寻址 (3) MOV 2[EDI],BX 变址寻址 寄存器寻址 (4) MOV 2[BX+SI],DX 基址变址寻址 寄存器寻址 (5) MOV AX,[10] 寄存器寻址 直接寻址 (6) MOV
26、EAX,2[ESI*4] 寄存器寻址 带有比例因子的变址寻址 (7) MOV EAX,2[EBX*8][EDI] 寄存器寻址 带有比例因子的基址变址寻址 (8) MOV EAX,[ESI][EBP+0FFFF0H] 寄存器寻址 带有位移量的基址变址寻址 (9) MOV EAX,2[EDI*8][EBP+80] 寄存器寻址 带有位移量和比例因子的基址变址寻址 13.试分别说明下列各指令中源操作数和目的操作数使用的寻址方式: AND AX,0FFH AND BL,[OFFH] MOV DS,AX CMP [SI],CX MOV DS:[0FFH],CL
27、 SUB [BP][SI],AH ADC AX,0ABH[BX] OR DX,-35[BX][DI] PUSH DS CMC 答: 目的操作数 源操作数 (1)寄存器直接寻址 立即数寻址 (2)寄存器直接寻址 直接寻址 (3)寄存器直接寻址 寄存器直接寻址 (4)寄存器间接寻址 寄存器直接寻址 (5)直接寻址 寄存器直接寻址 (6)基址变址寻址 寄存器直接寻址 (7)寄存器直接寻址 寄存器相对寻址 (8)寄存
28、器直接寻址 基址变址相对寻址 (9)无 寄存器直接寻址 (10)隐含寻址 14. 总共用三条不同指令,各自完成BX=0操作。 答:MOV BX,0;XOR BX,BX;AND BX,0000H;SUB BX,BX 15. 什么是逻辑地址?什么是物理地址?如何将逻辑地址转换为物理地址? 解:逻辑地址是指在程序和指令中使用的一种地址,它包括两部分:段基地址和偏移地址。段基地址说明每段在主存中的起始位置,它来自于段寄存器(CS、DS、ES、SS)。偏移地址说明主存单元距离段起始位置的偏移量。它是一个16位的偏移地址,根据指令的不同,它可以来自于8086CPU中不同的16位寄存器 IP、SP、BP、SI、DI、BX等。 物理地址是指CPU对存储器进行访问时实际寻址所使用的地址,物理地址是由段寄存器与偏移地址共同确定的。在实际工作时,从段寄存器中取出段基址,将其左移4位,再与16位偏移地址相加,就得到了物理地址,此地址在CPU总线接口部件BIU的20位地址加法器中形成。物理地址的计算方法为:物理地址=段基地址×16+偏移地址。






