微机原理与接口技术(楼顺天第二版)第七章习题解答
微机原理与接口技术_楼顺天版_课后题答案

微机原理与接口技术_楼顺天版_课后题答案本页仅作为文档封面,使用时可以删除This document is for reference only-rar21year.March微机原理与接口技术楼顺天周佳社编著科学出版社找了好久,终于在期末从老师那儿弄了一份,希望对大家有用!5章习题1.微处理器的外部结构表现为数量有限的输入输出引脚,它们构成了微处理器级总线。
2.微处理器级总线经过形成电路之后形成了系统级总线。
3.简述总线的定义及在计算机系统中采用标准化总线的优点。
答:总线是计算机系统中模块(或子系统)之间传输数据、地址和控制信号的公共通道,它是一组公用导线,是计算机系统的重要组成部分。
采用标准化总线的优点是:1)简化软、硬件设计。
2)简化系统结构。
3)易于系统扩展。
4)便于系统更新。
5)便于调试和维修。
4.在微型计算机应用系统中,按功能层次可以把总线分成哪几类。
答:在微型计算机应用系统中,按功能层次可以把总线分成:片内总线、元件级总线、系统总线和通信总线。
5.简述RESET信号的有效形式和系统复位后的启动地址。
答:RESET为系统复位信号,高电平有效,其有效信号至少要保持四个时钟周期,且复位信号上升沿要与CLK下降沿同步。
系统复位后的启动地址为0FFFF0H。
即:(CS)=0FFFFH,(IP)=0000H。
M/信号在访问存储器时为高电平,访问I/O端口时为低电6.8086 CPU的IO平。
7.在8086系统总线结构中,为什么要有地址锁存器?答:8086CPU有20条地址线和16条数据线,为了减少引脚,采用了分时复用,共占了20条引脚。
这20条引脚在总线周期的T1状态输出地址。
为了使地址信息在总线周期的其他T状态仍保持有效,总线控制逻辑必须有一个地址锁存器,把T1状态输出的20位地址信息进行锁存。
8. 根据传送信息的种类不同,系统总线分为 数据总线 、 地址总线 和 控制总线 。
9. 三态逻辑电路输出信号的三个状态是 高电平 、 低电平 和 高阻态 。
微机原理与接口技术(第二版)课后习题答案完整版

微机原理与接口技术(第二版)清华大学出版社习题 11.什么是汇编语言,汇编程序,和机器语言?答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。
汇编语言是面向及其的程序设计语言。
在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。
这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言。
使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。
2.微型计算机系统有哪些特点?具有这些特点的根本原因是什么?答:微型计算机的特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便。
这些特点是由于微型计算机广泛采用了集成度相当高的器件和部件,建立在微细加工工艺基础之上。
3.微型计算机系统由哪些功能部件组成?试说明“存储程序控制”的概念。
答:微型计算机系统的硬件主要由运算器、控制器、存储器、输入设备和输出设备组成。
“存储程序控制”的概念可简要地概括为以下几点:①计算机(指硬件)应由运算器、存储器、控制器和输入 /输出设备五大基本部件组成。
② 在计算机内部采用二进制来表示程序和数据。
③ 将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速的从存储器中取出指令加以执行,这就是存储程序的基本含义。
④ 五大部件以运算器为中心进行组织。
4.请说明微型计算机系统的工作过程。
答:微型计算机的基本工作过程是执行程序的过程,也就是CPU 自动从程序存放的第 1 个存储单元起,逐步取出指令、分析指令,并根据指令规定的操作类型和操作对象,执行指令规定的相关操作。
如此重复,周而复始,直至执行完程序的所有指令,从而实现程序的基本功能。
5.试说明微处理器字长的意义。
答:微型机的字长是指由微处理器内部一次可以并行处理二进制代码的位数。
它决定着计算机内部寄存器、 ALU 和数据总线的位数,反映了一台计算机的计算精度,直接影响着机器的硬件规模和造价。
微机原理与接口技术_楼顺天版_课后题答案

微机原理与接口技术_楼顺天版_课后题答案微机原理与接口技术楼顺天周佳社编著科学出版社微机原理与接口技术楼顺天周佳社编著科学出版社2006年习题解答因时间紧,习题解答由部分老师提供,还没有经过仔细校对,肯定有不少错误,请各位指正。
另外,习题有多种解法,答案不唯一,仅供参考。
1第1 章数制与码制1.将下列十进制数转换成二进制数:(1)58;(2)67.625;(3)5721;解:(1)58D = 0011 1010B(2)67.625D = 0100 0011.1010B(3)5721D = 0001 0110 0101 1001B2.将二进制数变换成十六进制数:(1)1001 0101B;(2)11 0100 1011B;(3)1111 1111 1111 1101B;(4)0100 0000 10101B;(5)0111 1111B;(6)0100 0000 0001B解:(1)1001 0101B = 95H(2)11 0100 1011B = 34BH(3)1111 1111 1111 1101B = FFFDH(4)0 1000 0001 0101B = 815H(5)0111 1111B = 7FH(6)0100 0000 0001B = 401H3.将十六进制数变换成二进制数和十进制数:(1)78H;(2)0A6H;(3)1000H;(4)0FFFFH解:(1)78H = 120D = 0111 1000B(2)0A6H = 166D = 1010 0110B(3)1000H = 4096D = 0001 0000 0000 0000H(4)0FFFFH = 65535D = 1111 1111 1111 1111B4.将下列十进制数转换成十六进制数:(1)39;(2)299.34375;(3)54.5625解:(1)39D = 27H(2)299.34375D = 12B.58H(3)54.5625D = 36.9H5.将下列二进制数转换成十进制数:(1)10110.101B;(2)10010010.001B;(3)11010.1101B解:(1)10110.101B = 22.625D2(2)10010010.001B = 146.125D(3)11010.1101B = 26.8125D6.计算(按原进制运算):(1)10001101B+11010B;(2)10111B+11100101B;(3)1011110B-1110B;(4)124AH+78FH;(5)5673H+123H;(6)1000H-F5CH;解:(1)10100111B(2)11111100B(3)1010000B(4)19D9H(5)5796H(6)A4H7.已知 a=1011B, b=11001B, c=100110B, 按二进制完成下列运算,并用十进制运算检查计算结果:(1)a+b; (2)c-a-b; (3)a×b;(4)c÷b解:a=1011B=11D b=11001B=25D c=100110B =38D (1)100100B = 36D(2)10B= 2D(3)1 0001 0011B=275D(4)1B余1101B= 13D8.已知 a=00111000B, b=11000111B, 计算下列逻辑运算:(1)a AND b; (2)a OR b; (3)a XOR b; (4)NOT a 解:(1)00000000B(2)11111111B(3)11111111B(4)11000111B9. 设机器字长为 8 位,写出下列各数的原码和补码:(1)+1010101B;(2)-1010101B;(3)+1111111B;(4)-1111111B;(5)+1000000B;(6)-1000000B解:(1)原01010101B补01010101B(2)原11010101B补10101011B3(3)原01111111B 补01111111B(4)原11111111B 补10000001B(5)原01000000B 补01000000B(6)原11000000B 补11000000B10. 写出下列十进制数的二进制补码表示(设机器字长为8位):(1)15;(2)-1;(3)117;(4)0;(4)-15;(5)127;(6)-128;(7)80解:(1)(00001111B)补(2)(11111111B)补(3)(01110101B)补(4)(00000000B)补(5)(11110001B)补(6)(01111111B)补(7)(10000000B)补(8)(01010000B)补11.设机器字长为8位,先将下列各数表示成二进制补码,然后按补码进行运算,并用十进制数运算进行检验:(1)87-73;(2)87+(-73);(3)87-(-73);(4)(-87)+73;(5)(-87)-73;(6)(-87)-(-73);解:(1)1110B=14D(2)00001110B 进位舍弃(3)10100000B=-96D溢出(4)11110010B=-14D(5)01100000B=96D 溢出(6)11110010B=-14D12.已知a,b,c,d 为二进制补码:a=00110010B, b=01001010B, c=11101001B, d=10111010B,计算:(1)a+b;(2)a+c;(3)c+b;(4)c+d;(5)a-b;(6)c-a;(7)d-c;(8)a+d-c解:(1)01111100B4(2)00011011B(3)00110011B(4)10100011B(5)11101000B(6)10110111B(7)11010001B(8)11B13.设下列四组为8 位二进制补码表示的十六进制数,计算a+b和 a-b,并判断其结果是否溢出:(1)a=37H, b=57H;(2)a=0B7H, b=0D7H;(3)a=0F7H, b=0D7H; (4)a=37H, b=0C7H解:(1)a+b=8EH溢出,a-b=E0H未溢出(2)8EH未溢出,E0H未溢出(3)CEH未溢出,20H未溢出(4)FEH未溢出70H未溢出14. 求下列组合 BCD 数的二进制和十六进制表示形式:(1)3251(2)12907(3)2006解:(1)0011 0010 0101 0001B = 3251H(2)0001 0010 1001 0111B = 12907H(3)0010 0000 0000 0110B = 2006H15. 将下列算式中的十进制数表示成组合BCD 码进行运算,并用加 6/减 6 修正其结果:(1)38+42;(2)56+77;(3)99+88;(4)34+69;(5)38-42;(6)77-56;(7)15-76;(8)89-23解:(1) 0011 1000B + 0100 0010B = 0111 1010B 低 BCD 码位需要加6 修正0111 1010B + 0000 0110B = 1000 0000B = 80BCD(2) 0101 0110B + 0111 0111B = 1100 1101B 高、低 BCD 码位都需要加6 修正1100 1101B + 0110 0110B = 0001 0011 0011B=133BCD(3) 1001 1001B+1000 1000B = 0001 0010 0001B 高、低BCD 码位都需要加 6 修正0001 0010 0001B +0110 0110B = 0001 1000 0111B=187BCD(4) 0011 0100B + 0110 1001B = 1001 1101B 低 BCD 码位需要加 6 修正5。
微机原理与接口技术课后答案第二版

微机原理与接口技术课后答案第二版【篇一:《微机原理与接口技术》(第二版)龚尚福-习题解析和实验指导】xt>2.2 8086微处理器由哪几部分组成?各部分的功能是什么?16355【解】:按功能可分为两部分:总线接口单元biu(bus interface unit)和执行单元eu(execution unit)。
总线接口单元biu是8086 cpu在存储器和i/o设备之间的接口部件,负责对全部引脚的操作,即8086对存储器和i/o设备的所有操作都是由biu完成的。
所有对外部总线的操作都必须有正确的地址和适当的控制信号,biu中的各部件主要是围绕这个目标设计的。
它提供了16位双向数据总线、20位地址总线和若干条控制总线。
其具体任务是:负责从内存单元中预取指令,并将它们送到指令队列缓冲器暂存。
cpu执行指令时,总线接口单元要配合执行单元,从指定的内存单元或i/o端口中取出数据传送给执行单元,或者把执行单元的处理结果传送到指定的内存单元或i/o端口中。
执行单元eu中包含1个16位的运算器alu、8个16位的寄存器、1个16位标志寄存器fr、1个运算暂存器和执行单元的控制电路。
这个单元进行所有指令的解释和执行,同时管理上述有关的寄存器。
eu对指令的执行是从取指令操作码开始的,它从总线接口单元的指令队列缓冲器中每次取一个字节。
如果指令队列缓冲器中是空的,那么eu就要等待biu通过外部总线从存储器中取得指令并送到eu,通过译码电路分析,发出相应控制命令,控制alu数据总线中数据的流向。
2.3 简述8086 cpu的寄存器组织。
【解】:(1)通用寄存器:通用寄存器又称数据寄存器,既可作为16位数据寄存器使用,也可作为两个8位数据寄存器使用。
当用作16位时,称为ax、bx、cx、dx。
当用作8位时,ah、bh、ch、dh 存放高字节,al、bl、cl、dl存放低字节,并且可独立寻址。
这样,4个16位寄存器就可当作8个8位寄存器来使用。
《微机原理与接口技术》—习题及参考答案

3.
4. 5.
6.错误!未指定书签。集源自-4-编者:喻其山
7. 8. 9.
8086CPU 工作在最大模式时,S 2 、 S1 、 S 0 在 CPU 访问存储器与 CPU 访问外 部设备时,分别是什么状态? 在 8086 最大模式系统中,8288 总线控制器的作用是什么?它产生哪些控制 信号? FFFFF FFFFE 8086 采用什么方式管理内存?1MB 的内存空 间分为哪两个存储体?它们如何与地址总线、 数据总线相连? 答:(1)、8086 采用分段方式管理内存; (2)、 1MB 的内存空间分为偶地址和奇地址 两个存储体; A19~A1 (3)、如右图所示:
错误!未指定书签。集
-
1
-
编者:喻其山
第1章
1.
微型计算机概述
冯· 诺依曼计算机的结构特点是什么? 答:(1)、由运算器、控制器、存储器、输入设备和输出设备五大部分组成。 (2)、数据和程序以二进制代码形式不加区别地存放在存储器中,存放位 置由地址指定,地址码也为二进制。 (3)、控制器是根据存放在存储器中的指令序列及程序来工作的,并由一 个程序计数器(即指令地址计数器)控制指令的执行。控制器具有 判断能力,能以计算结果为基础,选择不同的动作流程。 微处理器内部一般由哪些部分组成?各部分的主要功能是什么? 典型微机有哪三大总线?它们传送的是什么信息? 答:(1)、有数据总线,地址总线和控制总线。 (2)、数据总线用来传输数据信息,是双向总线; 地址总线用于传送 CPU 发出的地址信息,是单向总线; 控制总线用来传送控制信号、时序信号和状态信息等。 其中有的是 CPU 向内存和外设发出的信息,有的则是内存或外设向 CPU 发出的信息。 可见,CB 中每一根线的方向是一定的、单向的,但 CB 作为一个整体是双 向的。 试用示意图说明内存单元的地址和内存单元的内容,二者有何联系和区别? 答:示意图如右所示: 联系:存储单元中存放着信息,该信 息可以是数据, 也可以是另一单元的地址 的一部分, 每个存储单元都包含着地址和 内容两个部分。都用二进制数表示,地址 为无符号整数,书写格式为 16 进制。 区别: 地址是微机用来管理内存单元 而设置的,相当于内存单元的编号;而内 容是存放在各个内存单元中的二进制信 息。
微机原理与接口技术楼顺天版课后题答案

微机原理与接口技术 楼顺天 周佳社编著 科学出版社找了好久,终于在期末从老师那儿弄了一份,希望对大家有用!t cyc (R)<4T -t da -t D -T其中:T 为8086微处理器的时钟周期;t da 为8086微处理器的地址总线延时时间;t D 为各种因素引起的总线附加延时。
这里的t D 应该认为是总线长度、附加逻辑电路、总线驱动器等引起的延时时间总和。
同理,存储器芯片的最小写入时间应满足如下表达式:t cyc (W)<4T -t da ―t D ―T4.用下列RAM 芯片构成32kB 存储器模块,各需多少芯片16位地址总线中有多少位参与片内寻址多少位可用作片选控制信号(1)1k ×1 (2)1k ×4 (3)4k ×8 (4)16k ×4 解:(1)1k ×132825611K K ⨯=⨯片,片内寻址:09A A ,共10位; 片选控制信号:1015A A ,共6位。
(2)1k ×43286414K K ⨯=⨯片,片内寻址:09A A ,共10位; 片选控制信号:1015A A ,共6位。
(3)4k ×8328848K K ⨯=⨯片,片内寻址:011A A ,共12位; 片选控制信号:1215A A ,共4位。
(4)16k ×43284164K K ⨯=⨯片,片内寻址:013A A ,共14位; 片选控制信号:1415A A ,共2位。
5.若存储器模块的存储容量为256kB ,则利用上题中给出的RAM 芯片,求出构成256kB 存储模块各需多少块芯片20位地址总线中有多少位参与片内寻址多少位可用作片选控制信号解:(1)1k ×12568204811K K ⨯=⨯片,片内寻址:09A A ,共10位; 片选控制信号:1019A A ,共10位。
(2)1k ×4256851214K K ⨯=⨯片,片内寻址:09A A ,共10位; 片选控制信号:1019A A ,共10位。
微机原理与接口技术(第二版)课后习题答案

微机原理与接口技术(第二版)课后习题答案微机原理与接口技术(第二版)课后题答案第1章作业答案1.1 微处理器、微型计算机和微型计算机系统的区别是什么?微处理器是将CPU集成在一个芯片上,微型计算机是由微处理器、存储器和外部设备构成,而微型计算机系统则是微型计算机与管理、维护计算机硬件以及支持应用的软件相结合的系统。
1.2 CPU的内部结构由哪些部分组成?它应该具备哪些主要功能?CPU主要由算术逻辑单元、指令寄存器、指令译码器、可编程逻辑阵列和标志寄存器等寄存器组成。
它的主要功能是进行算术和逻辑运算以及控制计算机按照程序的规定自动运行。
1.3 采用总线结构的微型计算机有哪些优点?采用总线结构可以扩大数据传送的灵活性,减少连线。
此外,总线可以标准化,易于兼容和工业化生产。
1.4 数据总线和地址总线在结构上有什么不同?如果一个系统的数据和地址合用一套总线或者合用部分总线,那么要靠什么来区分地址和数据?数据总线是双向的,而地址总线是单向的。
如果一个系统的数据和地址合用一套总线或者部分总线,就要靠信号的时序来区分。
通常在读写数据时,总是先输出地址,过一段时间再读或写数据。
1.8 给定一个模型,如何用累加器实现15×15的程序?LD A。
15LD H。
15LOOP: ADD A。
15DEC HJP NZ。
LOOPHALT第2章作业答案2.1 IA-32结构微处理器直至Pentium 4,有哪几种?IA-32结构微处理器有、、Pentium、Pentium Pro、Pentium II、Pentium III和Pentium 4.2.6 IA-32结构微处理器有哪几种操作模式?IA-32结构支持保护模式、实地址模式和系统管理模式三种操作模式。
操作模式决定了哪些指令和结构特性可以访问。
2.8 IA-32结构微处理器的地址空间是如何形成的?由段寄存器确定的段基地址与各种寻址方式确定的有效地址相加形成了线性地址。
微机原理第7章习题答案.docx

习题及解答1.列举中断的具体应用。
要点:符合如下四种的均可(1)响应外部突发事件。
(2)实时多任务调度。
(3)实现外设与CPU的并行处理(4)分时多任务操作系统的基础。
2.中断的分类方式及其关系。
要点:3.中断向量表的功能时什么,8086/8088CPU如何对中断源识别并跳转到正确的中断服务程序入口?要点:中断向量表是存放中断服务程序入口地址的一个特定的内存区域,屮断号都与一个中断服务程序的入口地址相对应,实现中断处理程序的直接跳转8086/8088cpu通过中断号标识中断源,外部中断的中断号山中断控制器(如8259a)提供,内部中断中断号和不可屏蔽中断号系统固定分配发生中断时:1)将标志寄存器、CS、TP内容压入堆栈。
2)获取中断类型号n,生成中断向量表地址4杓。
3)从中断向量表地址为4*n的存储单元中収出中断向量送入CS和1P,继而转去执行中断服务子程序。
4.中断的一般处理流程包括那些步骤,分别完成什么功能?要点:中断处理的一般过程山中断请求、中断优先级判别、中断响应、现场保护、中断服务、现场恢复和中断返回构成。
中断请求:发起中断信号中断判优:优先级判断确定响应那个中断中断响应:通过中断屏蔽确定是否响应中断,回复中断响应信号现场保护:保存状态寄存器、地址寄存器和相关重要寄存器中断服务:中断处理程序现场恢复:恢复状态寄存器、地址寄存器和其他重要寄存器中断返回:跳转到断点5.8259A如何进行优先级管理?要点:全嵌套方式、特殊全嵌套方式和优先级自动循环方式,分别针对单片,级联和特殊情况下的应用6.设8259A的端口地址为80H和81H,用程序清除中断服务寄存器的ISR6。
;EOI 二1; SL 二1; R=0; L2L1L0二6 ;设置0CW27. 2片8259A 组成的级联系统,设备A 接在从片的IR0上,从片接在主片的IR4±,说明A 设备发生中断到CPU 响应的全过程。
要点:1, A 设备产生中断请求2, 从片8259A 进行优先级判断,如果IR0上的中断优先级高于当前从片的其它优先级, 从片8259A 响应屮断,向主片的IR4脚发起屮断请求3, 主片8259A 进行优先级判断,如果IR4上的中断请求优先级高于当前主片的其它优 先级,则主片通过INT 管脚向CPU 发起屮断请求4, CPU 接收到中断请求后,若允许中断,则向主片8259A 发送两个INTA 响应。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微机原理与接口技术(楼顺天第二版)习题解答
第7章常用芯片的接口技术
7.1答:(1)地址选择;(2)控制功能;(3)状态指示;(4)速度匹配;(5)转换信息格式;(6)电平转换;(7)可编程性。
7.2 答:I/O接口是指I/O设备与系统总线之间的连接部件;I/O端口是指I/O接口内部可由CPU进行读写操作的各种寄存器,根据存放信息的不同,这些寄存器分别称为数据端口、控制端口和状态端口。
7.3答:I/O端口编址的方式可以分为独立编址和统一编址两种方式。
独立编址方式是指I/O端口与存储器有相互独立的地址空间。
统一编址方式是指I/O端口与存储器共享一个地址空间,所有的存储单元只占用其中的一部分地址,而I/O端口则占用另外一部分地址。
优缺点:独立编址方式的优点之一是存储器的容量可以达到与地址总线所决定的地址空间相同;优点之二是访问I/O端口时的地址位数可以较少,提高总线的利用率。
但是缺点是必须设置专门的I/O指令,增加了指令系统和有关硬件的复杂性。
与独立编址方式相比,统一编址方式的优点是无需专门的I/O指令,从而使编程较灵活,但是I/O端口占用了存储器的一部分地址空间,因而影响到系统中的存储器的容量,并且访问存储器和访问I/O端口必须使用相同位数的地址,使指令地址码加长,总线中传送信息量增加。
7.4 答:程序查询方式的优点在于可以防止数据的丢失,实现起来较为简单;缺点是它占用了微处理器的大量时间,实时性较差。
中断方式具有较好的实时性;但在一定程度上增加成本和复杂性。
DMA方式的突出优点是传送过程无须处理器的控制,数据也无须经过微处理器,而是直接在I/O设备与主存储器间进行,因此既节约了微处理器的时间,也使传送速率大大提高;缺点是输入/输出操作占用微处理器时间。
7.5 答:I/O设备种类繁多、数据传送与响应速度差别大、电平信号各不相同、一般不直接具备控制功能和可编程性,所以,一般不能直接将I/O设备连接到系统总线上。
7.6 答:一般不考虑外设的状态且传输数据少时采用无条件传送;当需要查询外设的状态且微机系统规模小,CPU不需做其他事情时,可以采用查询式输入输出;当CPU工作在较为复杂的系统,且需要实时响应对发生的事件处理时,可以采用中断方式;当需要传送的数据较多时,一般采用DMA方式。
7.7 答:20, 1MB,00000H~FFFFFH,16,64K,0000H~FFFFH,10,
1K,000H~3FFH。
7.8答:I/O接口。
7.9 答:I/O设备,系统总线。
7.10 答:数据、状态、控制;双向、I/O接口-CPU,CPU-I/O接口。
7.11 答:状态寄存器。
7.12 答:速度
7.13 答:独立,统一。
7.14 答:BC
7.15 答:C
7.16 答:A
7.17 答:C
7.18 答:D
7.19 答:B
7.20 答:IN,OUT
7.21 答:由于片内有16个端口,分别占用300~30FH地址。
因此,该接口模块的片选信号的译码电路设计时,A3~A0不参加译码。
其译码电路如图7.21所示。
IOR
IOW
图7.21
7.22 答:在IBM PC系统中,如果AEN信号未参加I/O端口地址译码,则会出现DMA机构与I/O端口竞争总线的问题,即会出现总线竞争问题。
在没有DMA机构的其他微机系统中,不会存在同样的问题。
7.23 答:连接图如图7.23所示。
74LS244
A10
A7
A2
A0
图7.23
7.24 答:连接图如图7.24所示。
74LS374
A15
A14
A8
A2
IOW
A12
A11
A9
A7
A6
图7.24 程序如下:
MOV CX ,10
LEA SI,BUFFER
MOV DX,04E5H
WAIT1:IN AL,DX
AND AL,98H
CMP AL,98H
JNZ W AIT1
MOV DX,0E504H
L1:MOV AL,[SI]
OUT DX,AL
INC SI
LOOP L1
HLT
7.25 答:硬件连接图如图7.25所示。
74LS244
74LS244
A10
A8
图7.25 硬件连接图7.26 答:IOSTATE=302H
IODATA=300H
MOV DX,IOSTA TE
CHECK: IN AL,DX
TEST AL,08H
JZ CHECK
MOV DX,IODA TA
IN AL,DX
7.27 答:PC机使用A9~A0共10位地址进行I/O端口选择,现I/O接口的地址为3C0H,即1111000000B,如果将高7位用来产生片选信号。
7.28 答:IOSTATE=124H
IODATA1=120H
IODATA2=122H
MOV SI,OFFSET BUF1
MOV DI,OFFSET BUF2
CHECK: MOV DX,IOSTA TE
IN AL,DX
TEST AL,01H
JNZ READDA TA1
TEST AL,10H
JNZ READDA TA2
JMP CHECK
READDATA1:MOV BX,OFFSET BUF1 ;以下4行判断是否从设备1读入100个数ADD BX,100
CMP SI,BX
JAE ENDDATA1 ;读满100个数则不再读
MOV DX,IODA TA1
IN AL,DX
MOV [SI],AL
INC SI
ENDDATA1:JMP CHECK
READDATA1:MOV BX,OFFSET BUF2 ;以下4行判断是否从设备2读入100个数ADD BX,100
CMP DI,BX
JAE ENDDATA2 ;读满100个数则不再读
MOV DX,IODA TA2
IN AL,DX
MOV [DI],AL
INC DI
ENDDATA2:JMP CHECK
7.29 答:IOSTATE=0FAH ;状态端口
IOIN=0FCH ;纸币数据输入端口
IOOUT=0FEH ;硬币数据输出端口
CHECKIN:MOV DX,IOSTATE
IN AL,DX
TEST AL,04H ;D2位表示检测到纸币
JNZ EXCHANGE
JMP CHECKIN
EXCHANGE:MOV DX,IOIN ;读入纸币类型
IN AL,DX
MOV BL,AL ;将类型数据暂存在BL中
AND AL,0F0H ;取得高4位(10位)
MOV CL,4
SHR AL,CL ;右移4位
MOV CL,10
MUL CL ;10位乘10
AND BL,0FH ;个位
ADD AL,BL
SHL AL,1 ;乘2,得到5角硬币数
MOV AH,AL ;将纸币元值存入AH
MOV DX,IOSTA TE
CHECKOUT:IN AL,DX
TEST AL,08H
JZ CHECKOUT
MOV DX,IOOUT
MOV AL,AH
OUT DX,AL ;将5角硬币数输出到输出口
JMP CHECKIN。