1. 微型计算机系统的主要性能指标有:字长 、 存储容量 、 指令系统 、 运算速度 、 系统配置。
2. 微型计算机系统硬件包括: 运算器 、 控制器 、 存储器 、 输入设备 、 输出设备 等部件,这些部件通过 数据总线 、 地址总线 、 控制总线 相连接。
3. 8086的标志寄存器中控制标志有: IF 、 DF 、 TF 。
4. 8086的标志寄存器中状态标志有: CF 、 AF 、 ZF 、 PF 、 SF 、 OF 。
5. 随机存储器RAM可分为 双极型 和 MOS型 两大类。
6. 只读存储器ROM可分为: ROM 、 PROM 、 EPROM 、 EEPROM 。
7. 8255A是 可编程并行输入/输出接口 ,它有 3 个 8 位端口, 3 种工作方式。
8. 8253是 可编程定时器/计数器 ,它有 3 个计数通道, 6 种工作方式。
9. 串行通信中的数据传送模式有: 单工 , 半双工 , 全双工 。
10. 串行通信中最基本的通信方式: 异步通信 , 同步通信 。
11. ADC0809有 8 个模拟量输入信号,可用 3 位地址信号控制,有 8 位数据输出。
12. DAC0832是 可编程数/模转换器 ,有 8 位数字量输入信号, 2 个模拟量输出信号,可设置 3 种工作方式。
13. 8259A是 可编程中断控制器 ,它有 4 个初始化命令字, 3 个操作命令字。
14.汇编语言指令语句格式:
[标号:] 操作码助记符 [操作数1] [,操作数2] [;注释]
15. CPU和输入/输出设备之间传送的信息有 数据信息 、 状态信息 、 控制信息 。
16. 串行通信中信号传输时的调制解调方式有: 调频 、 调幅 、 调相 。
17. DAC0832可工作在 直通 、 单缓冲 、 双缓冲 三种方式。
18.地址译码的方式有 线译码 、 部分译码 、 全译码 三种。
19.RS-232C串行通信接口TXD和RXD信号的电气性能中“1”= -3~-25V ;“0”= +3~+25V 。
20.8237是 可编程DMA控制器 ,它有 4个独立的DMA 通道。
21. 8253每个计数器有 2 种计数方式,计数范围分别为: BCD 0~9999 ; 二进制 0~FFFFH 。
22.TTL电平经 1488 转换为RS-232C电平,RS-232C电平经 1489 转换为TTL电平。
23. 8086处理器的基本数据类型是 字节 、 字 、 双字 。
24. 8086指令的操作数寻址方式有: 立即数 、 寄存器 、 存储单元 、 I/O端口 。
25.常见A/D转换器的类型有: 并行比较型 、 双积分型 、 逐次比较型 。
26. 一个计算机系统所具有的物理地址空间的大小是由 地址总线的宽度 决定的,8086系统的物理空间的地址为 1M 。
27. 8086EU的主要部件有 算术逻辑单元寄存器组 ,主要完成 编码 和 运算 工作。
28. 堆栈段的基值存入 SS 寄存器,数据段的基值存入 DS 寄存器,代码段的基值存于 CS 寄存器,扩展段的基值存入 ES 寄存器。
29. 8086CPU引脚中,用来控制8086工作方式的引脚为 MN/MX 。
30. 8086CPU引脚中BP默认的段寄存器是(SS),BX默认的段存器是(DS)。
31. 8086CPU所访问的存储器为 奇区 和 偶区 ,各区的数据总线分别对应CPU数据在线的 高八位 和 低八位 。
32. 设双字数据1A3B5C8DH存于首地址为30000H的数据区中,则该数据的字节从该处起按__地址递增___的顺序存放,顺序依次为__30000H = 1A__ , __30001H = 3B__ , __30002H = 5C__ , __30003H = 8D__。
33. 执行CLD指令后,串操作地址采用按__地址递增__方向修改。
34. 在半导体存储器中,RAM指的是 随机(易失性)存储器 ,他可读可写,但断电后信息一般会 丢失 ;而ROM指的是 只读(非易失性)存储器 ,断电后信息 可保留 。
35. 存储结构为8K*8位的EPROM芯片2764,共有 8个 个数据引脚, 13个 个地址引脚。用他组成64KB的ROM存储区共需 8 片芯片。
36. 在8086CPU系统中,假设地址总线A15~A19输出01001时译码电路产生一个有效的片选信号。这个片选信号将占有主存从 48000H 到 4FFFFH的物理地址范围,共有 容量 32KB 。
37. 单片8259A可管理 8 级可屏蔽中断,6片级联最多可管理 43 级。
38. 8086CPU的中断系统中共有 256 个中断类型码,与中断类型码12对应的向量地址为 48 ,系统将在内存地址的 00000H~003FFH 处,设置全部中断类型的中断向量。
39. 单片8237A有 4 个DMA通道,5片8237A构成的二级DMA系统,可提供 16 个DMA通道。
40.中断处理的基本过程包括_中断请求_、_中断判优_、_中断响应_、_中断处理_和_中断返回_。
四、解释题
1. 指令——计算机能够识别和执行的基本操作命令
2. 指令系统——计算机所能执行的全部指令的集合。
3. 程序——为实现某一任务所作的指令(语句)的有序集合。
4. 堆栈——一个按照后进先出原则组织的一段内存区域。
5. 并行通信——利用多根传输线将多位数据的各位同时传送。
6. 串行通信——利用一条传输线将数据一位一位按顺序分时传送。
7. 串行异步通信——收、发双方在约定的波特率下,不需要有严格的同步,允许有相对的迟延,既两端的频率差别在1/10以内。
8. 串行同步通信——是指在约定的波特率下,发送端和接收端的频率保持一致(同步),收、发双方的每一位数据均保持同步。
9. 中断源——引起中断的原因,或者说能发出中断请求的来源。
10. EPROM——可用紫外线擦除信息、多次改写的只读存储器。
11.位(bit)—— 1个二进制位,计算机中信息存储的最小单位。
12.字节(Byte)——相邻的8个二进制位,存储器的最小单位。
13.字(Word)——计算机处理数据的最小单位。
14.指令操作码——表示计算机执行什么操作。
15.指令操作数——表示参加操作的数或操作数所在的地址。
16.机器语言——指令机器码编制的源程序。
17.汇编语言——助记符编制的源程序。
18. 8255A中的STB(非)——选通输入,低电平有效。用来将外设输入的数据送入8255A的输入缓冲器。
19.8255A中的IBF——输入缓冲器满,高电平有效输出。作为STB的回答信号,
20.8255A中的OBF(非)——输出缓冲器满,低电平有效。当CPU已将要输出的数据送入8255A时有效,用来通知外设可以从8255A取数。
21. 8255A中的ACK(非)——响应信号,低电平有效。作为对OBF(非)的响应信号,表示外设已将数据从8255A的输出缓冲器中取走。
22.8255A中INTR——中断请求信号,高电平有效。可作为CPU的查询信号,或作为向CPU发送的中断请求信号。
23.8255A中INTE——中断允许,由C口的相应位控制。
24.波特率——单位时间内线路状态变化(电信号变化)的数目。 单位时间里传送的数据位数,即:1波特率 = 1bit/s = /bps,波特率的倒数即为每位所需的时间。
1、微处理器、微型计算机和微型计算机系统三者之间有何不同?
答:微处理器——运算器+控制器+内部总线,CPU,MPU;
微型计算机——微处理器+存储器+输入/输出接口+系统总线,称为计算机的硬件;微型计算机系统——微型计算机+外围设备+系统软件。
2、在8086总线周期的T1、T2、T3、T4状态,CPU分别执行什么动作?
答:T1周期:8086发出20位地址信号,同时送出地址锁存信号ALE;
T2周期:8086开始执行数据传送;
T3周期:下降沿采样READY,若有效则T3结束后进入T4 ,若无效则插入等待周期TW,在TW继续采样READY,直至其变为有效后再进入T4 ;
T4周期:8086完成数据传送。
3、指示性语句有哪几种?
答:符号定义、数据定义、段定义、过程定义、结束语句。
4、总线的分类有哪几种?
答:按位置分:片内总线、片总线(局部总线)、内总线(系统总线)、外总线(通信总线)
按功能分:数据总线、地址总线、控制总线、电源和地线、备用线
5、总线的特性
答:物理特性——物理连接方式,根数、插头、引脚排列
功能特性——每一根线的功能
电气特性——每一根线信号传送方向、有效电平范围
时间特性——每一根线的时序
6.常用总线类型
答:ISA——工业标准体系结构总线
PCI——外部设备互连总线
USB——通用串行接口总线
7. 8086CPU怎样解决地址线和数据线复用问题?ALE信号何时有效?
答:采用分时复用的方式,在总线周期的T1周期ALE信号有效,传送地址信号,在总线周期的T1周期以后,ALE信号失效,传送数据信号。
8.8086的基本总线周期有哪几种?
答:存储器读或写; I/O端口读或写;中断响应周期;总线保持请求与保持响应周期。
9.RAM存储器与CPU连接时应注意的问题。
答:CPU总线的负载能力; CPU的时序和存储器的存取速度之间的配合;存储器的地址分配和选片;
控制信号的连接。
10.CPU与外设的数据传送方式。
答:程序控制传送方式、中断传送方式、直接数据通道传送DMA
11. 如果用74LS273作输入接口,是否可行?说明原因;用74LS244作输出接口,是否可行?说明原因。
答:否。74LS244是三态门构成的缓冲器,只能用于输入信号的缓冲操作;74LS273是由D触发器和三态门构成的锁存器,只能用于输出信号的锁存,所以不能交换使用。
12. 8086的总线接口单元(BIU)由哪几部分组成?
答:段寄存器CS,DS,SS,ES;指令指针寄存器IP;指令队列缓冲器;加法器和内部总线组成。
13.8086的执行单元(EU)由哪几部分组成?
答:算术逻辑单元(ALU);通用寄存器AX、BX、CX、DX;可分为8个8位的寄存器(AL、AH;BL、BH;CL、CH;DL、DH)使用;4个专用寄存器:SP、BP、DI、SI;状态标志寄存器FLAGS和内部总线组成。
19.8255A的方式.1有什么特点?
答:方式1是一种选通I/O方式,A口和B口仍作为两个独立的8位I/O数据通道,可单独连接外设,通过编程分别设置它们为输入或输出。而C口则要有6位(分成两个3位)分别作为A口和B口的应答联络线,其余2位仍可工作在方式0,可通过编程设置为基本输入或输出。
20.8255A的方式2有什么特点?
答:双向选通I/O方式,只有A口才有此方式。此时,端口C有5根线PC7~PC3用作A口的应答联络信号,其余3根线可用作方式0,也可用作B口方式1的应答联络线。方式2:就是方式1的输入与输出方式的组合,各应答信号的功能也相同。而C口余下的PC0~PC2可以充当B 口方式1的应答线,若B口不用或工作于方式0,则这三条线也可工作于方式0。
21.试述D/A转换器的主要技术指标。
答:① 分辨率(Resolution):单位数字量所对应模拟量增量。即D/A转换器模拟输出电压能够被分离的等级数。
② 精度(Accuracy):分绝对精度(Absolute Accuracy)和相对精度(Relative Accuracy)
绝对精度(绝对误差)指的是在数字输入端加有给定的代码时,在输出端实际测得的模拟输出值(电压或电流)与应有的理想输出值之差。它是由D/A的增益误差、零点误差、线性误差和噪声等综合引起的。
相对精度指的是满量程值校准以后,任一数字输入的模拟输出与它的理论值之差。
③ 建立时间(Settling Time):在数字输入端发生满量程码的变化以后,D/A的模拟输出达到稳定时,所需要的时间。
25. 80806CPU中,怎样才能找到下一条要执行的指令?
答:要找到下一条要执行的指令,关键是计算下一条要实行指令所在存储器单元的物理地址,8086CPU系统中,指令存放在代码段CS中,指令在段内的偏移量为指令指针IP的值,因此下一条要执行的指令的物理地址为16*(CS)+IP。
26. 8086CPU复位后,存储器和指令队列处于什么状态?试求出程序执行的起始地址。
答:复位后,8086处于初始化状态。此时,除CS寄存器为FFFFH外,其他所有寄存器全部清0,指令队列亦清空。程序执行地址为CS:IP,犹豫IP等于0,程序执行的起始地址为FFFFH:0,即物理地址为FFFF0H。
32. 中断服务程序结束时,用RET指令代替IRET指令能否返回主程序?这样做存在什么问题?
RET应该可以使中断服务程序返回主程序,但因为RET是子程序返回指令,他只从堆栈中恢复CS和IP,而不能使状态字PSW得以恢复,所以不能使断点完全恢复,对原程序的继续执行造成不良影响。
33. 微型计算机系统中CPU与外设之间有哪三种基本数据输入输出方式?试分析它们各自优缺点。
答 1)程序查询的输入/输出。优点是能够保证CPU与外设之间的协调同步工作,硬、软件暗淡。缺点是把大量的CPU时间都浪费在查询外设是否“准备就绪”上。
2)程序中断输入/输出方式。优点是只有外设发出中断请求信号时,CPU才产生中断,进行输入/输出操作,实时性比较好,系统效率高。缺点是每进行一次数据传送都要中断一次CPU,要执行保护现场,恢复现场等中断处理程序,浪费了很多不必要的CPU时间。
3)直接存储存取方式(DMA)。优点是速度快,数据传送速度只受存储器存取时间的限制,是三种方法中最快的。缺点是需要专用的芯片——DMA控制器来加以控制管理,硬件连线也比较复杂。
六、程序设计题
1.阅读下列程序,写出各语句的注释,说明本程序功能并写出运行结果。(10分)
MOV AL, 00H ;设置计数初值
AGAIN:OUT 80H, AL ;输出到端口
CALL DELAY ;调用延时子程序
INC AL ;计数值递增
JMP AGAIN ;返回,再次输出
DELAY:MOV CX,10 ;设置延时时间常数
DEALY1:LOOP DELAY1 ;循环,实现延时
RET ;延时子程序返回
本程序功能:在相应输出端口输出一个数据序列,00H递增至FFH,返回00H再次递增至FFH,循环。
若输出至DAC,则可输出一个锯齿波信号。
4. 阅读下列程序,写出各语句的注释,说明本程序功能并写出运行结果。 (10分)
MOV AH, 0 ;累加器高位清零
MOV AL, 10 ;累加器低位赋初值10
SAL AX, 1 ;左移1位,(初值×2)
MOV BX, AX ;(初值×2)送入BX保存
MOV CL, 2 ;计数器赋值为2
SAL AX, CL ;左移2次,(初值×2)×2×2
ADD AX,BX ;累加,(初值×2)×2×2+(初值×2)
说明:本程序功能为将累加器中数值×10,运行结果是:累加器AX中为100.
5. 自BLOCK开始的内存缓存区中,有100个8位无符号数,求出其中最大值,存入MAX单元。
MOV BX, OFFSET BLOCK ;设置地址指针
MOV AX, [BX] ;取首个数据
INC BX ;修改指针,指向下一个数据
MOV CX, 99 ;设置计数器,比较次数为N-1
AGAIN: CMP AX, [BX] ;比较两个数
JNC NEXT ;无借位即AX中为大数
MOV AX, [BX] ;有借位即AX中为小数,替换为大数
NEXT: INC BX ;修改指针,指向下一个数据
DEC CX ;修改计数器
JNZ AGAIN ;计数器≠0返回继续比较
MOV MAX, AX ;计数器=0存入最大值
HLT
6. 自BLOCK开始的内存缓存区中,有100个8位无符号数,求出其中最小值,存入MIN单元。
MOV BX, OFFSET BLOCK ;设置地址指针
MOV AX, [BX] ;取首个数据
INC BX ;修改指针,指向下一个数据
MOV CX, 99 ;设置计数器,比较次数为N-1
AGAIN: CMP AX, [BX] ;比较两个数
JC NEXT ;有借位即AX中为小数
MOV AX, [BX] ;无借位即AX中为大数,替换为小数
NEXT: INC BX ;修改指针,指向下一个数据
DEC CX ;修改计数器
JNZ AGAIN ;计数器≠0返回继续比较
MOV MIN, AX ;计数器=0存入最小值
HLT
7.判断下列指令的对错,如有错,请说明原因。
MOV AL, BX ;错,数据类型不匹配
MOV AL, CL ;对,寄存器传送
INC [BX] ;对,存储单元内容加1
MOV 5, AL ;错,不能给立即数赋值
MOV [BX], [SI] ;错,不能在存储单元间传送
MOV BL, F5H ;对
MOV DX, 2000H ;对
POSH CS ;对,代码段寄存器内容可以保存
POP CS ;错,不能对代码段寄存器赋值
XCHG CS, AX ;错,不能对代码段寄存器赋值
XCHG BX, IP ;错,不能对指令指针寄存器赋值
IN BX, DX ;错,只能输入到累加器
MOV BYTE[BX], 1000 ;错,字节数的最大值只能到255
8.设某一数组的长度为N,各元素均为字数据,试编制一个程序使该数组中的数据按照从小到大的次序排列。
(1)明确任务,确定算法。
设该数组存放在以DATA开始的存储区中,采用冒泡排序算法。从第一个数据开始相邻的数进行比较,若次序不对,两数交换位置。第一遍比较(N-1)次后,最后的数已到了数组的尾部,第二遍仅需比较(N-2)次就够了,共有两重循环。这是一个典型的两重循环程序设计。
(2)绘流程图
(3)根据流程图编写汇编语言程序
ADATA SEGMENT
DATA DW N DPU(?)
ADATA ENDS
ACODE SEGMENT
ASSUME CS:ACODE,DS:ADATA
START: MOV AX,ADATA
MOV DS,AX
MOV BX,0
MOV CX,N ;设计数器CX,内循环次数
DEC CX
LOP1: MOV DX,CX ;设计数器DX,外循环次数
LOP2: MOV AX,DATA[BX] ;取相邻两数
CMP AX,DATA[BX+2] ;若次序符合,则不交换
JBE CONTI
XCHG AX,DATA[BX+2] ;否则两数交换
MOV DATA[BX],AX
CONTI: ADD BX,2
LOOP LOP2 ;内循环
MOV CX,DX ;外循环次数→CX
MOV BX,0 ;地址返回第一个数据
LOOP LOP1 ;外循环
MOV AH,4CH ;返回DOS
INT 21H
ACODE ENDS
END START
解 首先建立0~15的平方表TABQ,然后查得平方值。
DATA SEGMENT
TABQ DB 0, 1, 4, 9, 16, 25, 36, 49, 64
DB 81, 100, 121, 144, 169, 196, 225 ; 建平方表
DTX DB?
DTY DB?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START: MOV AX, DATA
MOV DX,AX
MOV SI, OFFSET TABQ ; 取平方表起始地址
MOV AH, 0
MOV AL, DTX ; 取值
ADD SI, AX ; 计算表地址
MOV AL, [SI] ; 求平方值
MOV DTY, AL ; 把平方值保存到DTY单元
INT 20H
CODE ENDS
END START
11.填空题
设某接口的状态端口地址为100H,状态位从D7位输入,数据端口的地址为200H,输入数据的总字节数为200,输入数据段放在内存单元的首地址为300,查询式输入数据的程序段如下。
MOV SI, OFFSET BUFF
MOV CX, 200
INPUT:IN AL, 100H
TEST AL, 80H
JZ INPUT
IN AL, 200H
MOV [SI],AL
INC SI
LOOP INPUT