微机原理的系统复习

更新时间:2023-11-13 04:33:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第一章思考题与习题:

1. 什么叫微处理器、微机?微机系统包含哪些部分?

答:微处理器即CPU,它包括运算器、控制器、寄存器阵列和内部总线等部分,用于实现微型计算机的运算和控制功能,是微型计算机的核心;

微型计算机系统则包括硬件系统和软件系统两大部分,其中硬件系统又包括微型计算机和外围设备;由此可见,微处理器是微型计算机的重要组成部分,而微型计算机系统又主要由微型计算机作为其硬件构成。

2. 为什么计算机使用二进制计数制?

答:因为电路的状态只有接通和断开两种情况,接通为1断开为0,再采用记数

器进行记录,就形成了二进制。

3. CPU在内部结构上由哪几部分组成?

答:CPU在内部结构上由运算器、控制器、寄存器阵列和内部总线等各部分构成,其主要功能是完成各种算数及逻辑运算,并实现对整个微型计算机控制,为此,其内部又必须具备传递和暂存数据的功能。

8086CPU由执行部件(EU)和总线接口部件(BIU)两部分组成。

4.十六进制的基数或底数是 16 。

5.将下列十进制数分别转换成十六进制、二进制、八进制数:

563 6571 234 128

6.将下列十进制小数转换成十六进制数(精确到小数点后4位数):

0.359 0.30584 0.9563 0.125

7.将1983.31510转换成十六进制数和二进制数。 小数部分乘于16或2

8.将下列二进制数转换成十进制数、十六进制数和八进制数:

(1)101011101.11011 (2)11100011001.011 (3)1011010101.00010100111 9.将下列十六进制数转换成十进制数和二进制数: AB7.E2 5C8.11FF DB32.64E

10.判断下列带符号数的正负,并求出其绝对值(负数为补码): 10101100;01110001;11111111;10000001。

11.写出下列十进制数的原码、反码和补码(设字长为8位): +64 -64 +127 -128 3/5 -23/127 12.已知下列补码,求真值X: (1)[X]补=1000 0000 (2)[X]补=1111 1111 (3)[-X]补=10110111

13.将下列各数转换成BCD码:

30D,127D,23D,010011101B,7FH 14.用8421 BCD码进行下列运算: 43+99 45+19 15+36

15.已知X1=+25,Y1=+33,X2= -25,Y2= -33,试求下列各式的值,并用其对应的真值进行验

证:

(1)[X1+Y1]补 (2)[X1-Y2]补 (3)[X1-Y1]补 (4)[X2-Y2]补 (5)[X1+Y2]补 (6)[X2+Y2]补

16.当两个正数相加时,补码溢出意味着什么?两个负数相加能产生溢出吗? 试举例说明。

17.试将两个有符号数10001000和11100110相加,判断结果是否溢出?为什么? 18.已知X= -0011001,Y= -0000110,求两数的补码之和。(注意自然丢失和溢出 错误之区别)。

19.回答下列各机器数所表示数的范围: (1)8位二进制无符号定点整数;0--255 (2)8位二进制无符号定点小数;0—2-2^7

(3)16位二进制无符号定点整数; 0--65535

(4)用补码表示的16位二进制有符号整数; -32768~~~32767 (5)用浮点数表示(阶码是两位原码,尾数是8位原码)。 20.计算机硬件和软件的构成原理以及各自的分类有哪些?

第二章思考题与习题

1. 8086/8088为什么要分为EU和BIU两部分?每个部分又由哪几部分组成? 答: 8086CPU由执行部件(EU)和总线接口部件(BIU)两部分组成。

执行部件(EU)由1内部寄存器组、2算术逻辑运算单元(ALU)与3标志寄存器(FR)及内部控制逻辑 等三部分组成。

总线接口部件(BIU)负责CPU与存储器、I/O设备之间传送数据、地址、状态及控制信息。

2. 简述8086/8088指令队列作用及工作过程。

3. 在执行指令期间,EU能直接访问存储器吗?为什么?

4. 8086/8088CPU中,供使用汇编语言的程序员使用的寄存器有哪些?

5. 试述SP、IP、BP、SI和DI寄存器的主要功能。它们能否作为通用寄存器?

6. 为什么要设置段寄存器? 8086/8088有几个段寄存器?

答:段地址寄存器(CS、DS、SS、ES)。

用于存放段地址,

7. 8086/8088有几位状态位? 有 9 位控制位? 其含义各是什么? 答:

15 14 13 12 11 10 9 8 7 6 5 4

OF DF IF TF SF ZF -- AF 3 -- 2 PF 1 -- 0 CF CF(Carry Flag)进位标志,反映在运算结果的最高位有无进位或借位。如果运算结果的最高位产生了进位(加法)或借位(减法)则CF=1,否则CF=0。

PF(Parity Flag)奇偶标志,反映运算结果中“1”的个数的奇偶性,主要用于判断数据传送过程中是否出错。若结果的低8位中有偶数个“1”则PF=1,否则PF=0。

AF(Auxiliary Carry Flag)辅助进位标志,又称半进位标志。加减运算时,若D3向D4产生了进位或借位则AF=1,否则AF=0。在BCD码运算时,该标志用于十进制调整。

ZF(Zero Flag)零标志,反映运算结果是否为0。 若结果为零则ZF=1,否则ZF=0。 SF(Sign Flag)符号标志,反映运算结果最高位即符号位的状态。如果运算结果的最高位为1则SF=1(对带符号数即为负数),否则SF=0(对带符号数即为正数)。

OF(Overflow Flag)溢出标志,反映运算结果是否超出了带符号数的表数范围。若超出了机器的表数的范围,即为产生溢出,则OF=1,否则OF=0。

DF(Direction Flag)方向标志,用于串处理指令中控制串处理的方向。当DF=1时,每次操作后变址寄存器SI、DI自动减量,因此处理方向是由高地址向低地址方向进行。当DF=0,则SI、DI自动增量,处理方向由低地址向高地址方向进行。该标志由方向控制指令STD或CLD设置或清除。

IF(Interrupt Flag)中断允许标志,用于控制CPU是否允许响应可屏蔽中断请求。IF=1为允许响应可屏蔽中断请求,IF=0则禁止响应可屏蔽中断请求。该标志可由中断控制指令STI或CLI设置或清除。

TF(Trap Flag)陷阱标志,用于单步操作。TF=1时,每执行一条用户程序指令后自动产生陷阱,进入系统的单步中断处理程序。TF=0时,用户程序会连续不断地执行,不会产生单步中断。

8. 8086/8088CPU使用的存储器为什么要分段?怎样分段? 为什么要设置段寄存器,有几个段寄存器?各段寄存器有什么意义?

答:8086 CPU内部数据结构是16位的,即所有的寄存器都是16位的,而外部寻址空间为1MB,即需要20位地址线。

为了能用内部寄存器中的16位地址来寻址1MB空间,8086将1MB空间以16字节为一个内存节,共分成64K个节。节的起始地址分别为00000H、00010H、00020H、?、FFFF0H,称为段基址。节的起始地址的后4位二进制数为全0,称为节的段地址。

用于存放段地址的寄存器称为段寄存器,根据其主要用途,分为代码段寄存器CS、数据段寄存器DS、堆栈段寄存器SS、附加段寄存器ES。

代码段寄存器CS:用来存放代码段存储区域的起始地址。 数据段寄存器DS:数存放程序的数据存储区的起始地址。

堆栈段寄存器SS:用来存放堆栈存储区的起始地址。由堆栈段寄存器SS与堆栈指针寄存器SP来确定当前堆栈指令的操作地址。

附加段寄存器ES:附加段是为某些字符串操作指令存放目的操作数而设置的一个附加的数据段,附加段寄存器用来存放该附加数据段存储区域的起始地址。

8086微机系统中存储器为什么要分段(8086系统内的地址寄存器均是16位,只能寻址64KB;将1MB存储器分成逻辑段,每段不超过64KB空间,以便CPU操作。),各逻辑段之间的关系如何(可重叠、交叉、紧密连接和分离)?

9. 什么是逻辑地址? 什么是物理地址? 它们之间有什么联系?

答:物理地址为某一个存储单元的实际地址,对于8086它是一个20位的地址。物理地址从00000H~FFFFFH变化,对应1MB的空间。

逻辑地址,又称偏移地址或有效地址,即对段首的偏移量。偏移地址从0000H~FFFFH变化,对应64KB的空间。

10. 什么是基地址?什么是偏移量?它们之间有何联系?

答:8086 CPU内部数据结构是16位的,而外部寻址空间为1MB。为了能用内部寄存器中的16位地址来寻址1MB空间,8086将1MB空间以16字节为一个内存节(Paragraph),共分成64K个节。节的起始地址称为段基址。偏移地址是存储地址对段首的偏移量。偏移地址从0000H~FFFFH变化,对应64KB的空间。

它们之间有何联系:物理地址=基地址×16+位移量。

11. 若CS为A000H,试说明现行代码段可寻址的存储空间的范围。

12. 设现行数据段位于存储器B0000H到BFFFFH存储单元,DS段寄存器内容为多少? 13. 设双字节12345678H的起始地址是A001H,试说明这个双字在存储器中如何存放? 14. 已知堆栈段寄存器SS=A000H,堆栈指示器SP=0100H,试将数据1234ABCDH推人堆栈,画出进栈示意图。最后栈顶SP=?

15. 试求出下列运算后的各个状态标志,井说明进位标志和溢出标志的区别。 (1) 1278H十3469H (2) 54E3H一27A0H (3) 3881H十3597H (4) 01E3H一01E3H 16. 8086与8088 CPU主要区别有哪些?

17. 8086/8088 CPU系统中为什么要采用地址锁存器8282/8283?

18. 8086/8088最小模式系统和最大模式系统各自主要特点是什么? 区别在哪里? 19. 8088CPU工作在最小模式(单CPU)和最大模式(多CPU)主要特点是什么?有何区别?

20. 8088 CPU工作在最小模式时,

(1) 当CPU访问存储器时,要利用哪些信号? (2) 当CPU访问I/O时,要利用哪些信号?

(3) 当HOLD有效并得到响应时,CPU的哪些信号置于高阻状态? 21. 8088CPU工作在最大模式时:

(1) S2,S1,S0可以表示CPU的哪些状态? (2) CPU的RQ/GT信号的作用是什么?

22. 什么是时钟周期? 机器周期? 总线周期? 什么是指令周期? 23. 为什么要了解8086/8088CPU时序?

24. 试绘制出8086最小模式系统访问I/O端口总线周期的时序图。 25. 试绘制一个基本的存储器读总线周期的时序图。

26. 什么情况下插入Tw等待周期? 插入Tw多少,取决什么因素? 什么情况会出现总线空闲周期?

27. 微机总线有哪些分类?什么是微机的系统总线、局部总线? 28. 微机的总线结构为它带来了哪些好处?

29. 试绘出8088工作在最小模式和最大模式时的系统总线形成示意图。 30. 对照PC总线,ISA总线主要增加了什么信号线? 31. 简述PCI总线、USB通用串行总线的特点。

32. IEEE1394总线有哪些特征?试比较IEEE1394和USB的主要不同特点。 33. 简述80286、80386、80486和Pentium CPU基本组成与各部分作用。 34. 试说明Pentium系列微处理器各自的基本特点。

35. 什么是Pentium Ⅲ处理器序列号?使用序列号的优缺点是什么? 36. 简述ARM系统的基本概念,列举其应用情况。 37. 64位计算机系统的优势何在?

第三章思考题与习题

1、试分别说明下列指令中源操作数和目的操作数采用的寻址方式: 目的操作数 源操作数 (1) MOV BX,7FFFH 寄存器 立即寻址 (2) MOV DS,DX 寄存器 寄存器寻址 (3) OR CH,[200H] 寄存器 直接寻址 (4) ADC [DI],AX 寄存器间接 寄存器 (5) MOV SS:[1000H],CH 直接寻址 寄存器 (6) SUB [BX][SI],1 基址变址 立即

(7) ADD AX,10H [BX][SI] 寄存器 相对基址变址 (8) PUSH ES 隐含 寄存器 (9) CMP [BP][DI],DL 基址变址 寄存器 (10) CLC 隐含

2、若(BX)=1123H,(SI)=1968H,位移量D=0313H,(DS)=1971H,试确定由这些寄存器和下列寻址方式产生的有效地址和物理地址:

(1) 立即寻址:立即数寻址的有效地址是当前IP的内容;

直接寻址:若使用位移量D=0313H进行,则有效地址为0313H; (2)使用BX的寄存器寻址时,操作数在BX寄存器中,因此无有效地址; 用BX的寄存器间接寻址; 有效地址在BX寄存器中,即有效地址=1123H (3) 用BX的寄存器相对寻址; 有效地址=(BX)+D=1123H+0313H (4) 用BX和SI的基址变址寻址; 有效地址=(BX)+(SI) (5) 用BX和SI的相对基址加变址寻址。 有效地址=BX+D+SI 3、连续执行以下指令,并在空格中填写执行指令的结果。 MOV AX,2060H AL=60H AH= 20H CF=0 MOV DS,AX DS= 2060H AH= 20 CF=0 ADD AL,AH AL= 80H AH= 20H CF=0 INC AX AL= 81H AH= 20H CF=0 MOV DX,512 DL= 00H DH= 01H CF=0 SUB AX,DX AL= 81H AH= 18H CF=0

4、假设标志寄存器各标志初始值为0,分别单独执行如下指令后,请指出标志寄存器CF、AF、ZF、SF、OF的值。 CF AF ZF SF OF (1) MOV AX,BX 0 0 0 1 0 (2) XOR AX,AX 0 0 1 0 0 (3) MOV AX,1971H 0 0 0 0 0

ADD AX,1968H 1 1 1 0 0 (4) MOV CX,0FFFFH 0 0 0 1 0

INC CX 0 1 0 1 0 (5) MOV BX,0 0 0 1 0 0

SUB BX,80H 1 1 0 1 0

(6) MOV DX,1234H

SHL DX,1 1 0 0 1 0

5、编写程序段以实现如下功能:

(1) 将立即数17H送DL,立即数7FH送AL。 MOV DL,017H MOV AL,07FH (2) 将立即数1234H送AX,5678H送DX。 MOV AX,1234H MOV DX,5678H (3) 将立即数5411H送存储单元1117H中。

6、编写程序实现将十进制数59与27相加。 MOV AL,59H ADD AL,68H DAA

MOV BL,AL 7、已知下列指令运行前有关寄存器状态如下,AX=C372H,BX=0000H,SI=4400H,DI=2300H,SP=4400H,CX=0003H,DS=ES=SS=5000H,C=1,D=0。有关存储单元内容如下:(54400H)=A2H,(54401H)=73H,(54402H)=00H,(54403H)=F2H。请指出下列指令单独执行后有关寄存器及内存单元的值,并判断是否 标志位SF,ZF,CF,OF。若影响则写出SF,ZF,CF,OF的值。 (1)POP AX

(2)MOV [BX+SI+10H],AH (3)DEC WORD PTR[SI+2] (4)ADC AL,BH

(5)OR AL,[BX+SI-1] (6)SHR AH,1 (7)MOVSW

(8)CALL BX(段内间接调用)

8、编写程序实现下述功能:

(1)将BX寄存器的低8位清零,其余位不变。 AND BX,0FF00H (2)将DL寄存器的最高位置1,其余位不变。 OR DL,80H (3)将CL寄存器的高4位保持不变,低4位取反。 XOR CL,0FH (4)测试CX中的最低位,当最低位为0时将AL置1,否则AL置0。

答案:

TEST JZ MOV HLT L1: MOV

HLT

CX ,01H L1 AL ,0 AL , 1

(5)测试SI,如果SI为奇数将AL置1,否则AL置0。

答案:

TEST SI ,01H 备注:最低位为1为奇数,为0 为偶数 JNZ L1

MOV AL ,0 HLT

L1: MOV AL , 1

HLT

9、若32位二进制数存放于DX和AX中,其中DX存放高16位,AX存放低16位,试利用移位指令实现如下功能:

(1) 假设该32位数为无符号数,将其分别乘以2和除以2。 (2) 假设该32位数为带符号数,将其分别乘以2和除以2。

10、利用字符串操作指令,将1000H至10FFH单元的内容全部清零。 MOV CX,00FFH MOV DI,1000H

MOV AL,00H 或置1 MOV AL,01H REP STOS DS:DI

11、编程将存放在1000H和1002H单元中的两个16位的无符号数相乘,并将结果存放在地址为2000H开始的单元中。 MOV AX,(1000H) MOV BX,(1002H) MUL BX

MOV (2000H),AX MOV (2002H),DX

12、判断下列指令正误,如果错误请指出原因。

(1) MOV CH,300 错,源操作数为字类型,目的操作数为字节类型,二者不一致 应为:MOV CX,300 ????? (2) XOR DL,BH 对

(3) ADD 100,AH 错,目的操作数使用了立即数,在指令中一般不允许。

应改为:MOV DS:[100],AL ????

(4) MOV DS,2200H 错,立即数不能直接送DS寄存器 应为:MOV AX,2200H (5) POP CS 错,不能将栈顶数据弹至CS中。

(6) XCHG DX,BX 错,目的操作数AX是隐含的,不能在指令中写出。

应改为:XCHG BX

(7) IN AL,250H 错,源操作数必须为口地址

(8) MOV [BX][SI],[DI] 错,两操作数不能同时为寄存器 (9) LEA AX,BX 错,源操作数必须为地址标号 (10) MOV CX,[BX+20H] 对

13、在8086/8088中,哪些指令可以用来修改CS和IP的值? 答:用jmp指令来改变cs.ip的值

若想修改cs.ip的内容,。jmp 段地址,偏移地址的指令完成。 jmp2ae3:3 cs=2ae3h. ip=0003h

(jmp 段地址:偏移地址)的功能是:用指令中给出的段地址修改CS,偏移地址修改IP

14、如果AL=8FH,则执行CBW指令后,AX =0FF8FH 。

注解:CBW指令:在8086中CBW指令将AL的最高有效位D7扩展至AH,

即:如果AL的最高有效位是0,则AH = 00;AL的最高有效位为1,则AH = FFH。AL不变。

问题:因为AL的最大有效位是1,则AH=FFH AX=0xFFC9H

15、假定DS=212AH,CS=0200H,IP=2BC0H,BX=1200H,位移量D=5119H,(224A0H)=0600H,(275B9H)=098AH,试确定JMP指令的转移地址。 1) 段内直接寻址:CS=0200H, IP= H。

2) 使用BX及寄存器寻址方式的段内间接寻址:CS=0200H , IP=BX=1200H。 3) 使用BX及寄存器相对寻址方式的段内间接寻址:CS=0200H, IP=BX+D H。 16、假设IP = 3D4BH,CS=408FH,SP=0F17CH,执行CALL 2000:008BH后,

SP= 4B,[SP]= 3D ,[SP+2]= 40H 。

17、在20100H和20101H单元中分别存放74H,83H(表示条件转移指令JZ),若CS=2000H,ZF=1,则执行完这条指令后,IP = 。

第四章思考题与习题

1、假设程序中的数据定义如下: PARTNO DW ?

PNAME DB 16 DUP(?) COUNT DD ?

PLENTH EQU $ -PARTNO 则PLENTH= ,它的意义是 。 2、假设有下面的数据定义: BUFFER DB ?

STRING DW 20 DUP(?) TABLE DB ?ABCD?

则下列各条MOV指令单独执行后,有关寄存器的内容是: (1)MOV AX,TYPE BUFFER AX = 。 (2)MOV AX,TYPE STRING AX = 。 (3)MOV AX,LENGTH STRING AX = 。 (4)MOV AX,LENGTH TABLE AX = 。 (5)MOV AX,SIZE STRING AX = 。

3、计算下列程序分别执行后AX寄存器的内容。 (1) MOV AX,0 MOV BX,2345H TEST BX,1000H JZ NEXT INC AX

NEXT: HLT

(2) MOV AX,0 XOR BX,BX AGAIN:INC BX ADD AX,BX

CMP BX,10 JB AGAIN HLT

(3) TABLE DB 10,20,30,40,50 INDEX DW 2 ……

LEA BX,TABLE ADD BX,INDEX MOV AX,[BX] HLT

(4) MOV AX,0 MOV BX,0ABCDH MOV CX,16

AGAIN:SHL BX,1 JNC NEXT INC AX

NEXT:LOOP AGAIN HLT

(5) MOV AL,0FFH CBW INC AX INC AX

XCHG AH,AL SHR AH,1 RCR AL,1 HLT

4、若在自1000H单元开始有一个1000个字节的数据块,要把它传送到自1200H开始的存储区中去,用以下三中方法,分别编制程序: (1) 不用串操作指令。

(2) 用单个传送的串操作数据传送指令。 (3) 用带重复前缀的串操作数据传送指令。

5、自1000H单元开始,有100个无符号数(字节),编写程序计算这100个数的和,并把和存放在1971H和1972H单元,且高位存放在1972H单元。 6、编写程序,计算下列函数值。

X+5 当X< 0 4X 当0≤X≤300 4X 当X>300 Y =

7、已知有A、B、C三个变量,编程完成如下处理: (1)若三个数均为0,则设置变量D为1。

(2)若三个数均不为0,则求这三个数的算术和,并存放在变量E中。 8、若在存储器中有数a、b、c、d(它们连续存放),编写一个程序实现: ((a * 10 + b)*10+c)*10+d (假设和小于65535)

9、在0200H单元和020AH单元开始,分别存放两个各为10个字节的未组合BCD数(地址最低处存放最低字节)。编写程序计算两个未组合BCD数的和,且把和存放在0214H单元开始的存储单元中。

10、若自STRING单元开始有1000个数(字节),试针对下面情况编程将它们中的最小值、最大值找出来,并分别存放在5000H和5001H字节单元中。 (1) 这1000个数为无符号数。 (2) 这1000个数为带符号数。

11、已知数组A包含10个互不相等的整数,数组B包含15个互不相等的整数。试编写一程序,

将既在A中出现又在B中出现的偶数存放在数组C中。

12、把在内存变量NUMBER中的16位二进制数的每一位都转换为相应的ASCII码,存入串变量STRING中。

13、统计STRING字符串中数字字符(?0?~?9?)的个数,并将数字字符放入BUFFER区内(开始单元存放字符个数)。

14、有X,Y,Z三个带符号数,请将它们按从小到大的顺序重新排列为X,Y,Z。

15、有一个4位BCD码abcd,将其转换为二进制数。要求:必须用子程序结构编写,并调用该子程序。

16、编程把从键盘输入的带符号十进制数转换为用补码表示的二进制数。

17、设有10个学生的成绩分别为59,64,74,92,73,85,93,61,33,24。试用子程序结构编写一个完整的程序。

子程序INPUT:从键盘接收一个学生的序号(01~10),并将之转换为二进制数。

子程序LOCATE:把接收数与该学生的成绩对应起来,这可在一个事先建好的成绩表中查找。 子程序DISPLAY:将找到的学生成绩在屏幕上显示出来。

主程序MAIN:依次调用上述三个子程序,完成键盘输入学生学号即可查询该生成绩的功能。 18、请设计一程序,在目的字符串中搜索源字符串。假设每个字符串都以说明串长度的16位整数开始。返回时,AL返回一个标志(0=没有找到,0FFH=找到)。如果搜索成功,DX的内容就是在目的字符串中找到的源字符串第一个字符的地址。

19、若自STRING开始有一个字符串(以?$?号作为字符串的结束标志),请编程查找此字符串中有多少个?#?,并将个数存放在NUMBER字单元中,且把每一个?#?字符所存放的偏移地址放到自POINTER开始的连续存储字单元中。

20、若从STRING开始有100个数,编程检查这些数,正数保持不变,负数都取补后送回。

第五章思考题与习题

1. SRAM、DRAM,ROM,PROM,EPRM,EEPROM各有何特点?各用于何种场合?微型机的外部存储器有哪几种?各自的特点是什么? 2. 若用4K×4位的RAM芯片组成32K×8位的存储器,需要16芯片?A19~A0地址线中哪些参与片内寻址(A0-A14)?哪些参与作芯片组的片选择信号(A15 A16)?

3. 由存储器芯片的引脚可以计算出该存储器芯片的容量吗?请举例说明。 4. 列RAM各需要多少条地址线进行寻址?多少条数据I/O线? (1) 512×4;9 (4) 4K×1; 12 (2) 1K×8; 10 (5) 64K×1; 16 (3) 2K×8; 11 (6) 256K×4; 18

5. 使用下列RAM芯片,组成所需的存储容量,各需多少RAM芯片?各需多少RAM芯片组?共需多少寻址线?每块片子需多少寻址线? (1)512×4的芯片, 组成8K×8的存储容量; (2)1K×2的芯片, 组成32K×8的存储容量; (3)4K×1的芯片, 组成64K×8的存储容量;

6. 在有16根地址总线的微机系统中画出下列情况下存储器的地址译码和连接图。 (1) 采用8K×1位存储芯片,要形成64K字节存储器。

(2) 采用4K×1位芯片,要形成32K字节存储器。 (3) 采用4K×1位芯片,要形成16K字节存储器。

(4) 若要设计一个256K字节的存储器系统,应怎么办?

7. 若用2114芯片组成2KB RAM,地址范围为3000H~37FFH,问地址线应如何连接?(假设CPU只有16条地址线,8根数据线,可选用线选法和全译码法)

8. 试为某8位微机系统设计一个具有8KB ROM和40KB RAM的存储器。ROM用EPROM芯片2732(4K×8)组成,从0000H地址开始,RAM用SRAM芯片6264(8K×8)组成,从4000H地址开始。

9. 图5-30为一存储器同8086的连接图,试计算该存储器的地址范围,并说明该电路的特点。 G1G2AG2BB A C Y0Y2Y3Y7CS≥1M/IO RD WR ≥1A18A17A16A15A14≥1A0 ~A13A0 ~A13 图5-30 某存储器同8086的连接

第六章思考题与习题

1. 为什么要在CPU与外设之间设置接口? 2. 微型计算机的接口一般具有哪些功能?

3. 什么叫端口?I/O端口的寻址方式有几种?各有何特点?

4. 微机输入输出传送方式有几种?各有何特点?各自用在什么场合?请对比说明。 5. 什么情况下两个端口可以用同一个地址?

6. 在输入输出接口电路中为什么要求输入接口加三态缓冲器,输出接口加锁存器? 7. 试设计一个查询式输出接口, 画出电路图并写出相应的输出程序。 8. 设计一个外设端口地址译码器,使CPU能寻址4个地址范围:

(1) 240~247H, (2)248~24FH, (3)250~257H, (4)258~25FH

9. 试用 双2-4线译码器74LS139 组成 256 个外设端口的译码电路,给出相应的256个片选信号。

10. 译码电路设计: (1)试用组合逻辑电路设计一译码电路, 使片选信号CS在 300~3FFH 的I/O地址范围内使能。 (2)某微机系统,其I/O地址 2F0H~2F7H 未用,试设计一完全译码电路产生8个片选信号,使2F0H~2F3H 为输出端口, 02F4H~02F7H 为输入端口。

(设总线接口信号有: AB9~AB0,MEMW,MEMR,IOR,IOW,AEN)

11. 某微机系统存储器及I/O地址空间共64K,地址分配如下表所示, 试画出相应译码电路,给出相应的各个片选信号。 若要对RAM寻址到 128 字节, 译码电路又该如何设计? RAM

FFFF~FC00 (1K) I/O口

FBFF~F800 (1K) ROM

F7FF~E800 (4K) EPROM

E7FF~E000 (2K) FlashROM

DFFF~0000 (56K) (设总线接口信号有: AB15~AB0,MIO/,RD,)

12. 为什么在设计PC机I/O接口电路时应保证当A9=1,AEN=0时才使相应译码有效?

13. 试给出将CPU的MIO/,RD,WR信号转换为总线读写信号MEMW,MEMR,IOR及IOW的逻辑电路。

14. 如图6-17所示,用一片74LS373作为输入接口,读取三个开关状态,用另一片74LS373作为输出接口,点亮红、绿、黄三个发光二极管。请画出该电路与PC机ISA总线的完整接口电路,要求按图中给出的端口地址设计出相应的译码电路,并编写能同时实现以下三种功能的程序: 1〉 K0、K1、K2全部合上时,红灯亮; 2〉 K0、K1、K2全部断开时,绿灯亮; 3〉 其它情况黄灯亮。 图6-13 接口示意图

第七章思考题与习题

1. 8253有哪几种工作方式?各有何特点?其用途如何?

2. 某应用系统中8253口地址为340H~343H, 定时器0用作分频器(N为分频系数), 定时器2用作外部事件计数器, 请写出初始化程序。

3. 某应用系统中8253口地址为304H~307H, 输入时钟CLK为1MHZ周期脉冲信号,输出端OUT的波形为1HZ占空比为1:1的方波周期信号。请用全译码方式画出与ISA总线的硬件连接图(用LS138作地址译码器),并写出相应的程序。

提示:ISA总线中相应的地址线、控制线为: A0~A9、IOR、IOW、AEN 4.某8253的输出波形如下:

请设计一输入波形并画出该8253的硬件原理图(8253的端口地址为308H~30BH,全译码方式)和写出相应的驱动程序。

第八章思考题与习题

1. 并行接口有何特点?其应用场合如何?

2. 可编程并行接口芯片8255A有哪几种工作方式?有何差别?在微机系统中连接方法有何不同?

3. 8255A的编程命令有哪两个?其命令格式及每位的含义是什么?请举例说明。

4. 将8255A编程:口A为输入, 口B为输出, 口C的低4位为输入, 高4位为输出, 请写出方式选择控制字。

5. 请编一段输出程序, 使8255A 口C的PC1输出占空比为1/3的周期脉冲。

6. 请用8255A(端口地址为300~303H)设计一个十字路口机动车交通指挥灯自动管理系统,每个路口有红、黄、绿三种颜色交通指挥灯各一盏。要求: 南北方向:绿灯亮90S → 黄灯亮5S → 红灯亮60S …;东西方向:红灯亮95S→绿灯亮55S →黄灯亮5S …。 采用8253作定时器,端口地址为308~30BH,输入时钟CLK频率为1KHZ;用8259作中断管理,端口地址为

30C~30DH。请画出硬件原理图并写出相应程序。

7. 请用LS138, 8255设计一个接口电路,8255口地址为300~303H,PA口接一个八段LED数码管,PB0~PB3分别接四个开关,请画出硬件图并写出由PB0~PB3输入的二进制数,从PA口显示出十六进制数结果的程序。每次显示1秒钟(有1秒钟软件延时程序“D1S”可调用)。 8.某应用系统中的8255A PA口接有八个LED显示器,PB口接有八个开关,(见示意图) 当PB口某位开关闭合时,PA口相应位的LED发亮,请写出8255A的初始化程序和应用程序。

第九章思考题与习题

1. 比较串行通信与并行通信, 各自有什么特点?

2. 调制解调器(MODEM) 在串行通信中起什么作用? 3. 起止式通信协议的特点是什么?请画出帧数据格式。

4. 面向字符和面向比特通信协议有什么不同?请画出各自的帧数据格式。 5. 异步串行通信接口的基本任务有哪些?

6. 8251A有何特点?在串行通信中起什么作用? 7. 为什么要在RS-232C与TTL之间进行电平转换?

8. 在1000H开始的内存中,放有10000个ASCII字符,请设计一程序,将这串ASCII字符以异步串行通信方式从8255A PA0输出,采用偶校验、一位起始位、一位终止位、波特率500 (可调用1ms软件定时程序 “D1MS”)。

9. 请设计一程序,从8255A 口B接收异步串行通信数据,数据为ASCII码、格式为一位起始位、两位终止位、奇校验、波特率为500 (可调用1ms软件定时程序 “D1MS”)。前四个字节为数据块总长度(十六进制数字,低字节在前),请将接收到的字符存放在从3000H开始的内存中。

第十章思考题与习题

1. 什么叫中断?什么叫中断源?一般有几类中断?请简述一个可屏蔽中断完整的处理过程。

中断:外设向CPU发出的中断请求,处理外设的请求,CPU暂停当前的主程序。

2. 什么叫矢量中断?8259A是如何提供中断类型号? 3. 8086/8088有几类中断源?各类中断源有何特点? 4. 8086/8088是如何处理中断源提出的中断申请? 5. 8259A在系统中起何作用?它是如何起到这些作用?

6. 简述在级联时当I/O提出中断申请后,从8259A与主8259A的申请、排优、响应及结束中断的全过程。

7. 8259A有哪些工作方式?各自有何特点? 8. 8259A有几种中断结束方式?各有何特点? 9. 8259A有几种优先权循环方式?各有何特点? 10. 8086/8088在得到中断矢量(中断类型号) 后,是如何找到中断服务程序地址?请举例说明。 11. 8259A有多少ICW和OCW?这些ICW与OCW各起什么作用? 12. 采用DMA方式为什么能实现高速传送?

13. DMAC在微机系统中起什么作用?它有哪两种工作状态?其工作特点如何?

14. 简述DMA方式传送的一般过程?8237A在微机系统中起什么作用?简述8237A的性能特点。

第十一章思考题与习题

l.编码键盘与非编码键盘有什么区别?主CPU对这两类键盘的操作有什么不同? 2.简述键盘行列扫描法的基本思想,消除按键抖动影响的方法有几种?

3. 用8255A的 A口和 B口分别作为某 PC系列微机系统中8位8段LED显示器的段码和位码的输出端口,要求按动态扫描、分时显示的原理循环显示“1927.8.l”8个字符,试设计硬件接口电路和显示驱动程序。

4. 发光二极管(LED)组成的8段数码显示器有哪两种接法?不同接法对字符的显示有什么影响? 5. 多位LED显示器采用动态扫描显示和静态显示(各位独立显示)有什么区别?

6. 习题图11-1所示为开关量检测与指示电路接口。假定任何时候至多只有一只开关闭合,试编写一程序段,显示闭合开关序号。若无开关闭合,则显示器不发亮。

7. 若习题图11-1为开关闭合个数指示电路接口,试编写程序统计闭合开关个数并显示于8段显示器上。

8. 习题图11-2为8段显示器接口,显示器采用共阳极接法,试编写程序段,使AL中的一位十六进制数(AL的高4位O000)显示于显示器上。输出锁存器地址为60H。

《微机原理与应用》复习资料

第一章:概述

1.计算机的基本组成 (P35-P36) 2.CPU的三组总线 AB,DB,CB

3.微计算机中数和字符的表示:真值,原码,反码,补码,BCD码,ASCII码

(1)给定一个十进制数,求其原码、反码、补码,例如:求-112的原码、反码、补码

(2)BCD码与ASCII码之间的转换方法(读程序或写程序) ADD AL,30H OR AL,30H SUB AL,30H

4.十进制,二进制,十六进制之间的转换(读程序或写程序) 5.补码的加减运算和对标志位的影响:CF,ZF,OF,SF

计算机中的计算方法,补码运算过程。 第二章:IA-32结构微处理器(*)

1.8086CPU的内部结构:EU,BIU(P43-P44) 2.8086CPU的逻辑地址和物理地址(P50-P51) 3.8086CPU的寄存器结构 (P49,P53-P54)

4.标志寄存器、常用的标志位以及对应的条件转移指令(P55-P56)

5.有符号数与无符号数运算对标志位的影响,以及溢出判断方法(双高位判断法) 第三章:8086指令系统(*) 1. 8086指令的寻址方式,能够列出所有的寻址方式并用指令举例(P24-25 P67-71) 2.掌握全部指令,特别掌握常用指令(功能、书写格式及操作数搭配、非法格式) 3.熟悉本章所讲例程序片段: 第四章:汇编语言程序设计(*) 1.伪操作符:PTR,OFFSET,SEG

2.伪指令:DB,DW,段定义(不包括选项),EQU 3.伪指令所产生数据对内存的占用。

4.掌握基本程序结构:顺序,分支,循环。

5.熟练掌握DOS功能调用(INT 21H),重点掌握01H、02H、07H、09H、0AH中断。 5.掌握汇编语言源程序的框架结构,熟悉本章所讲例程序,掌握基本编程方法。 6.能读懂汇编语言源程序,叙述其功能。

7.要求能够写一定功能的程序。汇编语言源程序在内存数据处理,代码转换,测试与控制程序的编写上有明显的优势。

例1:在显示器上循环显示数字?0123456789?50遍,最好显示一个字符后有延时 答:

例2:编程实现模拟计算机开机密码输入过程 即显示?Password:?,等待用户输入密码(1-6位),每输入一个字符显示一个‘*’,要求把输入的口令存储在buffer为起始地址的内存区域。(要求书写汇编语言源程序,下次实验中调试)

答:

例3:定义数据区BUFFER1(100个字节数),BUFFER2(100个字节数),BUFFER3(保留100个字节),实现BUFFER1区的第1个数与BUFFER2区的第100个数相加,BUFFER1区的第2个数与BUFFER2区的第99个数相加 ......直到实现BUFFER1区的第100个数与BUFFER2区的第1个数相加,且结果依次存储在BUFFER3区。 答:

例4:编程实现从键盘输入10个字母(?A-Z?或?a-z?中的任10个),并改变大小写换行显示,例如:输入?fHhFHhajAD?,显示; 答:

例5:编程实现两个四位BCD数相加并显示,最好两个数可以从键盘输入,结果显示出来,例如:INPUT: 1234+2345 OUTPUT:3579

第五章:处理器总线时序和系统总线

1.8086/8088有最小组态和最大组态的区别,8086/8088的区别。

2.基本概念:

指令周期—执行一条指令所需的时间。不同指令的指令周期是不同的。有些指令周期可划分为一个个总线周期。

例:最短指令: 寄←寄, 只需要2个时钟周期. 最长指令: 16位乘、除,约需200个时钟周期.

总线周期—每当CPU与存储器或I/O端口交换一个字节(或字、双字)数据所需的时间称之为一个总线周期。每个基本总线周期包含4个T状态。 T状态—就是一个时钟周期,是CPU处理动作的最小单位。 3.掌握8086/8088的引脚

最小组态和最大组态时的含义,掌握三总线分析方法。 4.能看懂存储器的读周期

5.为什么要插入Tw,以及如何处理这种情况。

解决快速CPU与任何速度的存储器的时序配合。若到时数据未准备好,可用一个产生READY信号的电路,使在T3和T4之间产生一个或几个Tw来解决时序配合(参考P172图5-8)

总线概念

6.了解一些总线的基本知识

第六章:存储器(*)

1. 存储器分类: RAM—SRAM,DRAM

(概念) ROM—掩膜ROM,PROM,EPROM,EEPROM

2.掌握SRAM和DRAM的工作原理,掌握为什么DRAM需要定时刷新。(P200-P201) 3.解存储器芯片容量表示法N X M 的含义,根据给定容量能得出芯片地址线条数和组成?单元存储体?所需的芯片数,以及根据容量要求,求出组成存储所需的总芯片数,

4.掌握线性选择和地址译码方法(线选、部分译码、全译码),以及产生地址的特点(比如是否连续等)优缺点。(P203、P208) 4.根据给定芯片,设计存储器,画出连线图。 分析设计的步骤 1.计算芯片数

2.分析使用芯片的地址线数和数据线数

3.分析目标存储器的地址线及数据线,设计片选逻辑 4.画电路图

例1:RAM的字、位扩展 用SRAM芯片(1Kx4bit)组成4KB存储器,地址总线为A15-A0(低)双向数据总线D7-D0 (低)读写信号R/W,试设计存储器并画出其与CPU的连接,要求分析芯片地址分配情况。

例2:容量不同的芯片的扩展

用SRAM芯片(1K*4、2K*8)组成4KB存储器,地址总线为A15-A0(低)双向数据总线

2

D7-D0 (低)读写信号R/W,试设计存储器并画出其与CPU的连接,要求分析芯片地址分配情况。

例3:RAM和ROM共存的扩展 用1K*4RAM、 2K*8RAM、芯片及2K*4ROM芯片组成5KB存储器,地址总线为A15-A0(低)双向数据总线D7-D0 (低)读写信号R/W,试设计存储器并画出其与CPU的连接,要求大容量芯片安排在地址低端,并分析芯片地址分配情况。

例4:已知地址分配设计存储器

存储器地址空间分配为:ROM区2000H-27FFH,RAM 区2800H-33FFH,选用芯片为EPROM2KB/片和RAM2KB/片、RAM1KB/片,地址总线为A15-A0(低)双向数据总线D7-D0 (低)读写信号R/W,试设计存储器并画出其与CPU的连接,要求分析芯片地址分配情况。

例5:限制(或保护)地址区间的存储器设计 主存储器64KB,其中高地址区2KB用于I/O空间,选用芯片8KB/片,地址总线为A15-A0(低)双向数据总线D7-D0 (低)读写信号R/W,试设计存储器并画出其与CPU的连接,要求分析芯片地址分配情况。

提示:用地址分析法避开I/O的2KB空间,设计片选逻辑

第七章:输入/输出

1. CPU詢与外设传送数据的方式:无条件传送,条件(查)传送,中断方式,DMA方式。

2. 重点掌握以下两种方式的电路结构和工作原理: 无条件传送 课件或实验5

詢条件(查)传送(P244-255 图7-9,到图7-14)。

第八章:中断系统

1.8086中断源:外部(INTR,NMI),内部(INT n ) (P126) 2.8086中断源(内部/外部)

3.掌握为什么要使用中断技术(P265),中断处理过程以及CPU进入中断服务程序的过程。(P265-266)

4.掌握中断向量表结构和功用(P285-286)。中断服务程序入口地址在中断向量表内的存放位置(中断类型码X 4)。 5.INTR,NMI 有何异同?

NMI:引入的是不可屏蔽中断请求,采用边沿触发,高电平有效,中断一旦产生立即锁存,到CPU执行完

当前指令后立即响应。该中断的服务子程序的入口地址从偏移地址为“2*4”的中断服务入口地址表中的到,并直接专区执行服务,CPU不进入INTA周期。主要处理系统的意外和故障,如电源掉电,存储器读写错或受到严重的干扰

INTR:引入的是可屏蔽中断请求,电平触发,高电平有效。此中断发生后,CPU在当前指令执行后,首先检测标志寄存器的IF标志位时候置“1”,若“IF=1”CPU才能响应这一类中断,并通过INTA管脚向产生中断请求的中断源发送两个中断响应负脉冲,若“IF=0”则屏蔽所有此类中断。此类中断要求提出中断的设备提供其长度为8

位的中断类型号,在受到第二个INTA负脉冲时送到数据总线即可。该中断的服务子程序的入口地址也通过从偏移地址为“中断类型号*4”的中断服务入口地址表中得到,然后再转去服务。

第九章:8253 1.8253的结构

(1)三个计数通道,控制口的选择工作方式的方法。 (2)重点掌握8255工作方式2、方式3。

2.熟悉8253控制字的使用,根据要求,编写8253初始化程序。

第十章:并行接口芯片 1.8255A并行接口

(1)A,B,C,控制口的选择(A1,A0,CS)方法。 (2)重点掌握8255工作方式0。

2.熟悉8255控制字的使用,根据要求,编写8255初始化程序。(如有此类试题,会给出控制字提示)。

3.重点掌握实验8的实验电路和程序的编写。

第十一章:串行接口芯片

1.掌握串行通行接口的基本概念

2.同步通信和异步通信,半双工和全双工(P322-324)。

3

3.了解串行接口标准EIA RS-232接口标准(P330)

题库模拟试题

一、填空题(10分)

1、典型中断处理程序结构应包括(关中断保留断点),保护现场,(给出中断入口地址) ,执行中断服务程序,(关中断),恢复现场,(开放中断) ,返回等部分,

2、按照总线的规模、用途及其应用场合,总线分为(片内总线)(芯片总线)(系统总线) 注:系统总线又分为片内和片外

3、RS-232C关于机械特性的要求,规定使用一个(9)根插针的标准连接器。

4、CPU与I/O接口间传送的信息一般包括(数据信息)(状态信息)(控制信息)3种类型。3类信息的传送方向分别应是(从哪到哪)(互相之间传送的信息)(CPU向外部设备发送控制命令的信息)(外部设备向CPU提供外设当前工作状态的信息)。

5、输入/输出端口有2种编址方法,即I/O端口与存储器单元统一编址和I/O端口单独编址。前一种编址的主要优点是(CPU对I/O端口访问灵活,方便,有利于提高端口数

据处理速度)和(减小有效存储空间)。

6、ISA是Intel公司为其(8)位微机系统设计的总线,它也能和(16)位微机系统兼容。

7、8086/8088中,一个最基本的总线周期由(4)时钟周期(T状态)组成,在T1状态,CPU往总线发出(地址)信息。

二、选择题(10分)

1、 有关RS-232C的技术,下列哪个是错的?( C) A.可连接两部个人计算机,进行数据传输。 B.属于接口的硬件规范 C.为并行式传送

D.属于美国的EIA规范

2、8088系统中外围设备请求总线控制权是通过( D)进行的。外围设备可屏蔽中断是通过(B)进行的。

A、NMI B、INTR C、TEST D、HOLD

3、8086通过中断控制器最多可望管理外部中断的个数为(C )。 A、8 B、64 C、256 D、不受限制

4、CPU的ALU的主要完成( D)。

A、 地址指针的变换 B、中断管理 C、产生各种时序 D、算术、逻辑运算及移位操作

5、下列指令中不会改变PC寄存器的内容的是(A )。 A、MOV B、JMP C、CALL D、RET

三.读程序,写结果(20分)

28. 若一个程序段开始执行之前,(CS)=33AOH,(IP)=0130H,试问

该程序段启动执行指令的实际地址是什么(33A00H+0130H=33B30H)? 29. LEA:(目标地址传送指令)将一个近地址指针写入到指定的寄

存器。格式:LEA reg16,mem16其中reg16必须是一个16位通用寄存器,mem16必须是一个存储器,执行这个指令后,就将mem16所指的16位偏移地址传送reg16中。

比如: LEA AX,BUF就是将存储器中BUF所指的地址传送给AX.区别MOV传送指令:MOV传送的是地址所指的内容,而LEA只是地址。

30. 在汇编语言中,HLT是处理器控制指令,功能为:执行操作后,使机

器暂停工作,使处理器CPU处于停机状态,以等待一次外部中断到来,中断结束后,程序继续执行,CPU继续工作

31. 指令INC BYTE PTR[SI+3]中内存操作数的所在地址=(DS)+(SI)+3; 32. 33.

1、 CLC (清CF指令,CF=0 另外STC置位CF=1 CMC将CF取反) MOV AX,5678H MOV CL,3 RCL AX,CL

执行以上程序序列后,AX=(B3C1H)CF=(0)。

2、设TABLE DW 23ADH,56DAH,0DF66H,665DH,767FH ENTRY DW 3

若执行下列指令:MOV BX,OFFSET TABLE ADD BX,ENTRY MOV AX,[BX]

结果,AX=___________(用十六进制表示) 3、data segment number1 dw 3743h

number2 db 42h,0ffh,65h,32h data ends

执行 mov si,offset number1后,si=__0000__h 执行 mov al,[si]

and al,number2+2后,al=__20__h

执行 (1)mov si,offset number1 (2)mov al,[si+1]后,al=____37__h

4

4.(A) (B)

MOV CX,77H MOV CX,77H MOV BX,88H MOV BX,88H

NEXT: MOV AX,4500H NEXT: MOV AX,4500H DEC BX DEC BX

LOOP NEXT LOOPNZ NEXT

问程序段A,B执行中各循环多少次?

程序段A循环___119___次,程序段B循环__1___次。 四、应用简答(30分)

1、8088的寻址方式有哪些,它们各有何特点,分别举例说明。 答:

1,立即寻址方式 :其所提供的操作数直接包含在指令中,与操作码一起放在代码段存储器的区域中,这个操作数称为立即数 eg: MOV AL,57H。

2,寄存器寻址方式:要寻找的操作数存放在CPU内部某个寄存器中,指令中直接使用寄存器名 eg.MOV AX,BX。3,直接寻址方式:其源操作数为16位偏移地址(有直接地址和标号地址两种形式)eg.MOV AX,[2000H]。

4,寄存器间接寻址方式:操作数存放在存储器中,操作数的16位段内偏移地址放在SI,DI和BP,BX中的一个寄存器eg.MOV AL,[SI]。

5,寄存器相对寻址方式:存放实际操作数的存储器地址值为指令中的变址寄存器SI,DI和BP,BX中的一个寄存器的内容与指令中给定的相对位置之和eg.MOV AX,[SI+1000H]。

6,基址变址寻址方式:BX和BP作为基址寄存器,SI和DI作为变址寄存器,将这两种寄存器联合起来进行的寻址eg.MOV AX,[BX+DI]。

7,相对基址变址寻址方式 eg.MOV AX,DISP[BX+DI]。 8,隐含寻址方式

2、A:8088的中断系统是如何构成的,B:举例说明中断向量表的作用,C:描述中断响应及处理过程,D:为什么采用中断技术。

答:A: 中断系统是由系统响应及中断处理过程组成

B: 中断向量表的作用:8086/8088在内存的00000H---003FFH的1K空间建立了中断向量表,可

以容纳256个中断向量(或256个中断类型)每个中断向量占用4个字节,在这4个字节中,包含着这个中断向量(或这种中断类型)的服务程序的入口地址,其中前两个字节为服务程序的IP,后两个字节为服务程序的CS,例如:INT 25H,在内存的00094H---00095H保存该中断服务程序入口地址IP,00096H---00097H保存该中断服务程序入口地址CS。(图示表达此意思即可)

C: 中断响应及处理过程6步:关中断保留断点保护现场给出中断入口,转入相应的中断服务程序

恢复现场开中断与返回

顺序:中断源识别---中断优先级判断---中断嵌套管理---CPU中断响应---中断服务---中断返回

D: 当CPU与外设工作不同步时,很难确保CPU在对外设进行读写操作时,外设一定是准备好的。为

确保数据的正确传输,CPU只能主动的查询外设以确定其工作状态,但这样会使CPU效率降低,为解决上述问题,引入中断技术

五、编写汇编语言源程序(15分)

编程实现从键盘键入20个以内的字符,并换行显示。 六、综合应用(15分)

8086/8088采用最小模式,用 4KB ROM和 2KX4 RAM和 1KX4 RAM构成7KB存储器,地址总线为A15-A0(低),试画出系统连线图(包括与CPU的连接),写出各芯片组的地址分配情况及片选逻辑。

5

《微机原理与应用知识体系》

汇编语言源程序

(程序结构,四个段的定义,内存数据操作,代码的转换,DOS中断调用,测试与控制I/O端口的方法)

8086指令系统

六类指令(功能,书写格式,非法格式和搭配)

寻址方式

(四种大类寻址方式立即,寄存器,直接,间接)

8086/8088微机系统的内存段式管理方法

(物理地址=段地址*10H+偏移地址)

微机的冯.诺依曼五官结构;以及8086/8088的积存器结构(AX,BX,CX,DX,BP,SP,SI,

DI,CS,DS,ES,SS,IP,FLAG)

计算机系统中的数和编码

数制之间的转换(真值,原码,反码,补码,BCD码,ASCII码)

6

串行接口

(基本概念,同步通信和异步通信,半双工和全双工,RS-232串行接口的标准认识)

定时器8253

(8253功能,8253的编程结构,8253的控制字格式,8253的电路构成方法和编程方

法)

并行接口8255

(并行接口8255功能,8255的编程结构,8255的控制字格式,8255的电路构成方法和

编程方法)

中断技术

(产生和使用中断技术的原因,CPU中断处理过程,中断向量表的作用,8086中断系统的构成)

输入与输出

(I/O寻址方式,CPU与外设之间的四种传送方式以及特点) 主存储器

(主存储器的分类,SRAM和DRAM的工作原理,DRAM的定时刷新,线选、全译码、部分译码法的区别和特点,存储器的扩展设计与分析)

处理器总线与时序

(8086/8088的引脚,两种工作组态,时序的认识,Tw的使用) 7

__

微机的基础知识

1. 微机的基本计时有:指令周期、总线周期、时钟周期。其中时

钟周期是最小的计时单位T,为微机的主频倒数。CPU每访问一次总线所花的时间称为总线周期,一个基本的总线周期由四个T周期构成。

2. 中断请求过程:中断请求、中断排队、中断响应、中断处理、

中断返回。

3. 若设某容量为2k字节的RAM起始地址为1000H,则其终止地

址为17FFH

4. CPU马上执行中断的条件是一条只指令执行完之后 5. 8086/8088复位后从FFFF0H地址开始执行程序 6. 8086的内存空间与IO空间是单独编址的,分别为1MB和64KB 7. 8086的基址加变址寻址方式中,基址寄存器可以是BX,BP;变

址寄存器可以是SI,DI

8. 8086\\88提供接受外部中断请求信号的引脚是NMI(非屏蔽中

断请求)和INTR(可屏蔽中断请求) 9. 8288为总线控制器,运用于最大模式。

10. 8086\\88在内存的00000H---003FFH的1K空间建立了中断向量

表,可容纳256个中断向量,每个向量占4个字节,前两个字节为服务程序的IP,后两个字节为服务程序的CS. 11. 插入Tw的作用:为了解决快速CPU与任何速度的存储器或IO

设备之间传递速度的时序配合 12. 计算机内部结构:EU单元中包括4个16位通用寄存器,AX,BX,CX,DX,AX为累加器,BX为基

址寄存器,CX为计数寄存器,DX为数据寄存器。2个16位指针寄存器SP和BP,SP用来存放现行堆栈

段内偏移地址,并具有步进加1和减1的功能,称为堆栈指针,BP称为基址指针。2个变址寄存器为SI和DI,SI用来寄放源操作数段内偏移量,DI用来存放目标数段内偏移量。BIU单元有4个段寄存器CS,DS,SS和ES,CS用来存放当前代码段的基地址,DS用来存放当前数据段的基地址,SS用来存放堆栈段的基地址,ES用来存放当前附加段的基地址。

13. 判断下列指令正误,如果错误请指出原因。

(1) MOV CL,259 × 数据不匹配 (2) XOR BL,BH √

(3) ADD 100,AL × 立即数不能为目标操作数 (4) MOV SS,2200H × 立即数不能直接送基寄存器 (5) POP CS × POP 不能对CS (6) XCHG CX,DX √ (7) IN AL,260H × 端口地址超过256, 应用DX间接寻址 (8) MOV [BP+SI],[BX] × 源和目标操作数不能同时为存储器操作数 (9) LEA BX,AX × 源操作数应为存储器操作数 (10) MOV AX,10H[BX] √

14. 8088 CPU有20根地址线,8根数据线,它最大直接寻址范围是

1MB,一次对外数据传送8BIT二进制数。

15. 8086/88 微处理器内部有哪些寄存器?其主要作用是什么? 答:8086 / 8088 微处理器内部有:AX、BX、CX、DX、SI、

DI、CS、DS、SS、ES、IP、SP、FR、BP存放数据、偏移地址、段基址以及标志。

16. 若(BX)=1123H,(SI)=1968H,位移量=0313H,(DS)=1971H,试确定

由这些寄存器和下列寻址方式产生的有效地址和物理地址:

答案:

EA 物址

(1) 直接寻址; 0313H 19A23H (2) 用BX的寄存器间接寻址; 1123H 1A833H (3) 用BX的寄存器相对寻址; 1436H 1AB46H (4) 用BX和SI的基址变址寻址; 2A8BH 1C19BH

(5) 用BX和SI的相对基址加变址寻址。 2D9EH 1C4AEH

17. 掌握线性选择和地址译码法(线选,部分译码,全译码)以及产生地址的特点(是否连续)优缺点

片选控制方法:1,线选法:除将低位地址直接接到片内地址线外,将其余的高位地址线分别直接作为各个存储器芯片的片选控制信号,而不需要复杂的逻辑译码电路(这些片选地址线在每次寻址时只能有一位有效,不能同时有多位有效)节省译码电路,但是必须要注意他们的地址分布,以及各自的地址重叠区,且不连续2,部分译码法:存储器芯片的地址线与微机系统总线的地址线依次相接后,剩余的高位地址仅用一部分参加译码,缺点:使存储器芯片的地址空间有重叠,造成了存储器空间的资源浪费,优点:译码电路简单,适用于大容量的RAM的连接,连接是连续的3,全译码法:M芯片的地址线和微机系统的地址线依次相接后,剩余的高位地址线全部参加译码。优点:M芯片上的地址空间唯一确定,连接是连续的。缺点:译码电路相对复杂

18. 8086\\88中断分为:硬中断和软中断; 中断向量:中断服务程

序的入口地址 中断向量表:中断服务程序入口地址的总和,放在存储器的某一区域,共256级,类型号0-255,在RAM区的起始段0000H~003FH的1K内。

19. 8086系统可访问的内存空间范围是00000H~FFFFFH

20. 8086的标志寄存器共有_9_个标志位,分为_6_个_状态_标志

位和_3_个_控制_标志位。

21. 8086有两种外部中断请求线,它们分别是_INTR_和_NMI_。 22. 逻辑地址为1000H:0230H时,其物理地址是_10230H_,段地址

是_1000H_,偏移量是_0230H_。

23. 时钟周期是指_CPU基本时间计量单位_,总线周期是指_一次总线操作时间_,总线操作是指_CPU经外部总线对存储器或I/O端口进行一次信息输入和输出的过程_。 24. 8086的最大工作模式(8086、8087和8089通过总线控制器8288

产生对总线的控制信号)和最小工作方式(8086直接产生总线控制信号)的主要区别是什么?他们分别应用在何种场合(多处理器和单处理器系统)?

25. .I/O端口有哪两种编址方式(统一编址和独立编址),8086的最

大I/O寻址空间是多少(64KB)?

26. 什么是逻辑地址(无符号32位二进制数),它由哪两部分组成

(段地址和偏移地址)? 8086的物理地址是如何形成的(物理地址=段地址*10H+偏移地址)

27. 有一个由10个字组成的数据区,其起始地址为1200H:0120H。

试写出该数据区的首末存储单元的实际地址(12120H~12120H+10*2-1=12133H)。

28. 若一个程序段开始执行之前,(CS)=33AOH,(IP)=0130H,试问

该程序段启动执行指令的实际地址是什么(33A00H+0130H=33B30H)? 29. LEA:(目标地址传送指令)将一个近地址指针写入到指定的寄

存器。格式:LEA reg16,mem16其中reg16必须是一个16位通用寄存器,mem16必须是一个存储器,执行这个指令后,就将mem16所指的16位偏移地址传送reg16中。

比如: LEA AX,BUF就是将存储器中BUF所指的地址传送给AX.区别MOV传送指令:MOV传送的是地址所指的内容,而LEA只是地址。

30. 在汇编语言中,HLT是处理器控制指令,功能为:执行操作后,使机

器暂停工作,使处理器CPU处于停机状态,以等待一次外部中断到来,中断结束后,程序继续执行,CPU继续工作

31. 指令INC BYTE PTR[SI+3]中内存操作数的所在地址=(DS)+(SI)+3; 32. 33.

本文来源:https://www.bwwdw.com/article/cxqv.html

Top