《微机原理试题集题库带复习资料.doc》由会员分享,可在线阅读,更多相关《微机原理试题集题库带复习资料.doc(58页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精品文档微机原理及应用习题集库2一、填空2二、单项选择题6三、程序分析题每题6分,共24分16四、判断题在对的后面画,错的后面画:25五:分析判断题判断对错,并指出错误原因31六、简答题:33七、程序题38八、接口芯片的综合编程题50一8255A50二8259A56三. 其它端口编程题58微机原理及应用习题集库请认真复习4、5、7、10、11章后的习题一、填空1. 87的原码是 0101 0111B=57H ,补码是 B ,反码 01010111B 。2. SP总是指向 栈顶 ,假设原先SP=2000H,SS=2000H,问CPU执行指令PUSH AX后,AL内容压入物理地址为 21FFEH
2、存储单元中,AH内容压入物理地址为 21FFFH 存储单元中。3. 以BX基址寻址,约定的段存放器是 DS ,以BP基址寻址,约定的段存放器是 SS ,变址寻址约定的段存放器是 DS 。 4. 假设某个字的值是1234H,其低位字节地址是20H,高位字节地址是21H,那么该字地址是 20H 。 5. 8086/8088的状态标志有 6SF、PF、AF、OF、ZF、CF 个。 8086/8088系统中,存储器是分段的,每段最大长度是 64K 字节,段内偏移地址从 0000H 到 FFFFH 。 6、 CPU访问存储器进行读写操作时,通常在 T3 状态去检测READY ,一旦检测到READY无效,
3、就在其后插入一个 Tw 周期。 7、 汇编语言源程序中的语句有三种类型,它们是 指令 语句, 伪指令 语句, 宏指令 语句。 8、 、8086CPU寻址外设可以有两种方式,一种是 直接 寻址方式,另一种是 间接 寻址方式。 9、 CPU与外设之间的连接部件称为 I/O接口 ,它的根本功能是 在CPU与外设之间起缓冲作用 。 10、 C PU从主存取出一条指令并执行该指令的时间称 ,它通常用假设干个 来表示,而后者又包括假设干个 。 指令周期 机器周期 时钟周期 答:12314、数据的输入/输出指的是CPU与 I/O接口 进行数据交换。 15X= -120,那么X的原码用八位二进制表示是_,补码
4、用八位二进制表示是_。16、8088中的指令INT n用N指定中断类型。17、8088的ALE引脚的作用是地址锁存允许。18. 一片8255A端口A有3种工作方式,端口B有2种工作方式。19. 当8255A口工作在方式1输出时,A口输入信号联络线的名称是 IBF ,输出信号联络线的名称是 OBF(带上划线) 。 20. 端口A可以工作在3种工作方式中的任意一种,端口B只能工作在方式0或方式1;对错题21. 可编程并行接口芯片8255A共有 A 、 B 、 C 、和 控制 四个端口。22. 8088的当前代码段、数据段和堆栈段段地址分别由 、 和 提供。17、 微型计算机由、和三大局部组成。20
5、8086/8088中级别最高的中断类型是非屏蔽中断,其中断类型码为 2 。21. -3的原码是1000 0011,反码是1111 1100,补码是 1111 1101。22. 以BX基址寻址,约定的段存放器是 DS ,以BP基址寻址,约定的段存放器是 SS 。23. 一片8259A最多只能接收 八级 中断。三片8259A最多能接收22级中断。24. 8259A中的中断效劳存放器中存放的是正在处理的中断请求0。25. 十六进制数30A转换为二进制是 0011 0000 1010B 。26. 微型计算机由微处理器、存储器和I/O接口电路组成。27. 计算机记忆装置的根本单元是触发器。28. 一个最
6、根本的总线周期是由4个时钟周期组成的。29. 所谓最小模式,是指在系统中只有8086/8088一个微处理器。30. 在8086/8088的引脚中,与总线有关的两个引脚是HOLD和HLDA。31. 中断向量是中断处理子程序的入口地址,每个中断类型对应一个中断向量。32. MOV AX, BX+DI+50的寻址方式是基址加变址的相对寻址33. 8086最多能处理( 256 )种中断。34. -7的原码是1000 0111,反码是1111 1000,补码是 1111 1001。35. 8259A中的中断屏蔽存放器中存放的是对各级中断请求的屏蔽信息。36. 在8088读存储器周期中,采样Ready线的
7、目的是测试外设数据是否准备好。37. . 微机系统中,ROM只能 读 ,RAM可 随机存取 。38. 存放器是由触发器组成的。39. 一个机器周期是执行一条指令的时间,机器周期又可分为取指周期和执行周期。40. 所谓最大工作模式,是指在系统中有二个以上的微处理器。41. 对于地址/数据复用总线,在T1时刻,其传输的信息是地址信号。42. 在8086/8088的引脚中,与中断有关的三个引脚是NMI、INTR和INTA。43. 所谓断点,就是指响应中断时,主程序中当前指令下面的下一条指令的地址。44. 8088中的指令INT n用 n指定中断类型。45. 8086最大模式下产生控制信号利用芯片 8
8、288 总线控制器,最小/最大模式下,外部地址锁存器利用芯片 8282 ,外部数据收/发器利用芯片 8286 。 46. 子程序可以由 Proc 语句定义,由 ENDP 语句结束,属性可以是 NEAR 或 FAR 。47. 段定义伪指令语句用 SEGMENT 语句表示开始,以 ENDS 语句表示结束。48. 逻辑地址为2000H:1234H的存储单元的物理地址是 。21234H49. 取指令时,段地址由 存放器提供,偏移地址由 存放器提供。CS和IP50. CPU在执行OUT DX,AL指令时, 存放器的内容送到地址总线上, 存放器的内容送到数据总线上。DX和AL51. 数据的输入/输出指的是
9、CPU与 进行数据交换。I/O端口52. 中断矢量就是中断效劳子程序的 入口地址 ,在内存中占有 4 个存储单元,其中低地址存储单元存放的是 偏移地址 ,高地址存储单元存放的是 段地址 。53. 中断返回指令是 RET ,该指令将堆栈中保存的断点弹出后依次装入 CS 存放器和 IP 存放器中,将堆栈中保存的标志装入 标示存放器FR 中。54. CPU响应8259A中断,在 INTA 引脚上输出 二 个负脉冲,在第 二 个负脉冲期间读入中断类型码。二、单项选择题1. 假设补码用8位二进制数表示,那么可表示的最大正数是 4 。128 228-1 327 427-12 向外设端口输出一个数据的指令是
10、 1 1 OUT DX,AL 2IN DX,AL 3OUT AL,DX4IN AL,DX3完成同指令XCHG AX,BX相同功能的指令或指令序列是3 。 MOV AX,BX MOV BX,AX PUSH AX POP BX MOV CX,AX MOV AX,BX MOV BX,CX 1当有两个8286时,可为2 CPU提供数据总线。 8088 8086 80386 8048623片8259A级联,最多可管理 3 级中断。 24 . 23 . 22 . 213响应NMI请求的必要条件是 3 。 IF=1 IF=0 一条指令结束 无INTR请求 5测试BL存放器内容是否与数据4FH相等,假设相等那
11、么转NEXT处执行,可实现的方法是 2 。 TEST BL,4FH AND BL,4FHJZ NEXT JZ NEXT XOR BL,4FH OR BL,4FHJZ NEXT JZ NEXT 68086/8088的一个典型总线周期需要 1 个T状态。 4 3 2 17指令指针存放器是 1 。 IP SP BP PSW8下面指令序列测试BH中的数是否为奇数,假设为奇数那么转移至K1处,横线处的指令应为 。 TEST BH,01H 1K1 JNE JZ JS JC9下面的数据传送指令中,错误的操作是 4 。 MOV SS:BX+DI,1000H MOV DX,1000H MOV WORD PTRB
12、X,1000H MOV DS,2000H 108255A工作在方式1时,端口A和端口B作为数据输入/输出使用,而端口C的各位分别作为端口A和端口B的控制信息和状态信息。其中作为端口A和端口B的中断请求信号的分别是端口C的。(A)PC4和PC2 (B)PC5和PC1 (C)PC6和PC7 (D)PC3和PC0答: D18255芯片具有 C 端口。 A2 B3 C)4 D)528255的 C 一般用作控制或状态信息传输。 A端口A B端口B C端口C D端口C的上半局部3对8255的端口A工作在方式1输入时,C口的 C 一定为空闲的。 APC4、PC5 BPC5、PC6 CPC6、PC7 DPC2
13、、PC34对8255的C口D3位置1的控制字为 B 。 A00000110B B00000111B C00000100B D00000101B58255工作在方式1的输出时,OBF信号表示 B 。 A输入缓冲器满信号 B输出缓冲器满信号 C输入缓冲器空信号 D输出缓冲器空信号3在PC/XT机中键盘的中断类型码是09H,那么键盘中断矢量存储在 B 。 A36H39H B24H27H C18H21H D18H1BH43片8259A级联起来,可管理 C 级中断。 A24 B23 C22 D20 E16 F155假设8259A工作在优先级自动循环方式,那么IRQ4的中断请求被响应并且效劳完毕后,优先权
14、最高的中断源是 B 。 AIRQ3 B)IRQ5 C)IRQ0 D)IRQ47PC/XT机中假设对从片8259A写入的ICW2是70H,那么该8259A芯片的IRQ5的中断矢量存储的地址是 D 注:先算类型号,再*4得到 A75H B280H C300H D1D4H8当向8259A写入的操作命令字OCW2为01100100时,将结束 E 的中断效劳。 AIRQ0 BIRQ1 CIRQ2 DIRQ3 EIRQ4 FIRQ5 GIRQ6 HIRQ71下面是关于可编程中断控制器8259A的表达,其中错误的选项是 3 。.8259A具有优先级管理的功能 .8259A具有识别中断源的功能.8259A具有
15、向CPU提供中断向量的功能 .一片8259A可管理8级中断2由8088CPU组成的PC机的数据线是 4。 8条单向线 16条单向线 8条双向线 16条双向线3为8088CPU提供地址总线需要4 。 一个8286 两个8286 两个8282 三个8282 4一个8259可提供2 个类型号。 1 8 16 645响应INTR请求的必要条件是2 。 IF=0 IF=1 TF=0 TF=16完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是 1。 MOV AL,00H AND AL,00H XOR AL,AL SUB AL,AL7当执行指令ADD AX,BX后,假设AX的内容为2BA0H,设
16、置的奇偶标志位PF1,下面的表达正确的选项是 4 。 表示结果中含1的个数为偶数 表示结果中含1的个数为奇数 表示该数为偶数 表示结果中低八位含1的个数为偶数 8在汇编语言程序中,对END语句的表达正确的选项是3 。 END语句是一可执行语句 END语句表示程序执行到此结束 END语句表示源程序到此结束 END语句在汇编后要产生机器码 AL64H BL82H AL100H BL0FEH9执行以下指令后,正确的结果是2 。 MOV AL,100 MOV BL,2 AL100H BL02H AL64H BL0FEH 10当一个带符号数大于0FBH时程序转移,需选用的条件转移指令是 3 。 JLE
17、JNL JNLE JL1存放器间接寻址方式中,操作数在 中。 C A通用存放器 B堆栈 C存储单元 D段存放器2 寻址方式的跨段前缀不可省略。A ADS:BP BDS:SI CDS:DI DSS:BP3假设SS=2000H,SP=0012H,AX=1234H,执行PUSH AX后, =12H A20014 B20011H C20010H D2000FH4假设要检查BX存放器中的D15位是否为1,应该用 指令。 C AOR BX,1000H BTEST BX,1000H JNZ NO JNZ YES C) XOR BX,1000H DAND BX,1000H JZ YES JNZ YES5用BP
18、作基址变址寻址时,操作数所在的段是当前 。C A数据段 B代码段 C堆栈段 D附加段假设主程序段中数据段名为DATA,对数据段的初始化操作应为 。 BAMOV AX,DATA BMOV AX,DATA MOV ES,AX MOV DS,AXCPUSH DS DMOV DS,DATA3.EXE文件产生在 之后。 D A汇编 B编辑 C用软件转换 D连接4定义双字变量的定义符是 。 CADW BDQ CDD DDT5以下存储器操作数的跨段前缀可省略的是 。 BADS:BP BSS:BP CES:BX DES:SI3堆栈操作时,段地址由 存放器指出,段内偏移量由 存放器指出。C、G ACS BDS
19、CSS DES EDI FSI GSP HBP4假设当前DS的内容为2000H,那么偏移量为1000H单元的地址可表示为 。B A2000H.1000H B21000H C1000H2000H D3000H38086CPU在执行IN AL,DX指令时,DX存放器的内容输出到 上。 A A地址总线 B数据总线 C)存储器 D)存放器2. 8086CPU复位后,CPU执行的第一条指令的起始地址应是 B A) ROM,FFFF0H B) RAM,FFFF0H C) ROM,FFFFH D) RAM,FFFFH3. 下述指令,正确的指令是 d 设BUF是字节变量,LAB为标号 aMOV BX,AL b
20、MOV BX,BUF cMOV BX,LAB dMOV BX,OFFSET BUF 4 下述中断,优先权级别最高的中断是 a aNMI bINTR c单步中断 dINT n 6. 8086CPU的40根引脚中,有 c 个是分时复用的。 A1 B16 C21 D24 7、用BP作基址变址寻址时,操作数所在的段是当前 C 。 A数据段 B代码段 C堆栈段 D附加段8执行以下指令: STR1 DW NO STR2 DB 14 DUP? CONT EQU $-STR1 MOV CX,CONT MOV AX,STR1 HLT 后存放器CL的值是 D 。 A0FH B0EH C12H D10H9、接口的根
21、本功能是 C 和 D 。 A输出锁存 B输入锁存 C输出缓冲 D输入缓冲 10、堆栈操作时,段基址由 C 存放器指出,段内偏移量由 SP 存放器指出。 A) CS B) DS C) SS D) ES11. 以下四条指令中错误的选项是 D 。 AMOV AX,SI BMOV AX,BP+DI CMOV AX,DI DMOV AX,BPDI12、在8086/8088系统中,约定用于形成堆栈段数据物理地址的存放器有 A 。 ASS,SP,BP BSS,SP,BX CDS,BX,BP DDS,SP,BP13、.EXE文件产生在 D 之后。 A汇编 B编辑 C用软件转换 D连接 15指令指针存放器是1
22、。 IP SP BP PSW 16完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是1 。 MOV AL,00H AND AL,00H XOR AL,AL SUB AL,AL 17以下指令执行后总是使CF0,OF0的是1 。 AND NEG NOT INC 22下面的数据传送指令中,错误的操作是 1。 MOV SS:BX+DI,1000H MOV DX,1000H MOV WORD PTRBX,1000H MOV DS,2000H 23下面指令执行后,变量DAB中的内容是3 。 DAW DW 2A05H DAB DB 0FAH : MOV AL,BYTE PRT DAW SUB DA
23、B,AL 0DAH 0FAH 0F5H 0D0H 24执行以下指令后,正确的结果是2 。 MOV AL,100 MOV BL,2 AL100H BL02H AL64H BL0FEH AL64H BL82H AL100H BL0FEH 25设数据段中已有: DA1 DB 12H,34H DA2 DW 56H,78H 下面有语法错误的语句是2 。 ADR1 DW DA1 MOV DA11,AX MOV BYTE PTR DA21,AL MOV WORD PTR DA11,AX 27 DATA SEGMENT TA1 DW 0102H,0304H,0506H TA2 DB 02H,03H,04H :
24、 MOV BX,DS:0006H AND BX,0FFH AND BH,BX 上述指令序列运行后,BX的内容是4 。 0605H 0402H 0606H 0204H 32IBM PC机的8088处于最大模式,其总线仲载是由2 裁决。 非RQ/非GT 8289 8087 8288 338088的一个总线周期可交换3 字节。 4 2 1 1/8 三、程序分析题每题6分,共24分 1 A DW 1234H B DW 5678H : PUSH A PUSH B POP A POP B 试答复:上述程序段执行后A,B 设执行前SP200H,执行后SP 2AB读下面程序段,请问,在什么情况下,本段程序的执
25、行结果是AH=0? BEGIN: IN AL,5FH TEST AL,80H JZ BRCH1 MOV AH,0 JMP STOP BRCH1: MOV AH,0FFH STOP: HLT 答: 3A. 现有以下程序段: MOV AX,6540H MOV DX,3210H MOV CL,04 SHL DX,CL MOV BL,AH SHL AX,CL SHR BL,CL OR DL,BL 试问上述程序段运行后, AX BL DX 4A现有以下程序段MOV AL,60HMOV BL,20HSTCADC AL,BL问程序执行后,AL= BL= CF= (DS)09lDH,(SS)1E4AH,AX1
26、234H,BX=0024H,CX)5678H,BP0024H,SI=0012H,DI0032H,09226H00F6H,09228H1E40H,1E4F6H091DH。以下各指令或程序段分别执行后的结果如何? MOV CL,20HBXSI MOV BPDI,CX LEA BX,20HBXSIMOV AX,2BX LDS SI,BXDIMOV SI,BX XCHG CX,32HBXXCHG 20HBXSI,AX答(1) (CX)=56F6H; (2) (09226H)=5678H; (3) (AX)=1E40H; (4) (1E4F6H)=0024H; (5) (09226H)=1234H,(A
27、X)=5678H.1 假设存放器AX=1234H,DX=0A000H MOV BX,0 MOV CX,BX SUB CX,AX SBB BX,DX MOV AX,CX MOV DX,BX 上述程序段执行后AX= 0FDCFH ,DX= 60000H 程序功能是 对原AX、DX中的值求补码,因为取补码指令就相当于用0减去此操作数,见书本P122 4分析下面程序段, MOV AL,200 SAR AL,1 MOV BL,AL MOV CL,2 SAR AL,CL ADD AL,BL 试问程序段执行后(BL11100100B=E4HAL11111001B=F9H 5程序段如下: BLK1 DB 46
28、,84,34,5,20,122,73 : MOV CX,7 LEA S1,BLK1 NEXT: MOV AL,SI INC SI TEST AL,81H LOOPZ NEXT MOV BL,SI : 请答复程序段运行后:AL46 BL8414对于下面的数据定义,各条MOVE指令单独执行后,有关存放器的内容是什么?FLDB DBTABLEA DW 20DUP?TABLEB DB ABCDMOVE AX,TYPE FLDB MOVE AX,TYPE TABLEAMOVE CX,LENGTH TABLEA MOVE DX,SIZE TABLEA MOVE CX,LENGTH TABLEB解答:AX=
29、0001HAX=0002HCX=0014HDX=0028HCX=0001H。19读下面程序段,请问:在什么情况下,本段程序的执行结果是AH0? BEGIN: IN AL,5FH TEST AL,80H JZ BRCHl MOV AH,0 JMP STOP BRCHl: MOV AH,0FFH STOP: HLT解答:AL中的最高位为1时。20读程序: START: IN AL,20H MOV BL,AL IN AL,30H MOV CL,AL MOV AX,0 ADLOP: ADD AL,BL ADC AH,0 DEC CL JNZ ADLOP HLT 请问: (1)本程序实现什么功能? (2
30、)结果在哪里?解答:完成20H*30H,结果在AX中。21请编一程序段完成AX*l0的任务(要求不准用乘法指令做)。解答: MOV BX,AX MOV CL 2 SHL AX, CL ADD AX,BX SHL AX ,1 22编程序使: (1)AX存放器低4位清零。 (2)BX存放器低4位置“1。 (3)CX存放器低4位变反。 (4)用TEST指令测试DL存放器位3、位6是否同时为0,假设是,将0送DL;否那么l送DH。解答 :1,AND AX ,0FFF0H 2,OR BX ,000FH 3,XOR CX ,000FH 4,TEST DL ,48H JZ LOOP MOV DH,1 HLT
31、 LOOP :MOV DL ,0HLT23编一程序段,完成符号函数(-128x127): 1 (x.0)y= 0 (x=0) -1 (x0)假设x的值存放在DATAl中,y的值存放在DATA2中。 解答: START :MOV AL ,DATA1 AND AL,AL JGE BIGR MOV AL,0FFH HLT BIGR:JE EQUL MOV AL,1 MOV DATA2,AL HLT EQUL:MOV DATA2,AL HLT 24设AX存放器中有一个16位二进制数,编一程序,统计AX中“l的个数,统计结果送CX中。解答: START :MOV CX ,0 LOOP: SUB AX,0 JZ STP SAL AX,1 JNC NOD INC CX NOD:JMP LOOP STP:HLT 25编一子程序利用XLAT指令把十六进制数转换成ASCII码。假设ASCII码存放在以 DAT1为首地址的数据区中,对应的16进制数放在以DAT2为首地址的数据区中,转换结果送以DAT3为首地址的数据区中。解答:MAIN :PUSH BX PUSH SIPUSH DIPUSH CXPUSH ALPU
限制150内