微机原理与语言复习题及参考答案

时间:2019-05-13 22:39:40下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《微机原理与语言复习题及参考答案》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《微机原理与语言复习题及参考答案》。

第一篇:微机原理与语言复习题及参考答案

中南大学网络教育课程考试复习题及参考答案

微型机原理与汇编语言

一、单项选择题:

1.设AL=0A8H,CX=2,CF=1,执行RCL AL,CL指令后,AL中的值为()A.51H B.A3H C.47H D.0C5H 2.下述指令的执行结果是()

MOV AL,0C2H AND AL,0F0H A.AL=40H B.AL=20H C.AL=0C0H D.AL=0E0H 3.完成对CL寄存器的内容乘以4的正确操作是 A.ROL CL,1 B.MUL 4 C.SHL CL,1 D.MOV CL,2 ROL CL,1 SHL CL,1 SHL CL,CL 4.无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,应执行的指 A.ADD BH,01H B.OR BH,01H C.XOR BH,01H D.TEST BH,01H 5.假设(AL)= 37H,(BL)= 95H,执行指令IMUL BL后(AX)= A.0E903H B.2003H C.0DBBH D.2008H 6.下面的数据传送指令中,错误的操作是 A.MOV SS:[BX+DI],1000H B.MOV DX,1000H C.MOV WORD PTR[BX],1000H D.MOV DS,2000H 7.CPU 要访问的某一存储单元的实际地址称 A.段地址 B.偏移地址 C.物理地址 D.逻辑地址

8.某存储单元的物理地址是 12345H,可以作为它的段地址有 A.2345H B.12345H C.12340H D.1234H 9.计算机能直接识别的的语言 A.汇编语言 B.机器语言 C.高级语言 D.低级语言

10.下列指令中操作数在代码段中的是 A.MOV AL,25H B.ADD AH,BL C.INC DS:[25] D.CMP AL,BL 11.直接、间接、立即三种寻址方式指令的执行速度,由决至慢的排序为 A.直接、立即、间接 B.直接、间接、立即 C.立即、直接、间接 D.不一定

12.若栈顶的物理地址是2010011,当执行完指令CALL AX后,栈顶的物理地址是 A.2010211 B.2010111 C.200FFH D.200FEH 13.当执行完下列指令序列后,标志位CF和OF的值是 MOV AX,OC126H MOV BX,5AB7H SUB AX,BX A.0,0 B.0,1 C.1,0 D.1,1 14.JMP BX的目标地址偏移量是 A.SI 的内容 B.SI 所指向的内存字单元之内容 C.IP+SI 的内容 D.IP+[SI] 15.指令MOV AX,10[BX]的源操作数的寻址方式是 A.基址寻址 B.寄存器寻址 C.变址寻址 D.寄存器相对寻址

16.指出下列哪个数据在汇编语言中是非法的? A.19BH+25D B.25+AL C.108-102Q D.101B*OABH 17.用来存放即将执行的指令的偏移地址的寄存器是 A.SP B.IP C.BP D.CS 18.源变址寄存器是 A.SI B.DI C.SP D.BX

()()()()()()()()())())))))((((((19.设SP=1200H,执行POP AX后,SP中的内容为()A.SP=1112H B.SP=11OEH C.SP=1111H D.SP=11OFH 20.数字6704不可能是()A.六进制数 B.十进制数 C.十二进制数 D.十六进制数

21.下面四个寄存器中,不能用于间接寻址的寄存器是()A.BX B.AX C.BP D.DI 22.若(BX)=OCA8H,则执行指令

MOV CL,8 ROR BX,CL后,(BX)=()

A.OCA8H B.8ACOH C.OA80CH D.OA8COH 23.下面数据传送指令中,正确的是 A.MOV DS,ES B.MOV AL,WORD PTR [BX+DI] C.MOV AL,BYTE PTR [SI+DI] D.MOV CX,[SI] 24.下列哪一种寻址方式最快? A.立即寻址 B.直接寻址 C.寄存器寻址 D.寄存器间接寻址

25.寄存器间接寻址中,操作数在 A.通用寄存器 B.堆栈 C.主存单元 D.段寄存器

26.在顺序结构的流程图中,不包含有 A.起始框 B.终止框 C.判断框 D.处理框

27.以8086/8088为CPU的微机内存最大容量为 A.4MB B.1MB C.640KB D.64KB 28.与lA.5H不等的数据是 A.26.3125D B.11010.0101B C.32.5Q D.10110.0100B 29.8位二进制补码表示的整数数据范围是 A.-128~127 B.-127~127 C.-128~128 D.-127~128 30.下列四个寄存器中,不允许用传送指令赋值的寄存器是 A.CS B.DS C.ES D.SS 31.指令MOV 100[SI][BP],AX的目的操作数的隐含段为 A.数据段 B.堆栈段 C.代码段 D.附加段

32.运算型指令的寻址和转移型指令的寻址,其不同点在于 A.前者取操作数,后者决定程序的转移地址 B.后者取操作数,前者决定程序的转移地址 C.两者都是取操作数

D.两者都是决定程序的转移地址

33.设AL=0A8H,CX=2,CF=1,执行RCL AL,CL指令后,AL= A.51H B.A3H C.47H D.0C5H 34.目的变址寄存器是 A.SI B.DI C.SP D.BX 35.下列常用寻址方式中,哪种属于立即寻址?()A.MOV AX,ES:[2000H] B.MOV [BX],AX C.MOV AX,2000H D.MOV AX,[BX+3AH] 36.设SP=1110H,执行PUSH AX后,SP中的内容为 A.SP=1112H B.SP=110EH C.SP=I111H D.SP=110FH 37.下列指令中错误的指令为 A.MOV AX,CS B.MOV DS,1500H C.MOV SI,BX D.MOV [2000H],BL 38.语句DA1 DB 2 DUP(3,5),7 汇编后,与该语句功能等同的语句是 A.DA1 DB 3,5,7 B.DA1 DB 2,3,5,7 C.DA1 DB 3,5,3,5,7 D.DA1 DB 3,5,7,3,5,7 39.下面四个寄存器中,用来作为I/O端口间接寻址的寄存器是

()()()()()()()()()()()()()()()()A.BX B.DX C.BP D.DI 40.下列哪一种寻址方式最快?()A.立即寻址 B.直接寻址 C.寄存器寻址 D.寄存器间接寻址

41.在串处理指令REPNZ CMPSB表示在()A.当(CX)不等于0且ZF等于1的情况下,重复执行串搜索 B.当(CX)不等于0且ZF等于0的情况下,重复执行串搜索 C.当(CX)不等于0且ZF等于1的情况下,重复执行串比较 D.当(CX)不等于0且ZF等于0的情况下,重复执行串比较 42.若(DX)=0A74CH,(CL)=5,则指令SAR DX,CL执行后,(DX)=()A.053AH B.653AH C.0FD3AH D.740AH 43.完成将有符号数BX的内容乘以2的正确指令是()A.SHR BX,1 B.SAR BX,1 C.SAL BX,1 D.RCR BX,1 44.指令LOOPNZ的循环执行条件是()A.CX ≠0且ZF=0 B.CX ≠0或ZF=0 C.CX ≠0且ZF=1 D.CX ≠0或ZF=1 45.下列寄存器中不能作为间址寄存器的是()A.SI B.DI C.CX D.BX 46.JMP WORD PTR[BX]转移的目标地址是()A.BX 中的内容 B.SP+BX 之和 C.IP+[BX]之和 D.BX指示的内存单元之内容

二、填空题:

1.计算机中的CPU由__________和__________组成。

2.(513.85)10 =(__________)16 ;(105.3)8 =(__________)10。

3.假定机器的字长为8位,且最高位为符号位,则(-127)10的原码用8位二进数表示为__________,其补码用8位二进数可表示为__________。

4.I/O端口有两种编址方式,分别是 __________ 和 __________。

5.8086/8088的中断系统能够处理 __________ 个不同的中断源,并为每一个中断安排一个编号,称为中断类型。每种中断类型对应的中断服务程序的入口地址称为 __________。

6.循环结构的程序主要由 __________、循环体、__________ 和循环控制部分组成。7.若DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOV AX,(SI+COUNT)中,源操作数的有效地址EA为__________,其物理地址为__________。

8.当标志位__________=1时表示无符号数运算产生溢出,而当标志位__________=1是表示带符号数运算产生溢出。

9.将十进制数513.85转换成二进制数、八进制数、十六进制数和BCD码分别可表示为__________、__________、__________、__________。

10.十进制数52的原码、反码、补码(采用8位二进制,最高位为符号位)分别可表示为_________、__________、__________。

11.已知某个数的补码为9DH,则其真值为__________。

12.以下宏定义的功能是将一位十六进制数转换为ASCII码,请在空白处填入恰当内容,使程序完整。

HEXTOA __________ AND AL,0FH CMP AL, __________ JNA HEXTOA1 ADD AL,7H HEXTOA1: ADD AL, __________ ENDM 13.地址2000H: 0480H,其物理地址是__________,段地址是__________,偏移量是__________。14.225D= __________B= __________H。

15.已知[X]补=11010101,则X= __________D。

16.执行部件EU的主要功能是:____________________和____________________。

17.8086 CPU在取指令时,会选取段寄存器__________的值作为段基值,再加上由__________提供的偏移地址形成20位的物理地址。

18.8086最多可处理__________种中断,对每一个中断都设置一个__________。19.8086 CPU有两种外部中断请求线,它们分别是__________和__________。

20.CPU与外设之间的数据传送方式有__________、__________、__________和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.十进制数-26的原码、反码、补码(采用8位二进制,最高位为符号位)分别为__________、__________、__________;已知一个数的补码为B2H,其真值为__________。

29.汇编语句中,语句标号具备的三种属性分别是__________、__________、__________;变量具备的三种属性分别是__________、__________、__________。

30.8086CPU的数据总线为_________位,地址总线为_________位,最大的存储空间是_________。31.8086CPU的标志寄存器共有9个有效标志位,其中有6个状态标志位,分别是_________、__________、_________、__________、_________、__________。

32.已知X=-1011011B,则X的反码为_________,X的补码为_________。

33.8086CPU在取指令时,会选取段寄存器__________的值作为段基值,再加上由__________提供的偏移地址形成20位的物理地址。

三、判断题:

1.奇偶标志位PF,当运算结果的低8 位中有偶数个1时,被置为0。[ ] 2.CS, DS, ES和SS段都可以存放指令代码。[ ] 3.MOV SI,[SI] [ ] 4.MOV [DI],[SI] [ ] 5.两数相等时转移可用JZ指令。[ ] 6.OUT [BX],AL [ ] 7.当IF=0时,CPU 不能响应NMI中断。[ ] 8.把若干个模块连接起来成为可执行文件的系统程序是汇编程序。[ ] 9.使汇编程序执行某种操作的命令是宏指令。[ ] 10.串操作指令中,目的操作数的段地址一定在DS寄存器中。[ ] 11.在汇编语句AGAIN: INC SI中的AGAIN称为标号。[ ] 12.MOV BH,1000[SI],该指令中源操作数采用的寻址方式是寄存器间接寻址。[ ] 13.OR AL,AL 是逻辑或操作指令。[ ] 14.DOS 系统功能调用中,显示单个字符的系统调用号是 01H。[ ] 15.使计算机执行某种操作的命令是伪指令。[ ]

四、改错题:

1.下述程序执行后,应将LIST数组中的最大值存入MAX单元,数组元素为无符号字数据,数据个数在CNT单元中。现已知程序有错,请改正,使之完成预定功能。1)DSEG SEGMENT 2)LIST DW 1,200,30,400,0,7,4000

3)

CNT DB 7 4)

MAX DW? 5)

DSEG ENDS 6)

CSEG SEGMENT 7)

ASSUME DS:DSEGDS:CODE 8)FMAX: MOV DX,DSEG 9)

MOV DS,AX 10)

LEA SI,LIST 11)

MOV CX,CNT 12)

CLD 13)

LODSW 14)

DEC CX 15)

CMP AL,[SI] 16)

JLE SMALL 17)

LODS W 18)SMALL: INC SI 19)

INC SI 20)

DEC CX 21)

LOOP AGAIN 22)

MOV MAX,SI 23)

MOV AL,4CH 24)

INT 21H 25)CSEG END 26)

END START 2.下面的程序是将内存单元一字节数据乘以10放回单元的程序,找出错误并改正。

DATA SEGMENT DA DW 34 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV SI,OFFSET DA MOV AL,[SI] MUL 10 MOV [SI],AX MOV AH,4CH INT 21H CODE ENDS END START

五、简答题:

1.80386/80486有几种工作模式?各有什么特点?

2.假定一个名为MAINPRO的程序要调用子程序SUBPRO,试问:

(1)MAINPRO中的什么指令申明汇编程序SUBPRO是在外部定义的?(2)SUBPRO怎么知道MAINPRO要调用它?

3.现有(DS)=2000H,(BX)=O100H,(SI)=0002H,(20100H)=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,1100H[BX](4)MOV AX,[BX+SI](5)MOV AX,[1100H+BX+SI] 4.汇编语言源程序的语句类型有哪几种?各自的作用和使用规则是什么?

5.一个汇编源程序应该由哪些逻辑段组成?各段如何定义?各段的作用和使用注意事项是什么? 6.什么是微型计算机的系统总线?定性说明微处理器三大总线的作用。

六、程序分析题:

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 L5 2.已知数据段中定义

DAT1DB 12H,34H,56H,78H MOVCX,0 MOVAX,WORDPTRDAT1 MOVCL,DAT1+3 当程序段执行完后AX=________,CX=________。3.执行完程序后,回答指定的问题。

BLOCK DB 20H,1FH,08H,81H,OFFH„ RESULT DB?

START: LEA SI,BLOCK MOV CH,O MOV CL,[SI] DEC CX INC SI MOV AL,[SI] LOP1: CMP AL,[SI+1] JLE NEXT MOV AL,[SI+1] NEXT: INC SI LOOP LOP1 MOV RESULT,AL HLT 问:(1)该程序的功能是();

(2)该程序的循环次数是()。4.分析下列程序,回答问题:

(1)该程序完成什么功能?

(2)程序中的INC SI可否用指令ADD SI,1代替,为什么?(3)程序中的指令LEA SI,DATAI可用指令()代替。

(4)CLC指令的目的是()。DATA SEGMENT DATAI DB 85H,27H,4AH DATA2 DB 93H,87H,65H LEGH DW 3 SUM DB 0,0,0 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX LEA SI,DATA1 LEA BX,DATA2 LEA DI,SUM MOV CX,LEGH CLC AGAIN: MOV AL,[SI] ADC AL,[BX] MOV [DI],AL INC SI INC BX INC DI LOOP AGAIN MOV AH,4CH 1NT 21H CODE ENDS END START 5.执行完程序后,回答指定的问题。MOV AX,200H MOV BX,500H MOV [BX+1OH],30H ADD AX,[BX+1OH] LEA SI,[BX+lOH] MOV 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-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。

6.给定一个正数N>1放在VALU单元中,编写一段递归子程序计算FIB(N),并将结果存入RESULT单元中,该函数定义如下:

参考答案

一、单项选择题:

1.B 2.C 3.C 4.B 5.A 6.D 7.C 8.D 9.B 10.A 11.C 12.D 13.C 14.A 15.D 16.B 17.B 18.A 19.B 20.A 21.B 22.C 23.D 24.A 25.C 26.C 27.B 28.C 29.A 30.A 31.B 32.A 33.B 34.B 35.C 36.B 37.B 38.C 39.B 40.A 41.B 42.C 43.C 44.C 45.C 46.D

二、填空题:

1.运算器 控制器 2.201.D999 69.375 3.11111111 10000001 4.统一编址 独立编址

5.256 中断向量 6.循环初始化部分 循环参数修改部分 7.20A8H 11488H 8.CF OF 9.1000000001.1011B 1001.6631O 201.D999H 10100010011.10000101B 10.00110100B 00110100B 00110100B 11.-63H 12.MACRO 9 30H 13.20480H 2000H 0480H 14.11100001 E1 15.-43H 16.执行指令 产生访问存储器时所需的16位偏移地址 17.CS IP 18.256 中断码类型

19.NMI INTR(可屏蔽中断请求信号)

20.无条件传送 查询方式传送 中断方式传送

21.运算器 控制器 存储器 输入设备 输出设备 22.43.625 53.5 2B.A 23.39H 24.统一编址 独立编址 64KB 25.99A40H 26.3253.11 1707.141 27.30H 4BH 28.10011010B 11100101B 11100110B-4EH 29.段属性 偏移量属性 距离属性; 段属性 偏移量属性 类型属性 30.16 20 1MB 31.进位标志位(CF)辅助进位标志位(AF)符号标志位(SF)

零标志位(ZF)溢出标志位(OF)奇偶标志位(PF)32.10100100B 10100101B 33.CS IP

三、判断题:

1.× 2.× 3.× 4.× 5.√ 6.× 7.× 8.× 9.× 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行,去掉该行语句(7)22行,SI改为AX(8)23行,AL改为AH(9)25行,END改为ENDS(10)26行,START改为程序入口标号FMAX 2.解答:

MOV AL,[SI] 改为MOV AL,BYTE PTR [SI] MUL 10 改为MOV BL,10

MUL BL

五、简答题:

1.答:80386/80486有实地址模式、保护模式和虚拟8086模式三种工作方式。

⑴实地址模式下的80386/80486的工作原理与8086相同,内存管理只采用分段管理方式,而不采用分页管理;内存最大空间为1MB,采用段地址寻址的存储方式,每个段最大为64KB;操作数的默认长度为16位。

⑵保护模式下,CPU实际可访问的物理空间最大为4GB,可选择使用分页结构;存储器空间用逻辑地址、线性地址和物理地址空间描述;CPU基本结构没有发生变化,指令和寻址方式依旧。在这种寻址方式中,可以对存储器实施保护功能(禁止程序非法操作)和特权级的保护功能(主要保护操作系统的数据不被应用程序修改)。

虚拟8086模式下,既有保护模式功能,又可执行8086的指令代码。2.答:(1)只要在MAINPRO中用EXTRN说明SUBPRO即可;

(2)只要定义SUBPRO时用PUBLIC定义即可。3.答:(1)AX=4C2AH(2)AX=3412H(3)AX=4C2AH(4)AX=7856H(5)AX=65B7H 4.答:汇编语言源程序的语句类型通常有3种类型,分别是:指令语句、伪指令语句和宏指令语句。(1)指令语句是能产生目标代码、CPU可以执行的能完成特定功能的语句,主要由CPU指令组成。(2)伪指令语句是种不产生目标代码的语句,在汇编过程中告诉汇编程序应如何汇编。

(3)宏指令语句是一个指令序列,汇编时凡有宏指令语句的地方都将用相应的指令序列的目标代码插入。

5.答:汇编程序是将汇编源程序自动翻译成目的程序的软件,而汇编源程序是用汇编语言编写的程序。汇编程序的主要功能是将由汇编语言(助记符)编写的源程序翻译成用机器语言(二进制代码)编写的目标程序;汇编源程序的作用是进行程序设计。

6.答:微型计算机的系统总线是CPU与其他部件之间传送数据、地址和控制信息的公共通道。根据传送内容的不同,系统总线可分成以下3种:

(1)数据总线DB(Data Bus):用于CPU与主存储器、CPU与I/O接口之间传送数据。数据总线的宽度等于计算机的字长。数据总线一般为双向总线,可以向两个方向传输数据。

(2)地址总线AB(Address Bus):用于CPU访问主存储器和外部设备时传送相关的地址。地址总线的宽度决定CPU的寻址能力。

(3)控制总线CB(Control Bus)用于传送CPU对主存储器和外部设备的控制信号。

7.答:宏与子程序两者的相同之处在于:都是用来处理在编程过程中多次使用的功能程序的方法,两者均能简化源程序。两者的区别在于:

(1)宏调用通过宏指令名进行,汇编时,随时调用随时展开,并不简化目标程序:子程序调用是在程序执行期间执行CALL指令,代码只在目标程序中出现一次,所以也简化了目标程序。

(2)宏调用时的参数由汇编程序通过实参转换成形参的方式传递,具有很大的灵活性。宏定义中允许设置若干形式参数代替数值、指令、寄存器、各种字符串等。宏调用时可用程序所需要的实际参数来替换,使编程人员感觉非常灵活;而子程序的参数传递要麻烦得多。

(3)宏调用在汇编时完成,不需要额外的时间开销;子程序调用和子程序返回都需要时间,还涉及堆栈操作。

故若优先考虑速度,用宏指令;若优先考虑存储空间,用子程序。

六、程序分析题:

1.答:(1)L1(2)L1(3)L2(4)L3(5)L3 2.答:AX=3412H,CX=0078H 3.(1)从一组数中寻找最小数送RESULT单元。(2)31次。4.解答:

(1)该程序用来将存放在DATA I和DATA2开始的单元中的两个多字节数据相加,并将结果放在SUM开始的连续单元中。

(2)不可以。因为ADD指令影响进位标志位CF状态。(3)MOV SI,OFFSET DATA1(4)清进位,以使在数据最低字节相加时,可以用ADC指令。5.解答:SI=510H BX=230H

七、程序设计: 1.参考答案如下:

DATA SEGMENT DAT DW 0A5D2H DAT1 DB ? DAT2 DB ? DAT3 DB ? DAT4 DB ? DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS: DATA START: MOV AX, DATA MOV DS, AX MOV AX, DAT MOV BX, 0F0FH AND BX, AX MOV DAT1, BL MOV DAT3, BH MOV BX, 0F0F0H AND BX, AX MOV DAT2, BL MOV DAT4, BH MOV AH, 4CH INT 21H CODE ENDS END START 2.参考答案如下:

分析:假设子程序的入口参数成绩表长度放在CX中,SI指向成绩表首单元;出口参数放在S6, S7,S8,S9和S10单元中,并且各单元初值均为0。参考子程序如下:

;子程序名:GRADES ;功能:统计成绩表GRADES中各个分数段的人数

;入口参数:CX中为成绩表长度,SI指向成绩表首单元

;出口参数:各个分数段人数分别放在存储单元S6, S7,S8,S9和S10中 ;所用寄存器:AL, CX,SI

GRADES PROC

PUSH CX

;保护用到的寄存器 PUSH SI PUSH AX NEXT: CMP CX,O

;判断成绩表是否结束

JZ EXIT DEC CX MOV AL,[SI]

;将要比较的成绩放在AL中 INC SI CMP AL,100 JB GRADE9

;小于100,转向GRADE9 INC[S10]

;S10单元内容增1 JMP NEXT GRADE9:CMP AL,90 JB GRADE8

;小于90,转向GRADE8 INC [S9]

;S9单元内容增1 JMP NEXT GRADE8:CMP AL,80 JB GRADE7

;小于80,转向GRADE7 INC[S8]

;S8单元内容增1 JMP NEXT GRADE7:CMP AL,70 JB GRADE6

;小于70,转向GRADE6 INC [S7]

;S7单元内容增1 JMP NEXT GRADE6: INC [S6]

;S6单元内容增1 JMP NEXT EXIT: POP AX POP SI POP CX RET GRADES ENDP 3.(1)参考程序如下:

DATA SEGMENT BUF1 DB-10,0,11,55,125,38,-69,„

;N字节数据 CN EQU $-BUF1 BUF2 DB CN DUP(?)DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV BX,OFFSET BUF1 LEA SI,BUF2 MOV CX,CN LOP1: MOV AL,[BX]

MOV [SI],AL INC BX INC SI

LOOP LOPl MOV AH,4CH INT 21H CODE ENDS END START(2)程序的数据定义部分与(1)中相同,不再重复。参考程序段如下: CODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA START: MOV AX,DATA MOV DS,AX MOV ES,AX MOV SI,OFFSET BUF1 MOV DI,OFFSET BUF2 CLD MOV CX,CN REP MOVSB MOV AH,4CH INT 21 H CODE ENDS END START(3)程序的开头和结尾与(2)中相同,不再重复。参考程序段如下:

MOV DS,AX MOV ES,AX MOV SI,OFFSET BUF1 MOV DI,OFFSET BUF2 CLD MOV CX,CN LOP: LODSB INC SISTOSB INC DI LOOP LOP 4.参考答案如下:

DATA SEGMENT BUFFER DB OOH, 12H,3BH,43H,60H,OCH DB 8AH,OABH,37H,OFFH,32H,47H COUNT EQU $-OFFSET BUFFER DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV SI,OFFSET BUFFER MOV CX,COUNT MOV AL,[SI]

;把 NEXT: INC SI LOOP COMPA

;比较完否? MOV BL,AL

;是,大数在AL中,将其存入BX中 MOV DL,AL MOV CL,4 SHR DL,CL CMP DL,OAHJB L1 ADD DL,7 Ll: ADD DL,30H MOV AH,02H INT 21H

;显示高位 MOV DL,BL

;将大数放到DL中 AND DL,OFH

;将高4位屏蔽 CMP DL,OAH JB L2 ADD DL,7 L2: ADD DL,30H MOV AH,02H INT 21 H

;显示低位 MOV AH,4CH INT 21H CODE ENDS END START 5.参考答案如下:

DATA SEGMENT ADRX DW 144 ADRY DW 12 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV AX,ADRX MOV DX,O DIV ADRY CMP DX,O JZ NEXT MOV DL,'1’ JMP EXIT NEXT: MOV DL,'0' EXIT: MOV AH,02H INT 21H MOV AH,4CH INT 21H CODE ENDS END START 6.参考答案如下:

DATA SEGMENT X DB 8

RESULT DB ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV CL,X CMP CL, 1 JNZ NEXT MOV RESULT,1 JMP EXIT NEXT: CMP CX,2 JNZ LP MOV RESULT,1 JMP EXIT LP: MOV AL, 1 MOV BL,1 CALL FIB MOV RESULT,BL MOV AH,4CH INT 21H FIB PROC NEAR ADD AL,BL XCHG AL,BL DEC CL CMP CL,2 JZ NEXT CALL FIB NEXT: RET FIB ENDPCODE ENDS END START

第二篇:微机原理复习题及答案

一、选择题

1.一般微机中不使用的控制方式是(D)A.程序查询方式

B.中断方式

C.DMA方式

D.通道方式 2.控制器的功能是(C)A.产生时序信号 B.从主存取出指令并完成指令操作译码 C.从主存取出指令,分析指令并产生有关的操作控制信号 D.控制计算机的一切核心功能

3.采用级联方式使用8259中断控制器,可使它的中断源最多扩大到(D)个 A.8 B.16 C.32 D.64 4.Pc机数据总线信号的状态是:(C).A.单向双态 B.单向三态 C.双向三态 D.双向双态 5.地址总线为32位的微机系统中其内存最大容量为(D)A.2000KB B.2048KB C.2048MB D.4096MB 6.CPU中程序计数器(PC)中存放的是(B)A.指令 B.指令地址 C.操作数 D.操作数地址 7.采用条件传送方式时,必须要有(C).A.中断逻辑 B.请求信号 C.状态端口 D.类型号 8.在任何一个总线周期的T1状态,ALE输出(A)A.高电平B.低电平C.高阻态 D.无电流 9.若标志寄存器的奇偶标志位PF置“1”反映操作(C)A.结果是偶数 B.结果是奇数 C.结果中“1”的个数为偶数 D.结果中“1”的个数为奇数 10.在DMA方式下,CPU与总线的关系是(C).A.只能控制数据总线 B.只能控制地址总线 C.成隔离状态 D.成短接状态 11.当使用BP寄存器作基址寻址时,若无指定段替换,则内定在(B)段内寻址。A.程序 B.堆栈 C.数据 D.附加

12.某DRAM芯片,其存储容量为512KX*8位,该芯片的地址线和数据线数目为(D)A.8,512 B.512,8 C.18,8 D.19,8 13.计算机的存储器采用分级存储体系的主要目的是(D)。

A.便于读写数据 B.减小机箱的体积 C.便于系统升级 D.解决存储容量、价格和存取速度之间的矛盾 14.CPU中程序计数器(PC)中存放的是(B)A.指令 B.指令地址 C.操作数 D.操作数地址 15.外设的中断类型码必须通过16位数据总线的(B)传送给8086.A.高8位 B.低8位 C.16位 D.高4位

16.磁盘存储器的数据存取速度与下列哪一组性能参数有关?(B).A.平均等待时间,磁盘旋转速度,数据传输速串 B.平均寻道时间,平均等待时间,数据传输速串 C.数据传输速率,磁盘存储密度,平均等待时间 D.磁盘存储器容量,数据传输速率,平均等持时间 17.8259的OCW1----中断屏蔽字(C)设置.A.在ICW之前 B.只允许一次 C.可允许多次 D.仅屏蔽某中断源时 18.PC机中的硬中断服务程序执行的是:(A)。

A.外部中断请求CPU完成的任务 B.主程序中安排的中断指令 C.主程序中安排的转移指令 D.主程序中安排的调用指令 19.标志寄存器的标志位ZF=1表示运算结果(A)A.为零 B.为负 C.溢出 D.有进位 20.在DMA方式下,CPU与总线的关系是(C).A.只能控制数据总线 B.只能控制地址总线 C.成隔离状态 D.成短接状态 21.存储单元是指(B)

A.存放一个二进制信息位的存储元 B.存放一个机器字的所有存储元集合 C.存放一个字节的所有存储元集合 D.存放两个字节的所有存储元集合 22.提出中断请求的条件是(B).A.外设提出请求 B.外设工作完成和系统允许时

C.外设工作完成和中断标志触发器为“1”时 D.外设需要工作

23.计算机的主存储器容量达到10M时,其地址的表示至少需要使用多少个2进位?(C).A.10位 B.20位 C.30位 D.40位 24.I/O与主机信息的交换采用中断方式的特点是(B)A.CPU与设备串行工作,传送与主程序串行工作 B.Cpu与设备并行工作,传送与主程序串行正作 C.CPU与设备并行工作,传送与主程序并行工作.D.以上都不对

25.当8086/8088访问100H端口时,采用(C)寻址方式.A.直接 B.立即 C.寄存器间接 D.相对 26.Pc机数据总线信号的状态是:(C).A.单向双态 B.单向三态 C.双向三态 D.双向双态 27.某DRAM芯片,其存储容量为512KX*8位,该芯片的地址线和数据线数目为(D)A.8,512 B.512,8 C.18,8 D.19,8 28.下面关于主存储器(也称为内存)的叙述中,不正确的是:(B).A.主存储器向CPU提供要执行的数据,程序段等 B.存储器的读、写操作一次读出或写入一个字节 C.字节是主存储器中信息的基本编址单位

D.从程序设计的角度来看,cacbe(高速缓存)也是主存储器 29.段定义语句以(B)语句结束。

A.END B.ENDS C.ENDP D.ENDM 30.8255A的(C)只能工作在方式0。

A.A端口 B.B端口 C.C端口 D.前三者 31.8253—5是可编程的(A)接口芯片。

A.定时器/计数器 B.并行 C.串行 D.中断控制器 32.存储器是计算机系统的记忆设备,它主要用来(C)

A.存放数据 B.存放程序 C.存放数据和程序 D.存放微程序 33.串行传送的波特率是指单元时间内传送(A)数据的位数。

A.二进制 B.八进制 C.十进制 D.十六进制 34.下面关于主存储器(也称为内存)的叙述中,不正确的是:(B).A.主存储器向CPU提供要执行的数据,程序段等 B.存储器的读、写操作一次读出或写入一个字节 C.字节是主存储器中信息的基本编址单位

D.从程序设计的角度来看,cacbe(高速缓存)也是主存储器

35.某计算机字长32位,存储容量为4MB,若按字编址,它的寻址范围是(A)A.0-1M B.0-4MB C.0-4M D.0-1MB 36.一条指令中目的操作数不允许使用的寻址方式是(B)

A.寄存器寻址 B.立即数寻址 C.变址寻址

D.寄存器间接寻址 37.在8086/8088中,一个最基本的总线周期由4个时钟周期(T状态)组成,在T1状态,CPU在总线发出(C)信息.A.数据 B.状态 C.地址 D.其他

38.采用两只中断的控制器8259A级联后,CPU的可屏蔽硬中断源能扩大到(D)A.64个 B.32个 C.16个 D.15个 39.下列寄存器为8位的寄存器有(D)A.IP B.AX C.BP D.BH 40.地址总线为32位的微机系统中其内存最大容量为(D)A.2000KB B.2048KB C.2048MB D.4096MB 41.8259的OCW1----中断屏蔽字(C)设置.A.在ICW之前 B.只允许一次 C.可允许多次 D.仅屏蔽某中断源时 42.在汇编语言程序设计中,标号和变量的类型属性分别有:(A)。A.BIT、BYTE、WORD、DWORD B.NEAR、FAR C.EAR、FAR 和BYTE、WORD、DWORD D.CODE、DATA、STACK 43.在任何一个总线周期的T1状态,ALE输出(A)A.高电平B.低电平C.高阻态 D.无电流 44.下面哪一个是8088CPU中的代码段寄存器(A)A.CS B.DS C.ES D.SS 45.8086CPU可扩展I/O端口地址的个数最多为(D)A.1K B.4K C.8K D.64K 46.Pc机数据总线信号的状态是:(C).A.单向双态 B.单向三态 C.双向三态 D.双向双态

47.采用级联方式使用8259中断控制器,可使它的中断源最多扩大到(D)个 A.8 B.16 C.32 D.64 48.存储器是计算机系统的记忆设备,它主要用来(C)

A.存放数据 B.存放程序 C.存放数据和程序 D.存放微程序

49.对于一低速外设,在外设准备数据期间希望CPU能做自己的工作,只有当外设准备好数据后才与CPU交换数据。完成这种数据传送最好选用的传送方式是(C)A.无条件传递方式 B.查询传送方式 C.中断传送方式 D.DMA传送方式 50.设8255A的端口地址为80H~ 83H,则端口A的地址为(A)A.80H B.81H C.82H D.83H

二、填空题

1.Intel 8255A是一个_可编程的通用并行输入输出_ 接口芯片。

2.设某容量为4K的RAM芯片的起始地址为2000H(16位地址),则其终止地址为_2FFFH_.3.一个控制系统,当主设备发生异常时,需向CPU告警,请求处理,否则将危及工作人员的生命及设备的安全,此告警线应接到8086CPU的_ NMI__中断请求信号引脚上.4.采用中断查询传送方式时,完成一次传送过程,首先必须通过执行一条_IN__指令,读取外设信息.5.8255A内部具有__3___个输入输出端口。

6.机器指令由操作码和__操作数____两部分组成 7.计算机时钟脉冲的频率称为____主频______.8.可编程接口电路中用来存放控制电路组态的控制字节寄存器称为__控制____寄存器。9.硬件中断可分为__可屏蔽中断,非屏蔽中断__两种。10.16K字节的RAM芯片应有__14____根地址输入端.11.逻辑地址由段基址和_偏移地址___组成。12.8086/8088CPU的数据线和地址线是以___分时_____方式轮流使用的。13.根据功能不同,8086的标志位可分为__状态_____和___控制____标志。

14.8086/8088的中断响应了两个总线周期,从____INTA______引脚输出两个负脉冲.15.在8086CPU系统中,设某中断源的中断类型码为08H,中断向量为0100:1000H,则相应的中断向量存储地址为___20____H.16.CPU通过一个外设接口同外设之间交换的信息包括数据信息,状态信息和__控制信息____.17.Intel 8251A工作在同步方式时,最大波特率为_64kbps____.18.8255A内部具有__3___个输入输出接口。

19.机器指令由 操作码 和操作数两部分组成。20.16K字节的RAM芯片应有__14____根地址输入端.21.用4KX4的RAM芯片组成32K的外扩存储器,共需芯片__16____片.22.8086/8088CPU的数据线和地址线是以___分时______方式轮流使用的。

23.数据总线是双向总线,8位微处理器有8条数据线,16位微处理器有__16___条数据总线.24.8086系统中的BHE信号通常作为__奇____地址存储体的体选信号。当BHE为___低___电平时有效。25.Intel 8251A工作在异步方式时,最大波特率为__19.2kbps_______.26.采用中断查询传送方式时,完成一次传送过程,首先必须通过执行一条____IN____指令,读取外设状态信息.27.8086CPU中断系统有__256____种中断类型码,中断类型码与对应的矢量地址换算公式为__中断类型码×4(n×4)____。

28.计算机时钟脉冲的频率称为__主频________.29.一般外设接口与外设间交换的信息有控制信息、数据信息 和 状态信息。30.压栈指令的源操作数只能是 16 位的操作数。31.主机与外设之间数据传送方式有无条件传送方式、查询传送方式、中断方式 和 DMA方式。32.地址总线通常是_单向___总线,由CPU输出,8位微处理器有16条地址总线,16位微处理器有20条或更多。

33.CPU从主存取出一条指令并执行该指令的时间称为___指令周期______.34.8255A控制字的最高位D7=_____1____时,表示该控制字为方式控制字。35.8255A的三个端口中只有端口__C___没有输入锁存功能。36.用Inter2114组成4K*8bit的RAM要用___8___片.37.输入/输出指令间接寻址必须通过_DX_____寄存器.38.8086/8088CPU内部共有____14______个16位寄存器。

39.8086/8088CPU的数据线和地址线是以__分时____方式轮流使用的。

40.串操作指令规定源串在__数据____段中,用_SI____来寻址源操作数,目的串在__附加数据____段中,用 ___DI___ 来寻址目的操作数。

41.存储器通常由存储矩阵,_地址译码器____,控制部件和三态缓冲器组成.42.CPU总线通常包括地址总线、数据总线和___控制______总线等三组总线。

三、简答题

1.外设向CPU申请中断,但CPU不给以响应,其原因有哪些?(1)CPU处于关中断状态,IF=0;(2)该中断请求已被屏蔽;(3)该中断请求的时间太短,未能保持到指令周期结束;(4)CPU已释放总线,而未收回总线控制权。

2.8255各口设置如下:A组与B组均工作于方式0,A口为数据输入,B口为输出,C口高位部分为输出,低位部分为输入,A口地址设为40H.(1)写出工作方式控制字(2)对8255A初始化

(3)从A口输入数据,将其取反后从B口送出

(1)10010001B 即91H(2)MOV AL,91H;OUT 43H,AL

(3)IN AL,40H;NOT AL;OUT 41H,AL

3.说明程序存储及程序控制的概念。

程序存储:程序是由一条条指令组合而成的,而指令是以二进制代码的形式出现的,把执行一项信息处理任务的程序代码,以字节为单位,按顺序存放在存储器的一段连续的存储区域内,这就是程序存储的概念。

程序控制:计算机工作时,CPU中的控制器部分,按照程序指定的顺序(由码段寄存器CS及指令指针寄存器IP指引),到存放程序代码的内存区域中去取指令代码,在CPU中完成对代码的分析,然后,由CPU的控制器部分依据对指令代码的分析结果,适时地向各个部件发出完成该指令功能的所有控制信号,这就是程序控制的概念

4.已知AH=77H,AL=33H能否说AX=7733H,为什么?SI寄存器可分不SH和SL吗? 能。因为AX是16位的数据寄存器,它可以以字(16位)或以字节(8位)形式访问。不能。因为SI是16位的源变址寄存器,只能以字(16位)为单位使用。

5.一台微型计算机有16根地址线,8根数据线,如果采用字节编址,它可访问的最大存储空间是多少字节?试用十六进制数表示其地址范围.64KB,0000H~FFFFH 6.半导体随机存储器RAM与只读存储器ROM有何区别?它们各有哪几种类型? 随机存储器RAM中的任何存储单元都能随时读写,即存取操作与时间,存储单元物理位置顺序无关,一旦掉电,所存信息丢失。常见类型有静态RAM和动态RAM等。

ROM是一种只读存储器,其内容一经写入,在工作过程中就能只能读出不能重写,即使掉电,信息也不会丢失。常见的类型有掩模ROM,PROM,EPROM,EEPROM等。

7.什麽是引脚的分时复用?请说明8086/8088有哪些分时复用引脚?其要解决的问题是什么?

8086的数据线和地址线是利用复用的,所以常把8086的总线称为多路总线,即某一时刻总线上出现的是地址,另一时刻,总线上出现的是数据。正是这种引脚的分时使用方法才能使8086用40条引脚实现20位地址、16位数据及众多的控制信号和状态信号的传输。8086CPU的分时复用的引脚有:地址/数据复用引脚.作用为一个脚多用,如:AD15~AD0,在总线周期的T1状态,传送地址信息,在其它状态则传送数据信息; 8.说明微机系统的工作实质。

计算机之所以能在没有人直接干预的情况下,自动地完成各种信息处理任务,是因为人们事先为它编制了各种工作程序,计算机的工作过程,就是执行程序的过程。9.常用的存储器片选控制方法有哪几种?它们各有什么优缺点? 常用存储器片选控制方法有3种,分别是线选法,全译码法,局部译码法。线选法的优点是连线简单,缺点是地址空间利用率低;全译码法不浪费地址空间,但需译码电路;局部译码介于前二者之间。当存储容量要求大于系统地址线所能寻址的最大范围,或者几个微处理器需要共享某一存储区域时,则采用扩充寻址法。

10.试说明异步串行通信和同步串行通信的特点.异步特点:在通信的数据流中,字符与字符间的传送是完全异步的,字符内部位与位之间还是基本同步传送。同步特点:数据流中的字符之间和字符内部各位间都同步,显然这种方式对同步要求很严格,收/发双方必须以同一时钟来控制发送与接收。

11.在8086CPU中,已知CS寄存器和IP寄存器的内容分别为如下所示,试确定其物理地址.(1)CS=1000H IP=2000H 12000H(2)CS=2000H IP=00A0H 200A0H(3)CS=1234H IP=0C00H 12F40H

12.8259A可编程中断控制器的主要功能有哪些? 1 单片8259A可管理8级优先权中断源,通过级联可管理64级优先权中断源; 2 对任何一级中断源都可单独进行屏蔽,使该中断请求暂时被挂起,直到取消屏蔽时; 能向CPU提供中断类型码; 具有多种中断优先级管理方式,这些管理方式可能过程序动态的进行变化。13.如果利用中断方式传送数据,则数据是如何传输的?中断机构起什么作用? 利用中断方式传送数据,一般是首先向CPU发出中断请求,CPU响应中断后在中断处理程序中进行数据传输,传输完毕返回。中断机构起控制作用,实时性较强。

14.8086/8088系统中为什麽一定要有地址锁存器,需要锁存哪些信息?

8088/8086系统中,一般数据位是8位,而地址位是16位的话,那么可以这么理解:程序要输出一个地址,就必须先输出高8位,用锁存器锁定后,再输出低8位(或反之),这时才完成一个16位地址的输出。

锁存的信息:逻辑电路:通过控制信号完成对当前输出信号的固定,主要是逻辑状态(0,1)集成功能:是一个可以完成当前总线状态的保存

计算机组原:完成数据的保存,是存储器等功能器件的辅助器件 16.8086中有哪些寄存器可用来指示存储器偏移地址? 可用来指示段内偏移地址的寄存器共有6个:IP、SP、BP、BX、SI、DI.17.8255的功能作用是什么?它有哪些工作方式? 8255是可编程的并行接口芯片,设有三个8位的数据输入/输出端口,拱有三种工作方式:方式0为基本的输入/输出方式;方式1为应答式输入/输出方式;方式2为应答式双向数据传送方式。18.写出中断响应的处理过程.(1)中断请求(2)中断允许(3)保护断电,保护现场(4)中断服务(5)恢复现场,中断返回。19.总线周期的含义是什么?8088/8086基本总线周期由几个时钟周期组成?

总线周期是指CPU从存储器I/O端口存取一个字节所需要的时间。8088/8086基本总线周期由4个时钟周期组成。

23.某程序数据段中存有数据字:1234H和5A6BH,若已知DS=5AA0H,她们的偏移地址分别为245AH和3245H,试画出它们在存储器中的存放情况。24.什麽是I/O接口,什麽是I/O端口?

I/O接口:I/O接口是INPUT/OUTPUT指输入/输出设备接口

I/O端口:CPU和外设进行数据传输时,各类信息在接口中进入不同的寄存器,这些寄存器为I/O端口。

25.虚拟存储器有那些特点?

第一,允许用户用彼内存空间大的多的空间来访问主存。第二,每次访存都要进行虚实地址的转换。

四、1.以下是完成20个字节字符串的传送,并检测是否正确的程序,若正确标志位放00,否则放11。给指定语句加标注。DATSEG SEGMENT DATAX DB ‘ABCD„„RST’ DATAY DB 20 DUP(?)FLAGS DB ? DATSEG ENDS MOV AX, DATSEG;MOV DS, AX MOV ES, AX CLD;MOV SI, OFFSET DATAX;MOV DI, OFFSET DATAY MOV CX, 20;REP MOVSB „„

REPE CMPSB JZ HHH;MOV AL, 11 JMP III HHH: MOV AL, 00 III: MOV FLAGS, AL 2.程序改错(10分)(1)保持STATE单元内容的D4、D3两位为“0”,其余六位不变。

AAA: MOV SI,OFFSET STATE MOV AL,[SI] AND AL,0C0H MOV [SI],AL RET 改正:()

(2)从4000H开始有20H个带符号数,要求统计出负数的个数送MIN单元。

XOR DI,DI

MOV BX,4000H

MOV CX,20H AGAIN:MOV AL,[BX] INC BX

TEST AL,01H

JNZ GOON INC DI GOON: DEC CX JNZ AGAIN MOV MIN,DI

RET 改正:(),()

3.对40个有符号数进行测试,分别把正、负字存放进两段不同单元。完成此程序。

DATA SEGMENT BLOCK DB 43H,56H,0ABH„„ ;共40个字节 PDATA DB 40 DUP(?)NDATA DB 40 DUP(?)DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA, ES:DATA EXP1 PROC FAR START: PUSH DS

MOV AX, 0 PUSH AX

MOV AX , DATA MOV DS, AX MOV ES, AX

LEA SI , BLOCK LEA DI, PDATA LEA BX, NDATA CLD

MOV CX, PDATA-BLOCK GOON: LODSB

TEST AL, 80H JNZ MINUS STOSB

JMP AGAIN MINUS: XCHG BX, DI

STOSB

XCHG BX, DI AGAIN: LOOP GOON RET EXP1 ENDP CODE ENDS END START 4.程序改错

(1)保持STATE单元内容的D4、D3两位为“0”,其余六位不变。AAA: MOV SI,OFFSET STATE

MOV AL,[SI] AND AL,0C0H MOV [SI],AL RET 改正:()

(2)ST1是DS段中的一个4字节字符串,ST2是ES段中的一个4字节字符串,比较其是否相等;相等置FLAG单元为00H,不等置FLAG单元为11H。MOV SI,OFFSET ST1 MOV DI,OFFSET ST2 MOV CX,0004 STD REPNZ CMPSB JZ HHH MOV AL,11 JMP III HHH: MOV AL,00 III: MOV FLAG,AL RET 改正:()()

5.以下是完成20个字节字符串的传送,并检测是否正确的程序,若正确标志位放00,否则放11。完成此程序。DATSEG SEGMENT DATAX DB ‘ABCD„„RST’ DATAY DB 20 DUP(?)FLAGS DB ? DATSEG ENDS MOV AX, DATSEG MOV DS, AX MOV ES , AX CLD MOV SI , OFFSET DATAX MOV DI, OFFSET DATAY MOV CX , 20 REP MOVSB „„

REPE CMPSB JZ HHH MOV AL, 11 JMP III HHH: MOV AL, 00 III: MOV FLAGS , AL 6.程序改错

(1)保持STATE单元内容的D4、D3两位为“0”,其余六位不变。

AAA: MOV SI,OFFSET STATE

MOV AL,[SI] AND AL,0C0H

MOV [SI],AL RET 改正:()

(2)在BUF开始的50个有符号数中(16位),找出最小值存放在MIN单元中。

MOV BX,OFFSET BUF MOV CL,31H

MOV AX,[BX] BBB: INC BX INC BX

CMP AX,[BX]

JNC CCC

MOV AX,[BX] CCC: DEC CX

MOV SI,OFFSET BUF JNZ BBB MOV MIN,AX

RET 改正:(),()

7.用1K×4的2114芯片组成2K×8的存储器系统。

8.用2K×8的2716A存储器芯片组成8K×8的存储器系统。

9.用1K×4的2114芯片构成lK×8的存储器系统。

12.现有8个字节的数据为34H,45H,56H,67H,78H,89H,9AH,ABH,假定它们在存储器中的物理地址为400A5H-400ACH,试求各存储单元的有效地址;若从存储器中读出这些数据,试问要访问几次存储器?

各字节的有效地址分别为0085H,0086H,0087H,0088H,008AH,008BH,008CH 8个总线周期

13.对40个有符号数进行测试,分别把正、负字存放进两段不同单元。给指定语句加标注。

DATA SEGMENT BLOCK DB 43H,56H,0ABH„„ ;共40个字节 PDATA DB 40 DUP(?)NDATA DB 40 DUP(?); DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA, ES:DATA EXP1 PROC FAR START: PUSH DS

MOV AX, 0 PUSH AX

MOV AX, DATA MOV DS, AX MOV ES, AX LEA SI, BLOCK

LEA DI, PDATA ; LEA BX, NDATA CLD

MOV CX, PDATA-BLOCK;

GOON: LODSB

TEST AL, 80H

JNZ MINUS ; STOSB

JMP AGAIN MINUS: XCHG BX, DI ;

STOSB

XCHG BX, DI AGAIN: LOOP GOON

RET EXP1 ENDP CODE ENDS END START 14.程序改错

(1)从4000H开始有20H个带符号数,要求统计出负数的个数送MIN单元。XOR DI,DI

MOV BX,4000H

MOV CX,20H AGAIN:MOV AL,[BX]

INC BX

TEST AL,01H

JNZ GOON INC DI GOON: DEC CX JNZ AGAIN MOV MIN,DI

RET 改正:(),()

(2)ST1是DS段中的一个4字节字符串,ST2是ES段中的一个4字节字符串,比较其是否相等;相等置FLAG单元为00H,不等置FLAG单元为11H。

MOV SI,OFFSET ST1 MOV DI,OFFSET ST2 MOV CX,0004 STD REPNZ CMPSB JZ HHH MOV AL,11 JMP III HHH: MOV AL,00 III: MOV FLAG,AL RET 改正:()()15.画出容量为8K*8的ROM连接图(CPU用8088,EPROM用2716,R0M地址区从4000H开始)

第三篇:微机原理复习题及答案

一、填空题

1.Rfb是运放 电阻,被放在。2.DAC0832内部有 地和 地。3.LE是DAC0832内部寄存器的锁存命令。当其为 时,寄存器输出随 变化。

4.当LE为0时,数据 在寄存器,不再随 上的数据变化而变化。5.在过程控制应用中,有时对控制量的输出要求是 的,在给定值时产生的偏差不改变控制量的,这时可采用单极性输出电路。6.在随动系统中,由偏差所产生的控制量仅 不同,而且控制量 不同,这时要求D/A转换器有双极性输出;7.D/A转换器实现双极性输出,在输出除需要有运算放大器外还应增加

和。

8.若D/A转换器芯片内部有锁存寄存器,微处理器就把D/A芯片当作一个并行;若D/A转换器芯片内部无锁存寄存器,微处理器就把D/A芯片当作一个并行。

9.ADCO809是CMOS的 位 转换器。

10.ADCO809的引脚EOC是 信号,可作为。

二、单项选择题

1.ADC0809启动A/D转换的方式是。

A)高电平B)负电平C)负脉冲 D)正脉冲 2.ADC0809的输出。

A)具有三态缓冲器,但不可控 B)具有可控的三态缓冲器 C)没有三态 缓冲器 D)没有缓冲锁存

3.ADC0809可以用()引线经中断逻辑向CPU申请中断。A)OE B)START C)EOC D)ALE

三、多项选择题

1.DAC0832有()工作方式。

A)单缓冲 B)双缓冲 C)多级缓冲 D)直通

2.ADC0809与微机系统相连接,可采用的数据传输方式有。A)无条件传输 B)查询传输 C)中断传输 D)DMA传输

四、简答题

1、已知某DAC的最小分辨电压VLSB=5mV,满刻度输出电压Vom=10V,试求该电路输入二进制数字量的位数n应是多少?

2、A/D转换器和微机接口中的关键问题有哪些?

3、A/D转换器为什么要进行采样?采样频率应根据什么选定?

4、若ADC输入模拟电压信号的最高频率位20KHz,取样频率的下限是多少?

5、双积分式ADC电路中的计数器是十进制的,最大计数容量N=(1000)10,时钟脉冲频率为5KHz,完成一次转换最长需要多少时间?

6、设被测温度的变化范围为300℃~1000℃,如要求测量误差不超过±1℃,应选用分辨率为多少位的A/D转换器?

7、模-数转换器ADC常用的有双积分式和逐次逼近式,请扼要比较它们的优缺点。在微机控制系统的模拟输入通道中常常应用采样-保持电路,其主要原因是什么?

五、编程应用题

1.设状态端口地址为86H,数据端口的地址为87H,外部输入信息准备好状态标志为D7=1,请用查询方式写出读入外部信息的程序段。2.设状态端口地址为76H,数据端口地址为75H,外部设备是否准备好信息 由D7位传送,D7=0为未准备好(忙),请用查询方式写出CPU向外部传送数据的程序段。3.数据采集系统电路如下图所示。图中A/D转换器为ADCO809,定时器/计数器8233-5的计数器1将5MHz时钟转换成500KHz提供给ADC0809。根据上述电路和说明,以及下面程序的功能要求,在空格中填入相应的指令(必要时可增减空格数)。

MOV DX,3DBH;设置8253一控制字 MOV AL,57H OUT DX,AL(1);设且计数器1计数初值(2)(3);ADCO809模拟通道IN5采样12次,数据存人BUF MOV BX,OFFSETBUF MOV CX,l2(4)LOP:(5)CALL DELAY lS;软件延时一秒(6);数据读入BUF MOV [BX],AL INC BX LOOP LOP

4、已知A/D变换器的引线及其工作时序如下图所示。利用START负脉冲可启动A/D变换器开始变换,启动脉冲后A/D变换器进入忙(BUSY)状态,待变换结束。BUSY变高电平,可从D0~D10取得变换好的数据。试通过8255将此A/D变换器接到8088系统总线上,接口地址8000H-800F可任选,试画出连接线。

答案

一、填空题

1、反馈电阻;芯片内部

2、模拟;数字3、1;输入

4、锁存;数据总线

5、单向;极性

6、大小;异性

7、运放;VREF

8、输出接口;输出外部设备 9、8位;A/D

10、转换结束;中断请求信号

二、单项选择题

1、C

2、B

3、A

三、多项选择题

1、ABD

2、BCD

四、简答题

1、答: 2

2、答: A/D转换器和微机接口时的关键问题主要有6个。① A/D转换器输出和CPU的接口方式,主要有2种连接方式:

一种是A/D芯片输出端直接和系统总线相连;另一种是A/D芯片输出端通过接口电路和总线相连。② A/D转换器的分辨率和微机数据总线的位数匹配:当10位以上的A/D转换器和8位数据总线连接时,由于数据要按字节分时读出,因此从8位数据线上需分2次来读取转换的数据。设计接口时,数据寄存器要增加读写控制逻辑。③ A/D转换的时间和CPU的时间配合问题:要注意A/D转换的启动方式,通常启动信号分为电平控制启动和脉冲启动两种。其中又有不同的极性要求。还要注意转换后信号的处理。④A/D的控制和状态信号。因为A/D转换器的控制和状态信号的类型与特征对接口有很大影响,在设计时必须要注意分析控制和状态信号的使用条件。⑤ 输入模拟电压的连接,特别是多路模拟电压的切换控制。⑥ 接地问题,为了减轻数字信号脉冲对模拟信号的干扰,数字地和模拟地要正确连接。

3、答: 因为被转换的模拟信号在时间上是连续的,瞬时值有无限多个,转换过程需要一定的时间,不可能把每一个瞬时值都一一转换成模拟量。因此对连续变化的模拟量要按一定的规律和周期取出其中的某一瞬时值,这个过程就是将模拟量离散化,称之为采样,采样以后用若干个离散的瞬时值来表示原来的模拟量。

通常为了使A/D输出信号经过D/A还原后能更好地反映输入模拟信号的变化,根据采样定理,采样频率一般要高于或至少等于输入信号中最高频率分量的2倍,就可以使被采样的信号能够代表原始的输入信号。在输入信号频率不是太高的实际应用中,一般取采样频率为最高频率的4~8倍。

4、答:取样频率的下限为20kHZ×2=40 kHZ

5、答:由于双积分式A/D的工作模式是固定时间正向积分、固定斜率反向积分。正向积分与反向积分的切换是由正向积分开始时计数器从0计数到计满后产生的溢出信号控制,较高的反极性的基准电压进入积分器反向积分(因为反向斜率值大于正向斜率值,一般反向积分时间要小于正向积分时间),计数器再次从0开始计数,直至反向积分至0时停止计数,此时的计数值就是对应的输入量的变换数字量。因此完成一次转换的最长时间不大于2倍正向积分时间(即计数器从0到计满时间的2倍)。

6、答:取最大的温度变化范围1000O,最小的温度分辨为1O,这样只要不少于1000等份就可以。因此可选10位A/D转换器,若它的满量程是1000O,最小的温度分辨为

7、答:逐次逼近ADC采用的是二分搜索、反馈比较、逐次逼近的转换原理。其优点是转换速度快,转换精度高;缺点是输入模拟信号变化速度较快时,伟产生较大的非线型误差。

双积分ADC的优点是不需要ADC,能以低成本实现高分文辨率,转换精度高,抗干扰 能力强。缺点是需要二次积,转换速度慢。

当输入模拟信号变化率较大时,逐次逼近式ADC会产生相当大的非线性误差,为改善这种情况,可在ADC前面增加一级采样保持电路。

五、编程应用题

1、答案:START:IN AL,86H

TEST AL,80H

JZ START

IN AL,87H

2、答案:START:IN AL,76H

TEST AL,80H

JZ START

MOV AL,输出的字节

OUT 75H,AL

3、答案:(1)MOV DX,3D9H

(2)MOV AL,10H

(3)OUT DX,AL

(4)MOV DX,3D5H

(5)OUT DX,AL

(6)MOV DX,3D0H

IN AL,DX

第四篇:微机原理与语言复习题及参考答案

微机原理与汇编语言复习题及参考答案

——CSDN下载频道提供,请尊重原创

一、选择题:

1.设AL=0A8H,CX=2,CF=1,执行RCL AL,CL指令后,AL中的值为()A.51H B.A3H C.47H D.0C5H 2.下述指令的执行结果是()MOV AL,0C2H AND AL,0F0H A.AL=40H B.AL=20H C.AL=0C0H D.AL=0E0H 3.完成对CL寄存器的内容乘以4的正确操作是()A.ROL CL,1 B.MUL 4 C.SHL CL,1 D.MOV CL,2 ROL CL,1 SHL CL,1 SHL CL,CL 4.无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,应执行的指(A.ADD BH,01H B.OR BH,01H C.XOR BH,01H

D.TEST BH,01H 5.假设(AL)= 37H,(BL)= 95H,执行指令IMUL BL后(AX)=()A.0E903H

B.2003H C.0DBBH

D.2008H 6.下面的数据传送指令中,错误的操作是()A.MOV SS:[BX+DI],1000H

B.MOV DX,1000H C.MOV WORD PTR[BX],1000H

D.MOV DS,2000H 7.CPU要访问的某一存储单元的实际地址称()

A.段地址

B.偏移地址

C.物理地址

D.逻辑地址

8.某存储单元的物理地址是12345H,可以作为它的段地址有()A.2345H

B.12345H C.12340H

D.1234H 9.计算机能直接识别的的语言()A.汇编语言

B.机器语言

C.高级语言

D.低级语言 10.下列指令中操作数在代码段中的是

()A.MOV AL,25H B.ADD AH,BL C.INC DS:[25] D.CMP AL,BL 11.直接、间接、立即三种寻址方式指令的执行速度,由决至慢的排序为()A.直接、立即、间接 B.直接、间接、立即 C.立即、直接、间接 D.不一定

12.若栈顶的物理地址是2010011,当执行完指令CALL AX后,栈顶的物理地址是()A.2010211 B.2010111 C.200FFH D.200FEH 13.当执行完下列指令序列后,标志位CF和OF的值是()MOV AX,OC126H MOV BX,5AB7H SUB AX,BX A.0,0 B.0,1 C.1,0 D.1,1 14.JMP BX的目标地址偏移量是(D)。

A.SI的内容 B.SI所指向的内存字单元之内容 C.IP+SI的内容 D.IP+[SI] 15.指令MOV AX,10[BX]的源操作数的寻址方式是()A.基址寻址 B.寄存器寻址 MOV AX,BX C.变址寻址 AX【BX+DI】(只能用BX,BP;SI和DI)D.寄存器相对寻址 16.指出下列哪个数据在汇编语言中是非法的。())

A.19BH+25D B.25+AL C.108-102Q D.101B*OABH 17.用来存放即将执行的指令的偏移地址的寄存器是()A.SP B.IP C.BP D.CS 18.源变址寄存器是()

A.SI B.DI C.SP D.BX 19.设SP=1200H,执行POP AX后,SP中的内容为()A.SP=1112H B.SP=11OEH C.SP=1111H D.SP=11OFH 20.数字6704不可能是()A.六进制数 B.十进制数 C.十二进制数 D.十六进制数

21.下面四个寄存器中,不能用于间接寻址的寄存器是()A.BX B.AX C.BP D.DI 22.若(BX)=OCA8H,则执行指令 MOV CL,8 ROR BX,CL后,(BX)=()

A.OCA8H B.8ACOH C.OA80CH D.OA8COH 23.下面数据传送指令中,正确的是()A.MOV DS,ES B.MOV AL,WORD PTR [BX+DI] C.MOV AL,BYTE PTR [SI+DI] D.MOV CX,[SI] 24.下列哪一种寻址方式最快?()A.立即寻址 B.直接寻址

C.寄存器寻址 D.寄存器间接寻址

25.寄存器间接寻址中,操作数在()A.通用寄存器 B.堆栈 C.主存单元 D.段寄存器

26.在顺序结构的流程图中,不包含有()A.起始框 B.终止框 C.判断框 D.处理框

27.以8086/8088为CPU的微机内存最大容量为()A.4MB B.1MB C.640KB D.64KB 28.与lA.5H不等的数据是()A.26.3125D B.11010.0101B C.32.5Q D.10110.0100B 29.8位二进制补码表示的整数数据范围是()A.-128~127 B.-127~127 C.-128~128 D.-127~128 30.下列四个寄存器中,不允许用传送指令赋值的寄存器是()A.CS B.DS C.ES D.SS 31.指令MOV 100[SI][BP],AX的目的操作数的隐含段为()A.数据段 B.堆栈段 C.代码段 D.附加段 32.运算型指令的寻址和转移型指令的寻址,其不同点在于()A.前者取操作数,后者决定程序的转移地址 B.后者取操作数,前者决定程序的转移地址 C.两者都是取操作数

D.两者都是决定程序的转移地址

33.设AL=0A8H,CX=2,CF=1,执行RCL AL,CL指令后,AL=()A.51H B.A3H C.47H D.0C5H 34.目的变址寄存器是()A.SI B.DI C.SP D.BX 35.下列常用寻址方式中,哪种属于立即寻址()A.MOV AX,ES:[2000H] B.MOV [BX],AX C.MOV AX,2000H D.MOV AX,[BX+3AH] 36.设SP=1110H,执行PUSH AX后,SP中的内容为()A.SP=1112H B.SP=110EH C.SP=I111H D.SP=110FH 37.下列指令中错误的指令为()A.MOV AX,CS B.MOV DS,1500H C.MOV SI,BX D.MOV [2000H],BL 38.语句DA1 DB 2 DUP(3,5),7 汇编后,与该语句功能等同的语句是()A.DA1 DB 3,5,7 B.DA1 DB 2,3,5,7 C.DA1 DB 3,5,3,5,7 D.DA1 DB 3,5,7,3,5,7 39.下面四个寄存器中,用来作为I/O端口间接寻址的寄存器是()A.BX B.DX C.BP D.DI 40.下列哪一种寻址方式最快?()A.立即寻址

B.直接寻址

C.寄存器寻址

D.寄存器间接寻址

41.在串处理指令REPNZ CMPSB表示在()A.当(CX)不等于0且ZF等于1的情况下,重复执行串搜索 B.当(CX)不等于0且ZF等于0的情况下,重复执行串搜索 C.当(CX)不等于0且ZF等于1的情况下,重复执行串比较 D.当(CX)不等于0且ZF等于0的情况下,重复执行串比较 42.若(DX)=0A74CH,(CL)=5,则指令SAR DX,CL执行后,(DX)=()A.053AH B.653AH C.0FD3AH D.740AH 43.完成将有符号数BX的内容乘以2的正确指令是()A.SHR BX,1 B.SAR BX,1 C.SAL BX,1 D.RCR BX,1 44.指令LOOPNZ的循环执行条件是()A.CX ≠0且ZF=0 B.CX ≠0或ZF=0 C.CX ≠0且ZF=1 D.CX ≠0或ZF=1 45.下列寄存器中不能作为间址寄存器的是

()A.SI B.DI C.CX D.BX 46.JMP WORD PTR[BX]转移的目标地址是()A.BX中的内容

B.SP+BX之和 C.IP+[BX]之和 D.BX指示的内存单元之内容

二、填空题:

1.计算机中的CPU由___ ____和___ ___组成。2.(513.85)10 =(__ _)16 ;(105.3)8 =(____)10。

3.假定机器的字长为8位,且最高位为符号位,则(-127)10的原码用8位二进数表示为__,其补码用8位二进数可表示为__。

4.I/O端口有两种编址方式,分别是 ___ _______ 和 ____ ______。

5.8086/8088的中断系统能够处理 _256_ 个不同的中断源,并为每一个中断安排一个编号,称为中断类型。每种中断类型对应的中断服务程序的入口地址称为 _____。6.循环结构的程序主要由 ____、循环体、_____ 和循环控制部分组成。7.若DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOV AX,(SI+COUNT)中,源操作数的有效地址EA为__________,其物理地址为__________。

8.当标志位__________=1时表示无符号数运算产生溢出,而当标志位__________=1是表示带符号数运算产生溢出。

9.将十进制数513.85转换成二进制数、八进制数、十六进制数和BCD码分别可表示为__________、__________、__________、__________。

10.十进制数52的原码、反码、补码(采用8位二进制,最高位为符号位)分别可表示为_________、__________、__________。

11.已知某个数的补码为9DH,则其真值为__________。

12.以下宏定义的功能是将一位十六进制数转换为ASCII码,请在空白处填入恰当内容,使程序完整。

HEXTOA __________ AND AL,0FH CMP AL, __________ JNA HEXTOA1 ADD AL,7H HEXTOA1: ADD AL, __________ ENDM 13.地址2000H: 0480H,其物理地址是__________,段地址是__________,偏移量是__________。

14.225D= __________B= __________H。

15.已知[X]补=11010101,则X= __________D。

16.执行部件EU的主要功能是:____________________和____________________。17.8086 CPU在取指令时,会选取段寄存器__________的值作为段基值,再加上由__________提供的偏移地址形成20位的物理地址。

18.8086最多可处理__________种中断,对每一个中断都设置一个__________。19.8086 CPU有两种外部中断请求线,它们分别是__________和__________。

20.CPU与外设之间的数据传送方式有__________、__________、__________和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.十进制数-26的原码、反码、补码(采用8位二进制,最高位为符号位)分别为__________、__________、__________;已知一个数的补码为B2H,其真值为__________。

29.汇编语句中,语句标号具备的三种属性分别是__________、__________、__________;变量具备的三种属性分别是__________、__________、__________。

30.8086CPU的数据总线为_________位,地址总线为_________位,最大的存储空间是_________。

31.8086CPU的标志寄存器共有9个有效标志位,其中有6个状态标志位,分别是_________、__________、_________、__________、_________、__________。

32.已知X=-1011011B,则X的反码为_________,X的补码为_________。

33. 8086CPU在取指令时,会选取段寄存器__________的值作为段基值,再加上由__________提供的偏移地址形成20位的物理地址。

三、判断题:

1.奇偶标志位PF,当运算结果的低8位中有偶数个1时,被置为0。()2.CS, DS, ES和SS段都可以存放指令代码。()3.MOV SI,[SI]()4.MOV [DI],[SI]()

5.两数相等时转移可用JZ指令。()6.OUT [BX],AL()

7.当IF=0时,CPU不能响应NMI中断。()

8.把若干个模块连接起来成为可执行文件的系统程序是汇编程序。()9.使汇编程序执行某种操作的命令是宏指令。()10.串操作指令中,目的操作数的段地址一定在DS寄存器中。

()11.在汇编语句AGAIN: INC SI中的AGAIN 称为标号。()12.MOV BH,1000[SI],该指令中源操作数采用的寻址方式是寄存器间接寻址。()13.OR AL,AL 是逻辑或操作指令。()14.DOS 系统功能调用中,显示单个字符的系统调用号是01H。()15.使计算机执行某种操作的命令是伪指令。()

四、改错题:

1.下述程序执行后,应将LIST数组中的最大值存入MAX单元,数组元素为无符号字数据,数据个数在CNT单元中。现已知程序有错,请改正,使之完成预定功能。1)DSEG SEGMENT 2)LIST DW 1,200,30,400,0,7,4000 3)CNT DB 7 4)

MAX DW? 5)DSEG ENDS 6)CSEG SEGMENT 7)

ASSUME DS:DSEGDS:CODE 8)FMAX: MOV DX,DSEG 9)

MOV DS,AX 10)

LEA SI,LIST 11)MOV CX,CNT 12)

CLD 13)LODSW 14)

DEC CX 15)CMP AL,[SI] 16)

JLE SMALL 17)

LODS W 18)SMALL: INC SI 19)

INC SI 20)

DEC CX 21)LOOP AGAIN 22)

MOV MAX,SI 23)MOV AL,4CH 24)

INT 21H 25)CSEG END 26)

END START 2.下面的程序是将内存单元一字节数据乘以10放回单元的程序,找出错误并改正。DATA SEGMENT DA DW 34 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV SI,OFFSET DA MOV AL,[SI] MUL 10 MOV [SI],AX MOV AH,4CH INT 21H CODE ENDS END START

五、简答题:

1.80386/80486有几种工作模式?各有什么特点?

2.假定一个名为MAINPRO的程序要调用子程序SUBPRO,试问:

(1)MAINPRO中的什么指令申明汇编程序SUBPRO是在外部定义的?

(2)SUBPRO怎么知道MAINPRO要调用它?

3.现有(DS)=2000H,(BX)=O100H,(SI)=0002H,(20100H)=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,1100H[BX](4)MOV AX,[BX+SI](5)MOV AX,[1100H+BX+SI] 4.汇编语言源程序的语句类型有哪几种?各自的作用和使用规则是什么? 5.一个汇编源程序应该由哪些逻辑段组成?各段如何定义?各段的作用和使用注意事项是什么?

6.什么是微型计算机的系统总线?定性说明微处理器三大总线的作用。

六、程序分析题:

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 L5 2.已知数据段中定义

DAT1DB 12H,34H,56H,78H MOVCX,0 MOVAX,WORDPTRDAT1 MOVCL,DAT1+3 当程序段执行完后AX=________,CX=________。3.执行完程序后,回答指定的问题。BLOCK DB 20H,1FH,08H,81H,OFFH… RESULT DB?

START: LEA SI,BLOCK MOV CH,O MOV CL,[SI] DEC CX INC SI MOV AL,[SI] LOP1: CMP AL,[SI+1] JLE NEXT MOV AL,[SI+1] NEXT: INC SI LOOP LOP1 MOV RESULT,AL HLT 问:(1)该程序的功能是();(2)该程序的循环次数是()。4.分析下列程序,回答问题:(1)该程序完成什么功能?

(2)程序中的INC SI可否用指令ADD SI,1代替,为什么?(3)程序中的指令LEA SI,DATAI可用指令()代替。(4)CLC指令的目的是()。DATA SEGMENT DATAI DB 85H,27H,4AH DATA2 DB 93H,87H,65H LEGH DW 3 SUM DB 0,0,0 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX LEA SI,DATA1 LEA BX,DATA2 LEA DI,SUM MOV CX,LEGH CLC AGAIN: MOV AL,[SI] ADC AL,[BX] MOV [DI],AL INC SI INC BX INC DI LOOP AGAIN MOV AH,4CH 1NT 21H CODE ENDS END START 5.执行完程序后,回答指定的问题。MOV AX,200H MOV BX,500H MOV [BX+1OH],30H ADD AX,[BX+1OH] LEA SI,[BX+lOH] MOV 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-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。

参考答案

一、选择题:

1.B 2.C 3.C 4.B 5.A 6.D 7.C 8.D 9.B 10.A 11.C 12.D 13.C 14.A 15.D 16.B 17.B 18.A 19.B 20.A 21.B 22.C 23.D 24.A 25.C 26.C 27.B 28.C 29.A 30.A 31.B 32.A 33.B 34.B 35.C 36.B 37.B 38.C 39.B 40.A 41.B 42.C 43.C 44.C 45.C 46.D

二、填空题:

1.运算器 控制器 2.201.D999 69.375 3.11111111 10000001 4.统一编址 独立编址

5.256 中断向量 6.循环初始化部分 循环参数修改部分 7.20A8H 11488H 8.CF OF 9.1000000001.1011B 1001.6631O 201.D999H 10100010011.10000101B 10.00110100B 00110100B 00110100B 11.-63H 12.MACRO 9 30H 13.20480H 2000H 0480H 14.11100001 E1 15.-43H 16.执行指令 产生访问存储器时所需的16位偏移地址 17.CS IP 18.256 中断码类型

19.NMI INTR(可屏蔽中断请求信号)20.无条件传送 查询方式传送 中断方式传送 21.运算器 控制器 存储器 输入设备 输出设备 22.43.625 53.5 2B.A

23.39H 24.统一编址 独立编址 64KB 25.99A40H 26.3253.11 1707.141 27.30H 4BH

28.10011010B 11100101B 11100110B-4EH 29.段属性 偏移量属性 距离属性; 段属性 偏移量属性 类型属性 30.16 20 1MB 31.进位标志位(CF)辅助进位标志位(AF)符号标志位(SF)零标志位(ZF)溢出标志位(OF)奇偶标志位(PF)32.10100100B 10100101B 33.CS IP

三、判断题:

1.× 2.× 3.× 4.× 5.√ 6.× 7.× 8.× 9.× 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行,去掉该行语句(7)22行,SI改为AX(8)23行,AL改为AH(9)25行,END改为ENDS(10)26行,START改为程序入口标号FMAX 2.解答:

MOV AL,[SI] 改为MOV AL,BYTE PTR [SI] MUL 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(2)AX=3412H(3)AX=4C2AH(4)AX=7856H(5)AX=65B7H 4.答:汇编语言源程序的语句类型通常有3种类型,分别是:指令语句、伪指令语句和宏指令语句。

(1)指令语句是能产生目标代码、CPU可以执行的能完成特定功能的语句,主要由CPU指令组成。

(2)伪指令语句是种不产生目标代码的语句,在汇编过程中告诉汇编程序应如何汇编。(3)宏指令语句是一个指令序列,汇编时凡有宏指令语句的地方都将用相应的指令序列的目标代码插入。

5.答:汇编程序是将汇编源程序自动翻译成目的程序的软件,而汇编源程序是用汇编语言编写的程序。

汇编程序的主要功能是将由汇编语言(助记符)编写的源程序翻译成用机器语言(二 进制代码)编写的目标程序;汇编源程序的作用是进行程序设计。

6.答:微型计算机的系统总线是CPU与其他部件之间传送数据、地址和控制信息的公共 通道。

根据传送内容的不同,系统总线可分成以下3种:

(1)数据总线DB(Data Bus):用于CPU与主存储器、CPU与I/O接口之间传送数据。数据总线的宽度等于计算机的字长。数据总线一般为双向总线,可以向两个方向传输数据。(2)地址总线AB(Address Bus):用于CPU访问主存储器和外部设备时传送相关的地址。地址总线的宽度决定CPU的寻址能力。

(3)控制总线CB(Control Bus)用于传送CPU对主存储器和外部设备的控制信号。

7.答:宏与子程序两者的相同之处在于:都是用来处理在编程过程中多次使用的功能程序的方法,两者均能简化源程序。两者的区别在于:

(1)宏调用通过宏指令名进行,汇编时,随时调用随时展开,并不简化目标程序:子程序调用是在程序执行期间执行CALL指令,代码只在目标程序中出现一次,所以也简化了目标程序。

(2)宏调用时的参数由汇编程序通过实参转换成形参的方式传递,具有很大的灵活性。宏定义中允许设置若干形式参数代替数值、指令、寄存器、各种字符串等。宏调用时可用程序所需要的实际参数来替换,使编程人员感觉非常灵活;而子程序的参数传递要麻烦得多。(3)宏调用在汇编时完成,不需要额外的时间开销;子程序调用和子程序返回都需要时间,还涉及堆栈操作。

故若优先考虑速度,用宏指令;若优先考虑存储空间,用子程序。

六、程序分析题: 1.答:(1)L1(2)L1(3)L2(4)L3(5)L3 2.答:AX=3412H,CX=0078H 3.(1)从一组数中寻找最小数送RESULT单元。(2)31次。4.解答:

(1)该程序用来将存放在DATA I和DATA2开始的单元中的两个多字节数据相加,并将结果放在SUM开始的连续单元中。

(2)不可以。因为ADD指令影响进位标志位CF状态。(3)MOV SI,OFFSET DATA1(4)清进位,以使在数据最低字节相加时,可以用ADC指令。5.解答:

SI=510H BX=230H

七、程序设计: 1.参考答案如下: DATA SEGMENT DAT DW 0A5D2H DAT1 DB ? DAT2 DB ? DAT3 DB ? DAT4 DB ? DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS: DATA START: MOV AX, DATA MOV DS, AX MOV AX, DAT MOV BX, 0F0FH AND BX, AX MOV DAT1, BL MOV DAT3, BH

MOV BX, 0F0F0H AND BX, AX MOV DAT2, BL MOV DAT4, BH MOV AH, 4CH INT 21H CODE ENDS END START 2.参考答案如下:

分析:假设子程序的入口参数成绩表长度放在CX中,SI指向成绩表首单元;出口参数放在S6, S7,S8,S9和S10单元中,并且各单元初值均为0。参考子程序如下: ;子程序名:GRADES ;功能:统计成绩表GRADES中各个分数段的人数

;入口参数:CX中为成绩表长度,SI指向成绩表首单元

;出口参数:各个分数段人数分别放在存储单元S6, S7,S8,S9和S10中 ;所用寄存器:AL, CX,SI

GRADES PROC PUSH CX ;保护用到的寄存器 PUSH SI PUSH AX NEXT: CMP CX,O ;判断成绩表是否结束 JZ EXIT DEC CX MOV AL,[SI] ;将要比较的成绩放在AL中 INC SI CMP AL,100 JB GRADE9 ;小于100,转向GRADE9 INC[S10] ;S10单元内容增1 JMP NEXT GRADE9:CMP AL,90 JB GRADE8 ;小于90,转向GRADE8 INC [S9] ;S9单元内容增1 JMP NEXT GRADE8:CMP AL,80 JB GRADE7 ;小于80,转向GRADE7 INC[S8] ;S8单元内容增1 JMP NEXT GRADE7:CMP AL,70 JB GRADE6 ;小于70,转向GRADE6 INC [S7] ;S7单元内容增1 JMP NEXT GRADE6: INC [S6] ;S6单元内容增1 JMP NEXT EXIT: POP AX POP SI POP CX RET GRADES ENDP 3.

(1)参考程序如下: DATA SEGMENT BUF1 DB-10,0,11,55,125,38,-69,… ;N字节数据 CN EQU $-BUF1 BUF2 DB CN DUP(?)DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV BX,OFFSET BUF1 LEA SI,BUF2 MOV CX,CN LOP1: MOV AL,[BX] MOV [SI],AL INC BX INC SI LOOP LOPl MOV AH,4CH INT 21H CODE ENDS END START(2)程序的数据定义部分与(1)中相同,不再重复。参考程序段如下: CODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA START: MOV AX,DATA MOV DS,AX MOV ES,AX MOV SI,OFFSET BUF1 MOV DI,OFFSET BUF2 CLD MOV CX,CN REP MOVSB MOV AH,4CH INT 21 H CODE ENDS END START(3)程序的开头和结尾与(2)中相同,不再重复。参考程序段如下: MOV DS,AX MOV ES,AX MOV SI,OFFSET BUF1 MOV DI,OFFSET BUF2 CLD MOV CX,CN LOP: LODSB INC SISTOSB INC DI LOOP LOP 4.参考答案如下: DATA SEGMENT BUFFER DB OOH, 12H,3BH,43H,60H,OCH DB 8AH,OABH,37H,OFFH,32H,47H COUNT EQU $-OFFSET BUFFER DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV SI,OFFSET BUFFER MOV CX,COUNT MOV AL,[SI] ;把第一个数取到AL中 INC SI DEC CX ;比较COUNT-1次 COMPA: CMP AL,[SI];比较,找出大数 JA NEXT MOV AL,[SI] NEXT: INC SI LOOP COMPA ;比较完否?

MOV BL,AL ;是,大数在AL中,将其存入BX中 MOV DL,AL MOV CL,4 SHR DL,CL CMP DL,OAHJB L1 ADD DL,7 Ll: ADD DL,30H MOV AH,02H INT 21H ;显示高位

MOV DL,BL ;将大数放到DL中 AND DL,OFH ;将高4位屏蔽 CMP DL,OAH JB L2 ADD DL,7 L2: ADD DL,30H MOV AH,02H INT 21 H ;显示低位 MOV AH,4CH INT 21H CODE ENDS END START 5.参考答案如下: DATA SEGMENT ADRX DW 144 ADRY DW 12 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV AX,ADRX MOV DX,O DIV ADRY CMP DX,O JZ NEXT MOV DL,'1’ JMP EXIT NEXT: MOV DL,'0' EXIT: MOV AH,02H INT 21H MOV AH,4CH INT 21H CODE ENDS END START

第五篇:微机原理复习题(答案1)xian.

微机原理与接口技术复习题(答案)

一、单项选择题 1.微处理器是()B

A、I/O接口电路、CPU和半导体存贮器有机地组合在一起的一台物理装置。B、利用微电子技术将运算器和控制器做在一块集成电路上的一个独立部件。C、由外设、电源和系统软件构成的一个信息处理系统。2.8088CPU中的段寄存器用来存放()C A、存贮器的物理地址

B、存贮器的逻辑地址

C、存贮器的段基地址

D、存贮器的起始地址 3.CPU中的总线接口BIU部件的功能是()D

A、负责指令的执行

B、负责数据的运算

C、负责存贮指令

D、负责与存贮器、I/O接口传送数据

4.8088CPU内部寄存器CS=B987H,IP=1117H,其指向的物理地址为(A)

A、BA987H

B、B9870H C、11170H

D、CA9EH 5*.段定义语句以()语句结束。B A、END

B、ENDS

C、ENDP

D、ENDM 6.8088的基本总线周期包括的时钟周期数是()C

A、2个

B、3个

C、4个

D、6个

7.在IBM PC/XT的控制核心中,除CPU、地址锁存器、驱动器和数据收发器等还必须包括(D

A、8284和8259A

B、8288和8253

C、8284和8255

D、8284和8288 8.带有扩展槽的ISA总线是()位的。B

A、8

B、16

C、32

D、64 9.执行指令XOR AX, AX后,AX为()C

A、1111H

B、FFFFH

C、0000H

D、内容不变 10.标志寄存器的标志位ZF=1表示运算结果()A

A、为零

B、为负

C、溢出

D、有进位

11.地址总线为32位的微机系统其内存的最大客量为()D A、2000KB B、2048KB C、2048MB D、4096MB 12.8253是可编程的(D)接口芯片。

A、中断控制器

B、串行

C、并行

D、定时/计数器 13.在8088微机系统中,NMI中断的中断矢量位置(C)

A、由程序指定

B、由操作系统自动分配 C、固定在0008H开始的4个字节中 D、固定在中断矢量表的表首

14.可屏蔽中断的屏蔽可由CPU内部的(C)来控制。

A、中断请求触发器

B、中断屏蔽触发器

C、中断允许触发器

D、中断锁存器 15.目前在PC机主板上所使用的总线是(C)

A、ISA总线

B、EISA总线

C、PCI总线

D、PCI总线和ISA总线 16.芯片8288在8088CPU系统中的作用是(C)

A、总线锁存器

B、总线驱动器)

C、总线控制器

D、总线仲裁器

17.在8253的6种工作方式中,既可软件启动又可硬启动的是(B)

A、方式1、2

B、方式2、3

C、方式3、5

D、方式2、5 18.8259A的中断服务寄存器ISR用于(B)

A、记忆中断请求信号

B、记忆正在处理的中断

C、允许向CPU发中断请求

D、禁止向CPU发中断请求 19.PC机是(D)

A.单片机

B、单板机

C、微型计算机

D、微型计算机系统

20.8088CPU中的标志寄存器用来存放(D)

A、存贮器的物理地址

B、存贮器的逻辑地址

C、存贮器的段基地址

D、微处理器的状态 21.CPU中的总线接口EU部件的功能是(A)

A、负责指令的执行

B、负责取指令

C、负责存贮指令

D、负责与存贮器、I/O接口传送数据

22.8088CPU内部寄存器CS=D987H,IP=1115H,其指向的物理地址为(A A、DA985H

B、D9850H C、11170H

D、EA9CH 23.IBM PC/XT总线是(A)位总线标准。

A、8

B、16

C、32

D、64 24.标志寄存器的标志位CF=1表示运算结果(D)

A、为零

B、为负

C、溢出

D、有进位

25.地址总线为20位的微机系统其内存的最大客量为(B)A、2000KB B、1024KB C、2048MB D、4096MB 26.8259A是可编程的(A)接口芯片。

A、中断控制器

B、串行

C、并行

D、定时/计数器 27.芯片8284在8088CPU系统中的作用是(A)

A、时钟发生器

B、总线驱动器

C、总线控制器

D、总线仲裁器

二、多项选择题

1.PC/AT总线中的ISA插槽有(AC)个引脚

A、62个

B、36个

C、98个

D、108个

2.下列寄存器为16位的寄存器有(AD)

A、IP

B、AH

C、AL

D、CS 3.8088CPU访问存贮器,当地址的A0=1时(BC)

A、如果访问的是一个字节,该字节在偶单元中 B、如果访问的是一个字节,该字节在奇单元中 C、如果访问的是一个字,该字的低8位在奇单元中 D、如果访问的是一个字,该字的高8位在奇单元中 4.一般外设接口与外设间交换的信息有(BCD)

A、地址信息

B、数据信息

C、状态信息

D、控制信息 5.主机与外设之间数据的传送方式有(BCD)

A、串行传送方式

B、无条件传送方式)

C、中断方式

D、查询传送方式

6.CPU响应两个硬件中断INTR和NMI时,相同的必要条件是(BC)

A、允许中断

B、当前指令执行结束

C、总线空闲

D、当前访存操作结束 7.8088的中断类型有(BC)

A、单步中断

B、硬件中断

C、软件中断

D、可屏蔽中断

8.对8088的中断矢量表下面叙述正确的是(BC)

A、共有255个类型号

B、共有256个类型号

C、矢量表可分为三部分

D、矢量表可分为四部分

9.以8088为CPU的系统中把存贮空间分为四个段,段与段(BCD)

A、必须是首尾相连的B、可以完全相互重叠

C、可以部分相互重叠

D、之间可以有间隔 10.下列寄存器为8位的寄存器有(BCD)

A、IP

B、AH

C、AL

D、BH 11.8088CPU访问存贮器,当地址的A0=0时(AC)

A、如果访问的是一个字节,该字节在偶单元中 B、如果访问的是一个字节,该字节在奇单元中

C、如果访问的是一个字,该字的低8位在偶单元中 D、如果访问的是一个字,该字的高8位在偶单元中

三、判断题(本题共

分,在题后括号内:正确画勾、错画叉)1.用汇编语言编写的源程序不可以直接在机器上运行。(y)2.设备选择、数据寄存与缓冲以及输入输出操作的同步能力是各种接口电路都应具备的基本能力。(y)

3.中断类型号就是中断服务程序的入口地址。(N)4.伪指令语句的作用是指定CPU做什么操作。(N)5.CPU的所有操作的定时都以总线周期为基准。(N)

6.总线周期是CPU从存贮器或I/O端口存取一个字节所需要的时间长短。(y)7.8088CPU工作于最小组态时需要用8288总线控制器。(N)8.在PC/AT总线插槽上A12---A3120位地址线。(Y)

9.当向8253的控制字寄存器中写入CW=10H时,8253选择了计数器1为当前工作计数器。(N)10.CPU的所有操作的定时都以指令周期为基准。(N)

11.总线周期是CPU从存贮器或I/O端口存取一个字节所需要的时间长短。(Y)12.在PC/XT总线插槽上B1---B8是8位数据线。(N)

四、问答题

1.8088的内部寄存器中PSW的功能是什么?其中哪些是控制标志?哪些是状态标志?简述CF和TF的作用。

答:PSW用于标志CPU的状态。

D、I、T是控制标志。O、S、Z、A、P、C是状态标志。

CF:进位标志。

TF:单步(跟踪)标志。TF=1时(置1)CPU进入单步操作方式。

2.8088的内部寄存器中PSW的功能是什么?其中哪些是控制标志?哪些是状态标志?简述ZF和IF的作用。

答:PSW用于标志处理器的状态。其各位标志记录了指令执行后的各种状态。共9位。控制标志:DF, IF, TF 状态标志:OF SF, ZF, AF, PF, CF。

ZF:零标志,若运算结果为零,ZF置1;否则为0

IF:中断允许标志,若用指令置ZF=1,则允许CPU接收外设的可屏蔽中断请求;若使ZF=0,则屏蔽上述请求。此标志对内部中断不起作用。

3.简述“查询式输入” 时CPU的工作过程、画出程序流程图并为下面的部分查询输出程序加上注解。

POLL: MOV DX, STATUS-PORT

IN AL, DX

TEST AL, 80H

JE POLL

MOV DX, DATA-PORT

IN AL,DX POLL: MOV DX, STATUS-PORT;DX=状态口地址

IN AL, DX

;输入状态信息

TEST AL, 80H

;检查READY位

JE POLL

;未准备好循环等待

MOV DX, DATA-PORT;准备好输入数据

IN AL,DX 4.简述“查询式输出” 时CPU的工作过程、画出程序流程图并为下面的部分查询输出程序加上注解。

POLL: MOV DX, STATUS-PORT

IN AL, DX

TEST AL, 80H

JNE POLL

MOV DX, DATA-PORT

MOV AL, BUFFER

OUT DX, AL POLL: MOV DX, STATUS-PORT ;DX=状态口地址

IN AL, DX

;输入状态信息

TEST AL, 80H

;检查BUSY位

JNE POLL

;BUSY则循环等待

MOV DX, DATA-PORT

;否则准备输出数据

MOV AL, BUFFER

;从缓冲区取数据

OUT DX, AL

;输出数据

5.简述8253工作方式3的功能。8253在PC/XT系统中地址约定为40—43H,三个通道的CLK频率均为1.19MHZ。其计数器0编程为方式3,每55ms向8259A的IRQ0 端发一次中断请求信号。用于报时和磁盘驱动器的马达定时。请写出满足上述要求的初始化程序。MOV AL, 00110110;通道0方式控制字

OUT 43H,AL

;写入43H端口(控制字寄存器)MOV AL,0

;计数初值为65536 1/1.19M×65536=0.55ms

OUT 40H, AL

;初值低8位送40H端口

OUT 40H,AL

;初值高8位送40H端口

6.简述8253工作方式2的功能及操作步骤。若要8253的OUT2输出2KHZ频率的波形,负脉冲宽度为1μS。设CLK2输入1MHZ 的时钟,GATE2接高电平,8253地址为04—07H,请写出满足上述要求的初始化程序。

答:8253工作于方式2时能在OUT端输出连续的负脉冲。脉冲周期等于计数值和时钟周期 的乘积。写入计数值后,计数器对输入的CLK计数,计数器减至1时,输出电平变低,经一个CLK周期输出恢复为高电平,计数器从初值开始重新计数。计数过程受GATE控制。

初始化程序如下:

MOV AL,0B4H

OUT 07H, AL

;写入控制字

MOV AL, 0F4H

OUT 06H, AL

;写入计数值的低8位

MOV AL, 01H

OUT 06H, AL

;写入计数值的高8位

7.PC/XT系统采用向量中断方式处理8级外部硬件中断。设其中断向量表在0000H:002CH单元开始依次存放23H、FFH、00H、和F0H四个字节,请回答:该向量对应的中断类型码和中断服务程序入口地址是多少?并简述所得结论的理由。

答:中断服务程序入口地址在向量表中的物理地址为

00000H+002C=0002CH=(2×161+12×160=44)10

44÷4=11=(BH)

所以中断类型号为0BH,中断服多入口地址为:

F000:FF23

0002C

IP

FF

00

CS

F0

8.PC/XT系统采用向量中断方式处理8级外部硬件中断。设其中断向量表在0000H:003CH单元开始依次存放34H、FEH、00H、和F0H四个字节,请回答:该向量对应的中断类型码和中断服务程序入口地址是多少?并简述所得结论的理由。答:因为中断服务程序入口地址在向量表中的物理地址为:

00000H+003CH=0003CH=(3×16+12×160=60)10 60÷4=15=FH 所以中断类型号为0FH。以上四字节在表中的位置排列为: F000:FE34H

0003CH

FE

IP

00

F0

CS 9.设某微机系统中有三片中断控制器8259A采用级联方式工作,其中有一片做为主片,其它两片做为从片。若从片1的INT脚连接主片的IR3,从片2的INT脚连接主片的IR5。请你画出的此级连系统的电路连接图,并对分别对主片的SP*/EN*和从片的SP*/EN*的设置方式做出说明。

系统总线 AB、DB、CB

INTAACSD-DRDWRINTINTAACSD-DRDWRINTINTAACSD-DRDWRINT

CASCASCAS8259A8259A8259A CASCASCAS(从片1)(从片2)(主片)CASCASCAS SP/ENIRIRIRIRIRIRIRIRSP/ENIRIRIRIRIRIRIRIRSP/ENIRIRIRIRIRIRIRIR ******321076543210VCC 5

5.设某系统中有两片中断控制器8259A,采用级联方式工作。其中从片的INT脚与主片的RI4脚连接。假定现在从片的IR3发生中断并获得服务。请问,若采用一般嵌套方式,系统中有那些级别的中断源有权对正在获得服务的中断实施嵌套?若采用特殊嵌套方式,系统中有那些级别的中断源有权对正在获得服务的中断源实施嵌套,这些中断源的优先级顺序是如何排列的?

B.一般嵌套方式:IR4的中断被服务时,这些中断将被封锁。

C.一般嵌套方式:从8259AIR0IR1IR2IR3主8259AIR0IR1IR2IR3从片的INT被主片封锁,故更高级别的IR0-IR2中断也无法得到响应A.假定IR3发生中断,并获得服务 去CPUINTIR4IR5IR6IR7INTIR4IR5IR6IR7E.D.特殊嵌套方式:IR4的中断被服务时,只封锁IR5-IR7。特殊嵌套方式:因主片不封锁从片的INT,故级别高的IR0-IR2中断可以得到响应。(但IR3-IR7仍被本从片封锁)

答:一般嵌套方式,系统中只有主片的IR0~IR3有权对正在服务的中断实施嵌套。若采用特殊嵌套方式,系统中有主片的IR0~IR3和从片上的IR0~IR2有权对正在服务的中断实施嵌套。优先级顺序是,先主片IR0~IR3,然后是从片上的IR0~IR2

下载微机原理与语言复习题及参考答案word格式文档
下载微机原理与语言复习题及参考答案.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    微机原理答案.

    部分习题答案(顾三乐整理编辑版) 第二章 计算机中的数值和编码 将十进制数转换为二进制和十六进制 (1) 129.75=1000 0001.11B=81.CH (2) 218.8125=1101 1010.1101B=DA.DH (3)......

    微机原理复习题3(含答案)(精选)

    汇编语言试卷 一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干的括号内。每小题1分,共20分) 1、设DS=8225H,DI=3942H,指令NEG BYTE PTR[DI]操作......

    微机原理复习题6(含答案)

    汇编语言试卷 一、单项选择题(本大题共20小题,每小题1分,共20分) 1.设A=0.4H,B=0.8H,C=0.4,D=0.4Q,它们之间的关系是(C )。 A) C+D=B B) A+D=B C) B=D D) A>C>D 2.标志寄存器中属于控......

    微机原理试题及答案

    微机原理与接口技术模拟试题 -1. 实现DMA传送,需要( ) ①CPU通过执行指令来完成 ②CPU利用中断方式来完成 ③CPU利用查询方式来完成④不需要CPU参与即可完成 0 下面哪种说......

    微机原理试题和答案

    微机原理试题 一、单项选择题(每小题1分,共20分) 1.8086CPU由两个独立的工作单元组成,它们是执行单元EU和( ). A)总线控制逻辑器B)内部通信寄存器 C)指令寄存器D)总线接口单元 2......

    微机原理试题及答案

    一. 选择(每题1分) 下列各题四个选择项中,只有一个选项是正确的。请将正确选项号写在相应空位置上。 1.系统总线又称为_______,这是指模块式微处理机机箱内的底版总线。 1)主板......

    微机原理考试答案

    微机原理与应用考试答案 一、单选题(25分,每个1分) 1、8086当前被执行的指令放在(D) A、DS:BX B、SS:SP C、CS:PC D:CS:IP 2、8086CPU能够直接执行的语言是(B) A、汇编语言 B、机器语言......

    微机原理考试习题与答案

    微机原理及接口技术习题及练习册 微机原理课程组 2009年12月 中北大学微机原理及接口技术习题及练习册---目录 目录 第1章 计算机基础知识 ....................................