文档库 最新最全的文档下载
当前位置:文档库 › (完整版)微机原理试题集题库(带答案)

(完整版)微机原理试题集题库(带答案)

(完整版)微机原理试题集题库(带答案)
(完整版)微机原理试题集题库(带答案)

微机原理及应用习题集库 (2)

一、填空 (2)

二、单项选择题 (6)

三、程序分析题(每小题6分,共24分) (16)

四、判断题(在对的后面画√,错的后面画×): (25)

五:分析判断题(判断对错,并指出错误原因) (31)

六、简答题: (33)

七、程序题 (38)

八、接口芯片的综合编程题 (50)

(一)8255A (50)

(二)8259A (56)

(三). 其它端口编程题 (58)

微机原理及应用习题集库

(请认真复习4、5、7、10、11章后的习题)

一、填空

1.87的原码是0101 0111B=57H ,补码是01010111B ,反码

01010111B 。

2.SP总是指向栈顶,若原先SP=2000H,SS=2000H,问CPU执行指令PUSH

AX后,AL内容压入物理地址为21FFEH 存储单元中,AH内容压入

物理地址为21FFFH 存储单元中。

3.以BX基址寻址,约定的段寄存器是DS ,以BP基址寻址,约定的段寄

存器是SS ,变址寻址约定的段寄存器是DS 。

4.假设某个字的值是1234H,其低位字节地址是20H,高位字节地址是21H,那

么该字地址是20H 。

5.8086/8088的状态标志有6(SF、PF、AF、OF、ZF、CF)个。8086/8088系统中,存储器是分段的,每段最大长度是64K 字节,段内偏移地址从0000H 到FFFFH 。

6、CPU访问存储器进行读写操作时,通常在T3状态去检测READY ,一旦检

测到READY无效,就在其后插入一个T w周期。

7、汇编语言源程序中的语句有三种类型,它们是指令语句,伪指令

语句,宏指令语句。

8、、8086CPU寻址外设可以有两种方式,一种是直接寻址方式,另一种是间

接寻址方式。

9、CPU与外设之间的连接部件称为I/O接口,它的基本功能是在

CPU与外设之间起缓冲作用。

10、C PU从主存取出一条指令并执行该指令的时间称(),它通常用若干个()

来表示,而后者又包括若干个()。

①指令周期②机器周期③时钟周期

答:1-2-3

14、数据的输入/输出指的是CPU与I/O接口进行数据交换。

15.已知X= -120,则X的原码(用八位二进制表示)是____________,补码(用八位二进制表示)是____________。

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.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.一个最基本的总线周期是由(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线的目的是(测试外设数据是否准备

好)。

37.. 微机系统中,ROM只能(读),RAM可(随机存取)。

38.寄存器是由(触发器)组成的。

39.一个机器周期是(执行一条指令的时间),机器周期又可分为(取指周期)和(执行

周期)。

40.所谓最大工作模式,是指(在系统中有二个以上的微处理器)。

41.对于地址/数据复用总线,在T1时刻,其传输的信息是(地址信号)。

42.在8086/8088的引脚中,与中断有关的三个引脚是(NMI)、(INTR)和(INTA)。

43.所谓断点,就是指(响应中断时,主程序中当前指令下面的下一条指令的地址)。

44.8088中的指令INT n用(n)指定中断类型。

45..8086最大模式下产生控制信号利用芯片 8288 总线控制器,最小

/最大模式下,外部地址锁存器利用芯片 8282 ,外部数据收/发

器利用芯片 8286 。

46.子程序可以由Proc 语句定义,由ENDP 语句结束,属性

可以是NEAR 或FAR 。

47.段定义伪指令语句用 SEGMENT 语句表示开始,以 ENDS 语句表示结

束。

48.逻辑地址为2000H:1234H的存储单元的物理地址是。21234H

49.取指令时,段地址由寄存器提供,偏移地址由寄存器提供。CS和IP

50.CPU在执行OUT DX,AL指令时,寄存器的内容送到地址总线上,寄

存器的内容送到数据总线上。DX和AL

51.数据的输入/输出指的是CPU与进行数据交换。I/O端口

52.中断矢量就是中断服务子程序的入口地址,在内存中占有 4 个存储单元,

其中低地址存储单元存放的是偏移地址,高地址存储单元存放的是段地址。

53.中断返回指令是 RET ,该指令将堆栈中保存的断点弹出后依次装入 CS

寄存器和 IP 寄存器中,将堆栈中保存的标志装入标示寄存器FR 中。

54.CPU响应8259A中断,在 INTA 引脚上输出二个负脉冲,在第二

个负脉冲期间读入中断类型码。

二、单项选择题

1. 若补码用8位二进制数表示,则可表示的最大正数是( 4 )。

(1)28(2)28-1 (3)27(4)27-1

2 向外设端口输出一个数据的指令是( 1 )

(1)OUT DX,AL (2)IN DX,AL (3)OUT AL,DX

(4)IN AL,DX

3.完成同指令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 ④ 80486

2.3片8259A级联,最多可管理( 3 )级中断。

①24 ②. 23 ③. 22 ④. 21

3.响应NMI请求的必要条件是( 3 )。

① IF=1 ② IF=0 ③ 一条指令结束④ 无INTR请求

5.测试BL寄存器内容是否与数据4FH相等,若相等则转NEXT处执行,可实现的方法是(2 )。

①TEST BL,4FH ③AND BL,4FH

JZ NEXT JZ NEXT

②XOR BL,4FH ④OR BL,4FH

JZ NEXT JZ NEXT

6.8086/8088的一个典型总线周期需要( 1 )个T状态。

① 4 ② 3 ③ 2 ④ 1

7.指令指针寄存器是(1 )。

①IP ②SP ③BP ④PSW

8.下面指令序列测试BH中的数是否为奇数,若为奇数则转移至K1处,横线处的指令应为()。

TEST BH,01H

____1_____K1

①JNE ②JZ ③JS ④JC

9.下面的数据传送指令中,错误的操作是( 4 )。

①MOV SS:[BX+DI],1000H ②MOV DX,1000H

③MOV WORD PTR[BX],1000H ④MOV DS,2000H

10.8255A工作在方式1时,端口A和端口B作为数据输入/输出使用,而端口C的各位分别作为端口A和端口B的控制信息和状态信息。其中作为端口A和端口B的中断请求信号的分别是端口C的()。

(A)PC4和PC2 (B)PC5和PC1 (C)PC6和PC7 (D)PC3和PC0

答: D

1.8255芯片具有 C 端口。

A)2 B)3 C)4 D)5

2.8255的 C 一般用作控制或状态信息传输。

A)端口A B)端口B C)端口C D)端口C的上半部分3.对8255的端口A工作在方式1输入时,C口的 C 一定为空闲的。

A)PC4、PC5 B)PC5、PC6 C)PC6、PC7 D)PC2、PC3

4.对8255的C口D3位置1的控制字为 B 。

A)00000110B B)00000111B C)00000100B D)00000101B 5.8255工作在方式1的输出时,OBF信号表示 B 。

A)输入缓冲器满信号 B)输出缓冲器满信号

C)输入缓冲器空信号 D)输出缓冲器空信号

3.在PC/XT机中键盘的中断类型码是09H,则键盘中断矢量存储在 B 。

A)36H~39H B)24H~27H C)18H~21H D)18H~1BH

4.3片8259A级联起来,可管理 C 级中断。

A)24 B)23 C)22 D)20 E)16 F)15 5.若8259A工作在优先级自动循环方式,则IRQ4的中断请求被响应并且服务完毕后,优先权最高的中断源是 B 。

A)IRQ3 B)IRQ5 C)IRQ0 D)IRQ4

7.PC/XT机中若对从片8259A写入的ICW2是70H,则该8259A芯片的IRQ5的中断矢量

存储的地址是 D (注:先算类型号,再*4得到)

A)75H B)280H C)300H D)1D4H

8.当向8259A写入的操作命令字OCW2为01100100时,将结束 E 的中断服务。

A)IRQ0 B)IRQ1 C)IRQ2 D)IRQ3 E)IRQ4

F)IRQ5 G)IRQ6 H)IRQ7

1.下面是关于可编程中断控制器8259A的叙述,其中错误的是( 3 )。

①.8259A具有优先级管理的功能②.8259A具有辨认中断源的功能

③.8259A具有向CPU提供中断向量的功能④.一片8259A可管理8级中断

2.由8088CPU组成的PC机的数据线是( 4)。

① 8条单向线② 16条单向线③ 8条双向线④ 16条双向线

3.为8088CPU提供地址总线需要(4 )。

① 一个8286 ② 两个8286 ③ 两个8282 ④ 三个8282 4.一个8259可提供(2 )个类型号。

① 1 ② 8③ 16 ④ 64

5.响应INTR请求的必要条件是(2 )。

① IF=0 ② IF=1 ③ TF=0 ④ TF=1

6.完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是(1)。

①MOV AL,00H ②AND AL,00H ③XOR AL,AL ④SUB AL,AL 7.当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是( 4 )。

①表示结果中含1的个数为偶数②表示结果中含1的个数为奇数

③表示该数为偶数④表示结果中低八位含1的个数为偶数8.在汇编语言程序中,对END语句的叙述正确的是(3 )。

①END语句是一可执行语句

②END语句表示程序执行到此结束

③END语句表示源程序到此结束

④END语句在汇编后要产生机器码

9.执行下列指令后,正确的结果是(2 )。

MOV AL,100

MOV BL,-2

①AL=100H

BL=02H ③AL=64H

BL=82H ④AL=100H

BL=0FEH

②AL=64H

BL=0FEH

10.当一个带符号数大于0FBH时程序转移,需选用的条件转移指令是(3 )。

①JLE ②JNL ③JNLE ④JL

1.寄存器间接寻址方式中,操作数在中。C

A)通用寄存器 B)堆栈 C)存储单元 D)段寄存器

2.寻址方式的跨段前缀不可省略。A

A)DS:[BP] B)DS:[SI] C)DS:[DI] D)SS:[BP]

3.假设(SS)=2000H,(SP)=0012H,(AX)=1234H,执行PUSH AX后, =12H A)20014 B)20011H C)20010H D)2000FH

4.若要检查BX寄存器中的D15位是否为1,应该用指令。C

A)OR BX,1000H B)TEST BX,1000H

JNZ NO JNZ YES

C) XOR BX,1000H D)AND BX,1000H

JZ YES JNZ YES

5.用BP作基址变址寻址时,操作数所在的段是当前。C

A)数据段 B)代码段 C)堆栈段 D)附加段

.若主程序段中数据段名为DATA,对数据段的初始化操作应为。B A)MOV AX,DATA B)MOV AX,DATA

MOV ES,AX MOV DS,AX

C)PUSH DS D)MOV DS,DATA

3..EXE文件产生在之后。 D

A)汇编 B)编辑 C)用软件转换 D)连接

4.定义双字变量的定义符是。C

A)DW B)DQ C)DD D)DT

5.下列存储器操作数的跨段前缀可省略的是。B

A)DS:[BP] B)SS:[BP] C)ES:[BX] D)ES:[SI]

3.堆栈操作时,段地址由寄存器指出,段内偏移量由寄存器指出。C、G A)CS B)DS C)SS D)ES E)DI F)SI G)SP H)BP

4.若当前DS的内容为2000H,则偏移量为1000H单元的地址可表示为。B

A)2000H.1000H B)21000H C)1000H∶2000H D)3000H

3.8086CPU在执行IN AL,DX指令时,DX寄存器的内容输出到上。A

A)地址总线 B)数据总线 C)存储器 D)寄存器

2. 8086CPU复位后,CPU执行的第一条指令的起始地址应是B

A) ROM,FFFF0H B) RAM,FFFF0H C) ROM,FFFFH D) RAM,FFFFH

3. 下述指令,正确的指令是 d (设BUF是字节变量,LAB为标号)

a.MOV BX,AL b.MOV BX,BUF

c.MOV BX,LAB d.MOV BX,OFFSET BUF

4 .下述中断,优先权级别最高的中断是a

a.NMI b.INTR c.单步中断d.INT n

6. 8086CPU的40根引脚中,有 c 个是分时复用的。

A)1 B)16 C)21 D)24

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 。

A)0FH B)0EH C)12H D)10H

9、接口的基本功能是 C 和 D 。

A)输出锁存B)输入锁存C)输出缓冲D)输入缓冲

10、堆栈操作时,段基址由 C 寄存器指出,段内偏移量由SP 寄存器指出。

A) CS B) DS C) SS D) ES

11. 下列四条指令中错误的是 D 。

A)MOV AX,[SI] B)MOV AX,[BP+DI]

C)MOV AX,[DI] D)MOV AX,[BP—DI]

12、在8086/8088系统中,约定用于形成堆栈段数据物理地址的寄存器有 A 。

A)SS,SP,BP B)SS,SP,BX

C)DS,BX,BP D)DS,SP,BP

13、.EXE文件产生在 D 之后。

A)汇编B)编辑C)用软件转换D)连接

15.指令指针寄存器是(1 )。

① IP

② SP

③ BP

④ PSW

16.完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是(1 )。

① MOV AL,00H

② AND AL,00H

③ XOR AL,AL

④ SUB AL,AL

17.下列指令执行后总是使CF=0,OF=0的是(1 )。

① AND

② NEG

③ NOT

④ INC

22.下面的数据传送指令中,错误的操作是(1)。

① MOV SS:[BX+DI],1000H

② MOV DX,1000H

③ MOV WORD PTR[BX],1000H

④ MOV DS,2000H

23.下面指令执行后,变量DAB中的内容是(3 )。

DAW DW 2A05H

DAB DB 0FAH

:

MOV AL,BYTE PRT DAW

SUB DAB,AL

① 0DAH

② 0FAH

③ 0F5H

④ 0D0H

24.执行下列指令后,正确的结果是(2 )。

MOV AL,100

MOV BL,-2

① AL=100H

BL=02H

② AL=64H

BL=0FEH

③ AL=64H

BL=82H

④ AL=100H

BL=0FEH

25.设数据段中已有:

DA1 DB 12H,34H

DA2 DW 56H,78H

下面有语法错误的语句是(2 )。

① ADR1 DW DA1

② MOV DA1+1,AX

③ MOV BYTE PTR DA2+1,AL

④ MOV WORD PTR DA1+1,AX

27.DATA SEGMENT

TA1 DW 0102H,0304H,0506H

TA2 DB 02H,03H,04H

:

MOV BX,DS:[0006H]

AND BX,0FFH

AND BH,[BX]

上述指令序列运行后,BX的内容是(4 )。

① 0605H

② 0402H

③ 0606H

④ 0204H

32.IBM PC机的8088处于最大模式,其总线仲载是由(2 )裁决。

①非RQ/非GT

② 8289

③ 8087

④ 8288

33.8088的一个总线周期可交换(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)=______

②设执行前SP=200H,执行后SP=____________

2AB.读下面程序段,请问,在什么情况下,本段程序的执行结果是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,60H

MOV BL,20H

STC

ADC AL,BL

问程序执行后,AL= BL= CF=

.已知(DS)=09lDH,(SS)=1E4AH,(AX)=1234H,(BX)=0024H,(CX)=5678H,(BP)=0024H,(SI)=0012H,(DI)=0032H,(09226H)=00F6H,(09228H)=1E40H,(1E4F6H)=091DH。下列各指令或程序段分别执行后的结果如何?

(1)MOV CL,20H[BX][SI]

(2)MOV [BP][DI],CX

(3)LEA BX,20H[BX][SI]

MOV AX,2[BX]

(4)LDS SI,[BX][DI]

MOV [SI],BX

(5)XCHG CX,32H[BX]

XCHG 20H[BX][SI],AX

答(1) (CX)=56F6H;

(2) (09226H)=5678H;

(3) (AX)=1E40H;

(4) (1E4F6H)=0024H;

(5) (09226H)=1234H,(AX)=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

试问程序段执行后(BL)=11100100B=_E4H_(AL)=11111001B=F9H

5.程序段如下:

BLK1 DB 46,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]

:

请回答程序段运行后:(AL)=_____46_______

(BL)=____84________

14.对于下面的数据定义,各条MOVE指令单独执行后,有关寄存器的内容是什么?FLDB DB

TABLEA DW 20DUP(?)

TABLEB DB ‘ABCD’

MOVE AX,TYPE FLDB

MOVE AX,TYPE TABLEA

MOVE CX,LENGTH TABLEA

MOVE DX,SIZE TABLEA

MOVE CX,LENGTH TABLEB

解答:

AX=0001H

AX=0002H

CX=0014H

DX=0028H

CX=0001H。

19.读下面程序段,请问:在什么情况下,本段程序的执行结果是AH=0? 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)结果在哪里?

解答:完成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

LOOP :MOV DL ,0

HLT

23.编一程序段,完成符号函数(-128≤x≤127):

1 (x.>0)

y= 0 (x=0)

-1 (x<0)

假设x的值存放在DATAl中,y的值存放在DATA2中。

解答: START :MOV AL ,DATA1

AND AL,AL

JGE BIGR

MOV AL,0FFH

MOV DATA2.AL

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

相关文档