汇编语言与微机接口技术作业6章(含答案)
微机原理与接口技术第六章8259a练习题及答案
《微机原理与接口技术》练习题第六章一、单项选择题1.8259A的INT是中断请求信号,它连至CPU的(C)端,用来向CPU发中断请求信号。
A.NMI B. IF C.INTR D. TF2.DMA工作方式时,总线上的各种信号是由(D)发送的。
A.中断控制器B.CPUC.存储器D.DMA控制器3.中断自动结束方式是自动将8259(A)相应位清零。
A.ISRB.IMRC.IRRD.ICW4.8086非屏蔽中断的类型码是(B)。
A.00HB.02HC.08HD. 不定5.对“INT N”指令其中断向量存放在内存从(C)开始的地址中。
A. DS*10H+N*4B. DS*10H+NC. 0*10H+N*4D. 0*10H+N6.两片8259A接成级联缓冲方式可管理(B)个可屏蔽中断。
A. 2B. 15C. 16D. 256 7.8086CPU在收到中断请求信号、进入中断响应周期以后,必须向中断源发出的信号是(B)。
A.INTR信号B.INTA信号C.HOLD信号D.HLDA信号8.在下列类型的8086CPU中断中,中断优先权最低的是(D)。
A.除法出错中断B.可屏蔽中断C.不可屏蔽中断D.单步中断9.在8259A内部,用于反映当前CPU正在执行哪些中断源程序的部件是(B)。
A.中断请求寄存器B.中断服务寄存器C.中断屏蔽寄存器D.中断优先级比较器10.8259A最多可管理_______级优先权的中断源。
( A )A.64B.128C.8D.16 11.8086/8088的中断向量表(B)。
A.用于存放中断类型号B.用于存放中断服务程序的入口地址C.是中断服务程序的入口D.是中断服务程序的返回地址.12.DMA操作的基本方式之一,周期挪用法是( A )。
A.利用CPU不访问存储器的周期来实现DMA操作B.DMA操作期间,CPU一定处于暂停状态C.要影响CPU的运行速度D.DMA传送操作可以有规则的、连续地进行13.在CPU与外设的I/O传送控制方式中,效率高、实时性强的方式是(D)。
《微机原理及接口技术》第六章
2、CPU对中断的响应
关中断:CPU响应中断后,发中断响应(INTA)信号的同时,内部自动实现关中断 保留断点:封锁IP+1,入栈保存CS:IP。 保护现场:由中断服务程序先将有关REG入栈保存。
给出中断入口、转相应的中断服务程序:中断服务程序起始地址,执行中断服务。
恢复现场:将中断服务程序入栈保存的REG内容弹出,恢复现场。 开中断与返回:中断服务的最后一条指令,出栈恢复CS:IP,恢复主程序运行,使IF自动恢
第十章
J X G
微型计算机开发应用
1/27
J X G
微机原理及接口技术 第六章、中断控制系统
本章要点:
J X G
中断的基本概念 中断处理过程 可编程中断控制器8259A的结构、功能 可编程中断控制器8259A的应用
2/27
J X G
微机原理及接口技术 6.1
一、中断的基本概念
中断系统
J X G
微机原理及接口技术
三、外部中断
8086芯片设置有两条中断请求信号输入引脚:NMI和INTR引脚,用于外部中断 源产生的中断请求,可分为以下两种: 1、可屏蔽中断 INTR (18脚) INTR线上的请求信号是电平触发的。当IF=0,CPU中断不响应,这种情况称为 可屏蔽中断。可屏蔽中断通过指令设置IF中断标志位,达到控制的目的。 STI CLI ;IF←1,开中断,CPU才能响应INTR线上的中断请求。 ;IF←0,关中断,CPU不响应INTR线上的中断请求。
对于系统专用中断,系统将自动提供0~4中断类型号,保证系统自动转到处理程序。
J X G
对于可屏蔽中断INTR,外接口电路产生中断类型号。目前8259A产生。
汇编语言与接口技术叶继华(第二版)习题答案
汇编语言与接口技术叶继华(第二版)习题答案习题一解答: 1.3(1)[0.0000]原=0.0000[0.0000]反=0.0000[0.0000]补=0.0000(2)[0.1001]原=0.1001[0.1001]反=0.1001[0.1001]补=0.1001(3)[-1001]原=11001[-1001]反=10110[-1001]补=10111 1.4[N]反=1.0101 [N]原=1.1010[N]补=1.0110N=-0.1010 1.5(1)原码运算:比较可知,正数较大,用正数减负数,结果为正01010011-00110011=[01010011]原-[00110011]原=00100000反码运算:01010011-00110011=[01010011]反+[-00110011]反=001010011+111001100=000011111补码运算:01010011-00110011=[01010011]补+[-00110011]补=001010011+111001101=000100000 (2)原码运算:比较可知,负数较大,用负数减正数,结果为负0.100100-0.110010=[0.110010]原-[0.100100]原=-0.001110反码运算:0.100100-0.110010=[0.100100]反+[-0.110010]反=0.100100+ 1.001101=1.110001补码运算:0.100100-0.110010=[0.100100]补+[-0.110010]补=0.100100+1.001110=1.110010764310 1.6(1)(11011011)2=(1×2+1×2+1×2+1×2+1×2+1×2)10=(219)10=(001000011001)BCD(2)(456)10=(010*********)BCD210(3)(174)8=(1×8+7×8+4×8)10=(124)10=(000100100100)BCD210(4)(2DA)16=(2×16+13×16+10×16)10=(730)10=(011100110000)BCD 1.7(1)9876H看成有符号数时,默认为负数的补码,转换为十进制数是:-265069876H=1001100001110110B为负数的补码,对其求补得到正数的补码,即[1001100001110110B]补=0110011110001010B14131098731=(1×2+1×2+1×2+1×2+1×2 +1×2+1×2+1×2)10=26506所以原负数为-26506(2)9876H看成无符号数时,转换为十进制数是:39030151211654219876H=1001100001110110B=(1×2+1×2+1×2+1×2+1×2+1×2+1×2+1×2)10=39030 1.8(1)98的压缩BCD码为:10011000B(2)98的非压缩BCD码为:0000100100001000B 1.9(1)[S1+S2]补=[S1]补+[S2]补=00010110+00100001=00110111,无溢出[S1-S2]补=[S1]补+[-S2]补=00010110+11011111=11110101,无溢出(2)[S1+S2]补=[S1]补+[S2]补= 00010110+11011111=11110101,无溢出[S1-S2]补=[S1]补+[-S2]补=00010110+00100001=00110111,无溢出(3)[S1+S2]补=[S1]补+[S2]补= 01100100+00011110=10000010,有溢出[S1-S2]补=[S1]补+[-S2]补=01100100+11100010=01000110,无溢出(4)[S1+S2]补=[S1]补+[S2]补= 10011100+11100010=01111110,有溢出[S1-S2]补=[S1]补+[-S2]补=10011100+00011110=10111010,无溢出习题二解答: 2.1答:8086有哪些寄存器组?各有什么用途?①通用寄存器AX、BX、CX、DX它既可用作16位寄存器,又可将它拆成高、低8位,分别作为两个独立的8位寄存器使用。
《汇编语言微机原理及接口技术》(第2版)课后习题答案
第1章进制及码元1•进制转换129= 81H= 10000001B=201Q 298= 12AH= 100101010B=452Q 1000= 3E8H= 1111101000B= 1750Q 5DH= 1011101 B= 1350= 93 D 3E8H=1111101000 B= 17500= 1000 D3570=11101111 B= 0EF H= 239 D 3. 数据表示范围:一字节的无符号数表示范围为 0〜255,有符号数(补码)表示范围为-128 —+127。
一个字的无 符号数表示范围为 0〜65535,有符号数(补码)表示范围为—32768〜+32767。
N 位二进制数 的无符号数表示范围为 0〜(2N-1),有符号数(补码)表示范围为-2N -1〜(2曲-1).4.35H 代表的ASCII字符为M :,代表十六进制数时等价的十进制值为53_,代表压缩8421BCD 码等价的十进制值为 35_,代表非压缩8421BCD 码等价的十进制值为 5。
5. FFH 代表无符号数时等价的十进制值为一 1 ,代表反码有符号数时等价的十进制值为第2章微机硬件基础1 .计算机系统硬件的五大功能部件及其主要功能?答:硬件系统按功能模块分为运算器、控制器、存储器、输入设备、输出设备。
运算器主要完成算术运算、逻辑运算及移位运算,其中主要包括算术逻辑运算单元Arithmetic Logic Unit , ALU)和暂存数据(原始、中间、结果)的寄存器(Register , R)。
控制器实现对计算机部件的协调调度完成指令的分析执行,其中主要有程序计数器Program Counter , PC)或叫指令指针(Instruction Pointer , IP)、指令寄存器(Instruction register , IR)、指令译码器(Instruction Decoder , ID)、微操作命令发生器、时序发生器等。
微机原理汇编语言与接口技术课后答案
微机原理汇编语言与接口技术课后答案微机原理汇编语言与接口技术课后答案【篇一:《微机原理、汇编语言与接口技术》复习练习题与答案(new)】lass=txt>一、填空题1、8086/8088 cpu内部结构按功能分为两部分,即由单元和单元组成。
2、若cpu的数据线宽度为16位,则它的字长为位;地址线宽度为20位,则它的寻址空间为 1mb 。
3、8086cpu为了适应各种应用场合有两种工作模式,即是最小模式和最大模式。
4、8086/8088cpu复位后,cs的内容为 0ffffh ,ip的内容为0000h 。
5、8086的16位标志寄存器包括6 个状态标志位和3 个控制标志位。
6、计算机的i/o端口地址的编址方式有统一编址和独立编址,而8086cpu寻址外设采用独立编址方式。
7、cpu与外设间有4种i/o信息传送方式,即无条件传送、查询传送中断传送、直接存储器存取(dma)。
8、若某输出外设的i/o接中的数据端口地址为100h,要将字节数据从8086cpu输出到外设的指令是mov dx,100h和out dx,al。
9、响应可屏蔽中断intr的条件是控制标志if= 1。
10、若8253的某一计数器用于输出方波,该计数器的工作方式为;若该计数器输入频率为100khz,输出方波频率为10khz,则计数初值应设为 10。
11、串行通信协议分为和。
12、波特率是指单位时间内传送二进制数据的位数。
13、8088 组成的系统中,存储器分个不超过字节的段。
14、当8088cpu的intr端输入一个电平时,获得了中断请求。
15、8088工作于最小工作模式时,控制总线由产生,工作于最大工作模式时,控制总线由总线控制器8288产生。
16、数据的并行i/o方式是以为单位进行传送;数据的串行i/o方式是以为单位进行传送。
17、从地址/数据复用线中分离出地址信息需用逻辑芯片,地址/数据复用线中的双向数据传送需用逻辑芯片双向缓冲器。
微机原理 汇编语言与接口技术 (周杰英 著) 人民邮电出版社
h 目的操作数
源操作数
k(1) MOV AX,100
寄存器寻址
立即数寻址
(2) MOV AX,[100]
寄存器寻址
直接寻址
(3) MOV DL,[BP+SI] 寄存器寻址
基址变址寻址
(4) MOV [BX],CX
寄存器间接寻址 寄存器寻址
(5) MOV DX,[SI]
寄存器寻址
寄存器间接寻址
(6) MOV 1234H[BX],DS 寄存器相对寻址 寄存器寻址
www.kh 课d后a答案w网.com
课后答案网
周期来完成 16 位数据的传送,而对于非规则字则用相邻两个总线周期来完成该字的存
储操作,先取其奇地址字节(即数据的低位字节),然后存取偶地址字节。在组成存储
系统 时, 总是偶 地址 单元的 数据 通过 AD0~AD7 传送 ,而 奇地址 单元 的数据 通 过 AD8~AD15 传送,即通过总线高字节传送。 BHE 信号和 A0 信号控制存储器读写见下表:
优点? 解:总线接口部分和执行部分是分开的,每当 EU 执行一条指令时,造成指令队列空出 2 个或空出一个指令字节时 ,BIU 马上从内存中取出下面一条或几条指令,以添满他 的指令队列。这样,一般情况下,CPU 在执行完一条指令后,便可马上执行下一条指 令,不像以往 8 位 CPU 那样,执行完一条指令后,需等待下一条指令。即 EU 从指令队 列中取指令、执行指令和 BIU 补充指令队列的工作是同时进行的。这样大大提高了 CPU 利用率,降低了系统都对存储器速度的要求。
课后答案网
www.kh 课d后a答案w网.com
第一章 绪论
习题与答案
m 1. 把下列二进制数转换成十进制数、十六进制数及 BCD 码形式。 o (1) 10110010B =
16、32位微机原理、汇编语言和接口技术教程课后习题答案解析
《16/32 位微机原理、汇编语言及接口技术教程》部分习题参考解答第1 章微型计算机系统概述〔习题1.2 〕什么是通用微处理器、单片机(微控制器)、芯片、嵌入式系统?〔解答〕通用微处理器:适合较广的应用领域的微处理器,例如装在机、笔记本电脑、工作站、服务器上的微处理器。
单片机:是指通常用于控制领域的微处理器芯片,其内部除外还集成了计算机的其他一些主要部件,只需配上少量的外部电路和设备,就可以构成具体的应用系统。
芯片:称数字信号处理器,也是一种微控制器,其更适合处理高速的数字信号,内部集成有高速乘法器,能够进行快速乘法和加法运算。
嵌入式系统:利用微控制器、数字信号处理器或通用微处理器,结合具体应用构成的控制系统,其典型的特点是把计算机直接嵌入到应用系统之中。
〔习题1.5 〕说明微型计算机系统的硬件组成及各部分作用。
〔解答〕:也称处理器,是微机的核心。
它采用大规模集成电路芯片,芯片内集成了控制器、运算器和若干高速存储单元(即寄存器)处理器及其支持电路构成了微机系统的控制中心,对系统的各个部件进行统一的协调和控制。
存储器:存储器是存放程序和数据的部件。
外部设备:外部设备是指可与微机进行交互的输入()设备和输出()设备,也称设备。
设备通过接口与主机连接。
总线:互连各个部件的共用通道,主要含数据总线、地址总线和控制总线信号。
习题1.6 〕什么是总线?微机总线通常有哪3 组信号?各组信号的作用是什么?〔解答〕总线:传递信息的共用通道,物理上是一组公用导线。
3 组信号线:数据总线、地址总线和控制总线。
(1)地址总线:传输将要访问的主存单元或端口的地址信息。
(2)数据总线:传输读写操作的数据信息。
(3)控制总线:协调系统中各部件的操作。
习题1.7 〕简答如下概念:(1)计算机字长(2)取指-译码-执行周期(3)(4)中断(5)总线解答〕(1)处理器每个单位时间可以处理的二进制数据位数称计算机字长。
(2)指令的处理过程,即指处理器从主存储器读取指令(简称取指),翻译指令代码的功能(简称译码),然后执行指令所规定的操作(简称执行)的过程。
微机原理与接口技术第六章8259A练习题及答案
微机原理与接口技术第六章-8259A练习题及答案中断技术和中断控制器8259A练习题及答案一、填空题1.8088微处理器最多能处理256种不同类型的中断。
2.8088系统的中断向量表位于从内存地址 00000H 开始,占1K字节存储单元。
3.8088CPU响应INTR中断时,将PSW(或标志寄存器内容)和断点(或CS:IP)进堆栈保存。
4.8259A可管理8级优先级中断源,通过级联,最多可管理 64 级优先级中断源。
5.若8259A的IRR(中断请求寄存器)的内容为10H,说明IR4请求中断。
二、选择题6.8088CPU的标志寄存器中IF=1时,表示允许CPU响应______中断。
CA.内部中断B.外部中断C.可屏蔽中断D.不可屏蔽中断7.CPU在响应中断时,保存断点是指______。
DA.将用户设置的程序指令地址入栈保存B.将中断服务程序的入口地址入栈保存C.将程序状态字PSW入栈保存D.将返回地址即程序计数器PC(CS:IP)的内容入栈保存8.8088的中断向量表用于存放______。
BA.中断类型号B.中断服务程序的入口地址C.中断服务程序的返回地址D.断点地址三、判断题9.8086的可屏蔽中断的优先级高于不可屏蔽中断。
[ ] ×10.通常8259A芯片中的IR0优先级最低,IR7的优先级最高。
[ ]×11.在8088系统中,所谓中断向量就是中断服务程序入口地址。
[ ] √四、简答题12.CPU响应INTR中断的条件是什么?答:(1)INTR信号为有效电平(2)当前指令执行完毕(3)CPU开中断(IF=1)(4)没有更高级的请求(RESET , HOLD ,NMI)13.一般CPU响应中断时自动做哪些工作? 8088CPU呢?答:一般CPU在响应中断时,关中断,保存断点,识别中断源,找到中断服务程序入口地址,转入中断服务程序。
8080CPU在响应中断时,首先把PSW(或标志寄存器内容)入栈保存,其余同一般CPU.14.8088CPU在执行中断返回指令IRET时,执行什么操作?答:(1)弹出断点送CS:IP第 - 2 - 页共 13 页(2)弹出PSW送标志寄存器15.中断控制器8259A中下列寄存器的作用是什么?(1) IRR (中断请求寄存器) :保存中断源的中断请求(2) IMR (中断屏蔽寄存器) :屏蔽/允许中断源请求中断,由程序写入,1为屏蔽,0为允许(3) ISR (中断服务寄存器): 记录CPU正在为哪些中断源服务(4) IVR (中断向量寄存器): 保存中断向量号16、初使化时设置为非自动结束方式,那么在中断服务程序将结束时必须设置什么操作命令?如果不设置这种命令会发生什么现象?答案:当中断服务程序将结束时,必须发0CW2=20H为中断结束命令,执行此命令即撤消正在服务的中断请求和服务标志;否则,即使返回主程序但未退出此中断,造成中断响应的混乱。
微机原理与接口技术课后习题答案完整版
习题11.什么是汇编语言,汇编程序,和机器语言?答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。
汇编语言是面向及其的程序设计语言。
在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。
这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言。
使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。
2.微型计算机系统有哪些特点?具有这些特点的根本原因是什么?答:微型计算机的特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便。
这些特点是由于微型计算机广泛采用了集成度相当高的器件和部件,建立在微细加工工艺基础之上。
3.微型计算机系统由哪些功能部件组成?试说明“存储程序控制”的概念。
答:微型计算机系统的硬件主要由运算器、控制器、存储器、输入设备和输出设备组成。
“存储程序控制”的概念可简要地概括为以下几点:①计算机(指硬件)应由运算器、存储器、控制器和输入/输出设备五大基本部件组成。
②在计算机内部采用二进制来表示程序和数据。
③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速的从存储器中取出指令加以执行,这就是存储程序的基本含义。
④五大部件以运算器为中心进行组织。
4.请说明微型计算机系统的工作过程。
答:微型计算机的基本工作过程是执行程序的过程,也就是CPU自动从程序存放的第1个存储单元起,逐步取出指令、分析指令,并根据指令规定的操作类型和操作对象,执行指令规定的相关操作。
如此重复,周而复始,直至执行完程序的所有指令,从而实现程序的基本功能。
5.试说明微处理器字长的意义。
答:微型机的字长是指由微处理器内部一次可以并行处理二进制代码的位数。
它决定着计算机内部寄存器、ALU和数据总线的位数,反映了一台计算机的计算精度,直接影响着机器的硬件规模和造价。
《微机原理、汇编语言与接口技术》韩晓茹(习题解答全套
地址总线AB是专门用来传送地址的,地址总线总是单向三态的。
控制总线CB用来传送控制信号和时序信号,制总线的传送方向由具体控制信号而定。
1.4衡量微型计算机系统的性能的指标有哪些?
答:衡量微型计算机系统的性能的指标有字长、主频、运算速度和主存容量和存取速度。字长是指微机系统中CPU一次能处理的二进制位数。CPU的主频,即CPU内核工作的时钟频率(CPU Clock Speed)。运算速度是指每秒钟所能执行的指令条数。主存储器容量指内部存储器能存放数据的最大字节数。存取速度指主存完成一次读/写所需要的时间。
2.3简述伪指令“EQU”与“=”之间有什么区别?
解:“EQU”伪指令不能重复定义,而“=”伪指令可以重复定义。
2.4画图说明下列语句分配的存储空间及初始化的数值
(1)FF1DB'0100',2+5,?,'ABC'
(2)FF2DW2 DUP(?),'A','BC',1000H,25H
(3)FF3DB2 DUP(1,2 DUP(2,3),4)
(3)LEA BX, BLOCK
MOV SI, 99*2
MOV AX,[BX+SI]
或:
LEA SI, BLOCK
MOV BX, 99*2
MOV AX,[BX+SI]
2.9已知:(BX)=1200H,(BP)=2400H,(SI)=0100H,(DI)=0200H,(SS)=1000H,(DS)=2000H,(ES)=3000H,变量VAR1对应地址为2000H,试分别指出下列指令中存储器的寻址方式及物理地址。
2.28086/8088 CPU中标志寄存器有哪两类标志?简述各标志位的含义。
微机原理与接口技术(第二版)课后习题答案完整版
微机原理与接口技术(第二版)课后习题答案完整版标准化文件发布号:(9312-EUATWW-MWUB-WUNN-INNUL-DQQTY-习题11.什么是汇编语言,汇编程序,和机器语言答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。
汇编语言是面向及其的程序设计语言。
在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。
这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言。
使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。
2.微型计算机系统有哪些特点具有这些特点的根本原因是什么答:微型计算机的特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便。
这些特点是由于微型计算机广泛采用了集成度相当高的器件和部件,建立在微细加工工艺基础之上。
3.微型计算机系统由哪些功能部件组成试说明“存储程序控制”的概念。
答:微型计算机系统的硬件主要由运算器、控制器、存储器、输入设备和输出设备组成。
“存储程序控制”的概念可简要地概括为以下几点:①计算机(指硬件)应由运算器、存储器、控制器和输入/输出设备五大基本部件组成。
②在计算机内部采用二进制来表示程序和数据。
③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速的从存储器中取出指令加以执行,这就是存储程序的基本含义。
④五大部件以运算器为中心进行组织。
4.请说明微型计算机系统的工作过程。
答:微型计算机的基本工作过程是执行程序的过程,也就是CPU自动从程序存放的第1个存储单元起,逐步取出指令、分析指令,并根据指令规定的操作类型和操作对象,执行指令规定的相关操作。
如此重复,周而复始,直至执行完程序的所有指令,从而实现程序的基本功能。
5.试说明微处理器字长的意义。
答:微型机的字长是指由微处理器内部一次可以并行处理二进制代码的位数。
微机原理、汇编与接口技术习题答案 第6章习题答案
微机原理、汇编与接口技术第六章习题答案6.16.26.36.4stack segment stack 'stack'dw 32 dup(0)stack endscode segmentstart proc farassume ss: stack, cs: codepush dssub ax, axpush axCALL I6116 ;调用写入6116子程序MOV AH, 2 ;回车换行MOV DL, 0DHINT 21HMOV DL, 0AHINT 21HCALL O6116 ;调用读出6116子程序retstart endp;写入6116:将键入字符的ASCII码写入6116I6116 PROCMOV BL, 0 ;定义页地址码(16个地址为一页)MOV CX, 128 ;定义页数LOP1: PUSH CXMOV DX, 380H ;将页地址从74LS273输出MOV AL, BLOUT DX, ALMOV CX, 16 ;定义页内单元数MOV DX, 390H ;将键入数写入16个单元LOP2: MOV AH, 1INT 21HOUT DX, ALINC DXLOOP LOP2INC BL ;换页POP CXLOOP LOP1 ;页数未满换页重新写入16个单元RETI6116 ENDP;读出6116:将写入6116的数据读出送显示O6116 PROCMOV BL, 0MOV CX, 128LOP3 PUSH CXMOV DX, 390HMOV AL, BLOUT DX, ALMOV CX, 16MOV DX 380H ;将16个单元的数据送显示LOP4: IN AL, DXPUSH DXMOV DL, AL ;将6116中读出的ASCII码送DLMOV AH, 2 ;2号功能调用显示DL中的字符INT 21HPOP DXINC DXLOOP LOP4INC BLPOP CXLOOP LOP3RETO6116 ENDPcode endsend start6.5stack segment stack 'stack'dw 32 dup(0)stack endscode segmentstart proc farassume ss: stack, cs: codepush dssub ax, axpush axMOV AH, 2 ;用2号功能调用输出字符,调用号送AHMOV CX, 100 ;字符个数送计数器MOV DX, 380HWAIT0: IN AL, DX ;从244读入TEST AL, 80H ;测试状态位是否为0JNZ WAIT0 ;不为0,等待继续测试状态WAIT1: IN AL, DX ;状态为0,继续读入TEST AL, 80H ;测试状态是否为1JZ WAIT1 ;不为1,等待继续测试状态IN AL, DX ;状态为1,读入数据即ASCII码AND AL, 7FH ;去掉状态位MOV DL, AL ;ASCII码送DL,输出字符INT 21HLOOP WAIT0-3 ;跳到给DX赋值380H的MOV指令,该指令为3字节retstart endpcode endsend start6.6stack segment stack 'stack'dw 32 dup(0)stack endsdata segmentOBUF DB 4 DUP(0)data endscode segmentbegin proc farassume ss: stack, cs: code, ds: datapush dssub ax,axpush axmov ax,datamov ds,axMOV BX,0FFSET OBUF+3 ;建立指针MOV BYTE PTR [BX],'$';存字符串结束符$MOV DX,380H ;读入二进制数IN AL,DXMOV CH,10AG: MOV AH,0 ;无符号数扩展为16位DIV CHADD AH,30H ;转换为ASCII码DEC BXMOV [BX],AH ;存入输出数据区中OR AL,ALJNZ AGMOV DX,BXMOV AH,9INT 21Hretbegin endpcode endsend begin6.7用除2取余法将BCD数转换为二进制数的程序如下:stack segment stack 'stack'dw 32 dup(0)stack endsdata segmentIBUF DB 4, 0, 4 dup(0)data endscode segmentstart proc farassume ss: stack, cs: code, ds: datapush dssub ax,axpush axmov ax,datamov ds,axMOV DX,OFFSET IBUF ;键入十进制数MOV AH,10INT 21HMOV DX,0 ;将键入数以压缩BCD数形式放AX中MOV CH,IBUF+1 ;将键入数的个数送计数器CH中MOV CL,4MOV BX,2AGAIN1: AND IBUF[BX],0FH ;将数据区中的ASCII码转换为BCD数SHL AX,CL ;将BCD数左移1位OR DL,IBUF[BX] ;将数据区中的1位BCD放入DX的最低4位INC BXDEC CHJNZ AGAIN1MOV CX,8 ;用除2取余法将DX中的压缩BCD数转换为二进制数AGAIN2: SHR DX,1RCR AL,1MOV AH,DLAND AH,88HSHR AH,1SHR AH,1SUB DL,AHSHR AH,1SUB DL,AHLOOP AGAIN2MOV DX,380H ;二进制数从74LS273输出OUT DX,ALretstart endpcode endsend start用(百位⨯10+十位)⨯10+个位的方法将BCD数转换为二进制数的程序段如下:MOV CL,IBUF+1 ;将键入数的个数送计数器CX中MOV CH,0MOV SI,2MOV AL, 0 ;开始将十进制数转换为二进制数AGAIN: MOV AH, 10 ;((0×10+a2)×10+…)×10+a0MUL AHAND BYTE PTR [SI], 0FH ;将十进制数的ASCII码转换为BCD数ADD AL,[SI]INC SILOOP AGAIN6.8stack segment stack 'stack'dw 32 dup(0)stack endsdata segmentSEGPT DB 3FH,6,5BH,4FH,66H,7,7FH,6FH,6FH,76H,77H,7CH,39H,5EH,79H,71H data endscode segmentstart proc farassume ss: stack, cs: code, ds: datapush dssub ax,axpush axmov ax,datamov ds,axMOV DX,380HIN AL,DXSUB AL,30HCMP AL,0AHJB NS7SUB AL,7MOV BL,ALMOV BH,0MOV AL,SEGPT[BX]OUT DX,ALretstart endpcode endsend start6.9stack segment stack 'stack'dw 32 dup(0)stack endscode segmentstart proc farassume ss: stack, cs: codepush dssub ax, axpush axMOV DX, 380HLOP1: IN AL, DX ;读入设备1和设置2的状态AND AL, 6 ;测试2台设备的状态,同时使AL的D0位为0JZ LOP2 ;都正常,即AL的D1位和D2位都为0,AL为0MOV AL, 1 ;有一台异常AL不为0,AL置1,即AL的D0位为1 LOP2: OUT DX, ALMOV AH, 11 ;11号功能调用,键入任一键退出程序INT 21HCMP AL, 0 ;无键入AL=0,有键入AL=FFHJE LOP1 ;无键入,去LOP1继续监视2台设备retstart endpcode endsend start6.10stack segment stack 'stack'dw 32 dup(0)stack endscode segmentbegin proc farassume ss: stack, cs: codepush dssub ax, axpush axMOV DX, 380HIN AL, DX ;读入原码TEST AL, 80H ;判原码数的符号JZ NONEG ;正数的原码和补码相同,不用求补AND AL, 7FH ;负数,求其绝对值NEG AL ;对绝对值求补得该负数的补码NONEG: OUT DX, ALretbegin endpcode endsend begin6.11在显示器上显示:行*列的程序如下:stack segment stack 'stack'dw 32 dup(0)stack endscode segmentstart proc farassume ss: stack, cs: codepush dssub ax, axpush axMOV DX, 380H ;检测全键盘MOV AL, 0 ;键盘的8行全为低电平OUT DX, ALLOP1: IN AL, DX ;读入列值CMP AL, 0FFH ;列值是FFH吗?JE LOP1 ;是,全键盘无键闭合,继续检测MOV AH, 7FH ;键盘的行检测的输出值,被检测行为0,其余行为1 LOP2: MOV AL, AH ;检测键盘的一行OUT DX, AL ;输出行检测值IN AL, DX ;读入列值,列值不为FFH有键闭合CMP AL, 0FFH ;被检测行有键闭合吗?JNE LOP3 ;有键闭合,结束逐行扫描去LOP3ROR AH, 1 ;该行无键闭合,改变行检测的输出值检测另一行JMP LOP2LOP3: MOV DL, 0 ;求行值0~7,即AH中的那个0的位置AS1: SHR AH ,1 ;0在最低位DL=0,……,0在最高位DL=7JNC AS2JMP AS1AS2: ADD DL, 30H ;将行值转换为ASCII码MOV AH, 2 ;输出行值INT 21HMOV DL, '*';输出乘号:*INT 21HMOV DL, 0 ;求列值0~7,即AL中的那个0的位置AS3: SHR AL, 1JNC AS4INC DLJMP AS3AS4: ADD DL, 30H ;将列值转换为ASCII码INT 21H ;输出列值retstart endpcode endsend start6.12stack segment stack 'stack'dw 32 dup(0)stack endsdata segmentSEGPT DB 77H,7CH,39H,5EH,79H,71H,6FH,76Hdata endscode segmentstart proc farassume ss: stack, cs: code, ds: datapush dssub ax, axMOV DX, 380HLOP: IN AL, DXMOV BX,0LOP1: SHR AL,1JNC LOP2INC BLJMP LOP1LOP2: MOV AL,SEGPT[BX]OUT DX, ALMOV AH,11INT 21HCMP AL,0JE LOPretstart endpcode endsend start6.13stack segment stack 'stack'dw 32 dup(0)stack endscode segmentstart proc farassume ss: stack, cs: codepush dssub ax, axpush axMOV DX 260HIN AL, DXMOV AH, ALINC DXCMP AL, AHJNC NXCHGXCHG AL, AHNXCHG: SUB AL, AHDASINC DXINC DXOUT DX, ALretstart endpcode endsend start6.14stack segment stack 'stack'dw 32 dup(0)stack endscode segmentstart proc farassume ss: stack, cs: codepush dssub ax, axpush axMOV BL, 240MOV DX, 260HLOP: ADD BL, 16MOV AL, BLOUT DX, ALLOOP $ ;延时MOV AH, 11INT 21HCMP AL, 0JE LOPretstart endpend start6.15输出周期性的方波、锯齿波、三角波、正弦波的程序如下:stack segment stack 'stack'dw 32 dup (0)stack endsdata segmentOBF DB 80H, …, 0FFH, …, 80H, …, 00H, …;正弦波的数据(一周期)N EQU $ -OBFdata endscode segmentstart proc farassume ss: stack, cs: code, ds: datapush dssub ax, axpush axmov ax, datamov ds, axMOV DX, 380HAGAIN: MOV AH, 1 ;键入一字符,应为大写!INT 21HCMP AL, 'F'JE FBCMP AL, 'J'JE JCBCMP AL, 'S'JE SJBCMP AL, 'Z'JE ZXB ;按下F、J、B和Zret ;4个键以外的键退出该程序FB: MOV AL, 0 ;方波输出OUT DX, ALCALL DELAY1CALL DELAY1MOV AH, 11INT 21HCMP AL, 0JE FBJMP AGAINJCB: INC AL ;锯齿波输出OUT DX, ALCALL DELAY2MOV BL, AL ;保护ALMOV AH, 11CMP AL, 0MOV AL, BL ;恢复ALJE JCBJMP AGAINSJB: INC AL ;三角波输出OUT DX, ALCALL DELAY3CMP AL, -1JNE SJBSJB1: DEC ALOUT DX, ALCALL DELAY3CMP AL, 0JNE SJB1MOV AH, 11INT 21HCMP AL, 0JE SJBJMP AGAINZXB: MOV BX, OFFSET OFB ;正弦波输出MOV CX, NZXB1: MOV AL, [BX]OUT DX, ALCALL DELAY4INC BXLOOP ZXB1MOV AH, 11INT 21HCMP AL, 0JE ZXBJMP AGAINstart endpDELAY1: PROCDL11: MOV SI, 0DL12: DEC SIJNZ DL12LOOP DL11POP CXRETDELAY1 ENDPDELAY2 ;延时程序结构一样DELAY3 ;仅CX取值不同;故略DELAY4code endsend start6.1stack segment stack 'stack'dw 32 dup(0)stack endscode segmentstart proc farassume ss: stack, cs: codepush dssub ax,axpush axmov ax,datamov ds,axMOV CL,4LOP1: MOV AX,0LOP2: PUSH AXMOV DX, 381HROR AX,CL ;高8位数据移入ALOUT DX, ALMOV DX, 380HMOV AL,AH ;低4位数据移入AL的低4位SHR AL,CLOUT DX, AL ;再写一遍MOV AH,11 ;检查键盘有无键入INT 21HCMP AL,0JNE BAK ;键盘有键入,退出POP AXINC AXCMP AX,1000HJNE LOP2JMP LOP1BAK: POP AXretstart endpcode endsend start6.17stack segment stack 'stack'dw 32 dup(0)stack endsdata segmentBUF DB 16 DUP(0)data endscode segmentstart proc farassume ss: stack, cs: code, ds: datapush dssub ax,axpush axmov ax,datamov ds,axMOV BX,0MOV DX,260HLOP: OUT DX,ALPUSH DXMOV DX,270HWT: MOV AL,DXSHR AL,1JNC WTPOP DXIN AL,DXMOV BUF[BX],ALINC BXINC DXLOOP LOPretstart endpcode endsend start6.18stack segment stack 'stack'dw 32 dup(0)stack endsdata segmentBUFF DW 100 DUP(0)data endscode segmentstart proc farassume ss: stack, cs: code, ds: datapush dssub ax,axmov ax,datamov ds,axMOV BX,0MOV CX,100LOP: MOV DX, 380H ;两片74LS244都不选中OUT DX, AL ;产生SC信号启动AD转换INC DXWAIT: IN AL, DX ;读取转换结束信号TEST AL, 4 ;测试CC信号JNZ WAIT ;CC信号为1,表明AD转换未结束,等待IN AL, DX ;CC信号为0,转换结束,读取高4位数据AND AL, 0FH ;屏蔽AL的高4位,保留AL的低4位即高4位数据MOV AH, ALINC DXIN AL, DX ;读取低8位,转换结果在AX中MOV BUFF[BX],AXINC BXINC BXLOOP LOPretstart endpcode endsend start。
微型计算机原理与接口技术第六章课后答案pdf
第六章1. CPU与外设交换数据时,为什么要通过I/O接口进行?I/O接口电路有哪些主要功能?答:CPU和外设之间的信息交换存在以下一些问题:速度不匹配;信号电平不匹配;信号格式不匹配;时序不匹配。
I/O接口电路是专门为解决CPU与外设之间的不匹配、不能协调工作而设置的,处于总线和外设之间,一般应具有以下基本功能:⑴设置数据缓冲以解决两者速度差异所带来的不协调问题;⑵设置信号电平转换电路,来实现电平转换。
⑶设置信息转换逻辑,如模拟量必须经 A/D变换成数字量后,才能送到计算机去处理,而计算机送出的数字信号也必须经D/A变成模拟信号后,才能驱动某些外设工作。
⑷设置时序控制电路;⑸提供地址译码电路。
2. 在微机系统中,缓冲器和锁存器各起什么作用?答:缓冲器多用在总线上,可提高总线驱动能力、隔离前后级起到缓冲作用,缓冲器多半有三态输出功能。
锁存器具有暂存数据的能力,能在数据传输过程中将数据锁住,然后在此后的任何时刻,在输出控制信号的作用下将数据传送出去。
3. 什么叫I/O端口?一般的接口电路中可以设置哪些端口?计算机对I/O端口编址时采用哪两种方法?在8086/8088CPU中一般采用哪些编址方法?答:在CPU与外设通信时,传送的信息主要包括数据信息、状态信息和控制信息。
在接口电路中,这些信息分别进入不同的寄存器,通常将这些寄存器和它们的控制逻辑统称为I/O 端口。
一般的接口电路中可以设置数据端口、状态端口和命令端口。
计算机对I/O端口编址时采用两种方法:存储器映像寻址方式、I/O单独编址方式。
在8086/8088CPU中一般采用I/O单独编址方式。
4. CPU与外设间传送数据主要有哪几种方式?答:CPU与外设间的数据传送方式主要有:程序控制方式、中断方式、DMA方式。
程序控制传送方式:CPU与外设之间的数据传送是在程序控制下完成的。
⑴无条件传送方式:也称为同步传送方式,主要用于对简单外设进行操作,或者外设的定时是固定的或已知的场合。
(完整版)汇编语言与接口技术习题解答,推荐文档
习题一解答:1.3(1)[0.0000]原=0.0000 [0.0000]反=0.0000 [0.0000]补=0.0000(2)[0.1001]原=0.1001 [0.1001]反=0.1001 [0.1001]补=0.1001(3)[-1001]原=11001 [-1001]反=10110 [-1001]补=101111.4[N]反=1.0101 [N]原=1.1010 [N]补=1.0110 N=-0.10101.5(1)原码运算:比较可知,正数较大,用正数减负数,结果为正反码运算:01010011-00110011=[01010011]反+[-00110011]反=001010011 +[100110011]反=001010011+111001100=000100000补码运算:01010011-00110011=[01010011]补+[-00110011]补=001010011 +[100110011]补=001010011+111001101=000100000(2)原码运算:比较可知,负数较大,用负数减正数,结果为负反码运算:0.100100-0.110010=0.100100+[1.110010]反=0.100100+1.001101=1.110001补码运算:0.100100-0.110010=0.100100+[1.110010]补=0.100100+1.001110=1.1100101.6(1) (11011011)2=(219)10=(001000011001)BCD(2) (456)10=(010*********)BCD(3) (174)8=(124)10=(000100100100)BCD(4) (2DA)16=(730)10=(011100110000)BCD1.7(1)9876H看成有符号数时,默认为负数的补码,转换为十进制数是:-26506(2)9876H看成无符号数时,转换为十进制数是:390301.8(1)98的压缩BCD码为:10011000B(2)98的非压缩BCD码为:0000100100001000B1.9(1)[S1+S2]补=[S1]补+[S2]补=00010110+00100001=00110111,无溢出[S1-S2]补=[S1]补+[-S2]补=00010110+11011111=11110101,无溢出(2)[S1+S2]补=[S1]补+[S2]补=00010110+11011111=11110101,无溢出[S1-S2]补=[S1]补+[-S2]补=00010110+00100001=00110111,无溢出(3)[S1+S2]补=[S1]补+[S2]补=01100100+00011110=10000010,有溢出[S1-S2]补=[S1]补+[-S2]补=01100100+11100010=01000110,无溢出(4)[S1+S2]补=[S1]补+[S2]补=10011100+11100010=01111110,有溢出[S1-S2]补=[S1]补+[-S2]补=10011100+00011110=10111010,无溢出习题二解答:2.1答:8086有哪些寄存器组?各有什么用途?①通用寄存器AX、BX、CX、DX它既可用作16位寄存器,又可将它拆成高、低8位,分别作为两个独立的8位寄存器使用。
微机原理和接口技术课后习题和参考答案解析(汇编)
微机原理和接口技术课后习题和参考答案解析(汇编)精品文档第一章课后习题1.1 把下列十进制数转换成二进制数、八进制数、十六进制数。
① 16.25 ② 35.75 ③ 123.875 ④ 97/128 1.2 把下列二进制数转换成十进制数。
① 10101.01 ② 11001.0011 ③ 111.01 ④ 1010.1 1.3 把下列八进制数转换成十进制数和二进制数。
① 756.07 ② 63.73 ③ 35.6 ④ 323.45 1.4 把下列十六进制数转换成十进制数。
① A7.8 ② 9AD.BD ③ B7C.8D ④ 1EC 1.5 求下列带符号十进制数的8位补码。
① +127 ② -1 ③ -0 ④ -1281.6 求下列带符号十进制数的16位补码。
① +355 ② -11.7 计算机分那几类?各有什么特点?1.8 简述微处理器、微计算机及微计算机系统三个术语的内涵。
1.9 80X86微处理器有几代?各代的名称是什么? 1.10 你知道现在的微型机可以配备哪些外部设备? 1.11 微型机的运算速度与CPU的工作频率有关吗? 1.12 字长与计算机的什么性能有关?习题一参考答案1.1 ① 16.25D=10000.01B=20.2Q=10.4H② 35.75D=100011.11B=43.6Q=23.CH③ 123.875D=1111011.111B=173.7Q=7B.EH④ 97/128D=64/123+32/128+1/128=0.1100001B=0.604Q=0.C2H 1.2 ①10101.01B=21.25D ② 11001.0011B=25.1875D ③ 111.01B=7.25D ④ 1010.1B=10.5D1.3 ① 756.07Q=111101110.000111B=494.109D ② 63.73Q=110011.111011B=51.922D③ 35.6Q=11101.110B=29.75D ④ 323.45Q=11010011.100101B=211.578D1.4 ① A7.8H=167.5D ② 9AD.BDH=2477.738D③ B7C.8D=2940.551D ④ 1ECH=492D1.5 ① [+127]补=01111111 ② [-1] 补= 11111111③ [-0] 补=00000000 ④[-128] 补=100000001.6 ① [+355] 补= 0000000101100011 ② [-1] 补= 1111 1111 1111 1111 1.7 答:传统上分为三类:大型主机、小型机、微型机。
6/3位微机原理、汇编语言及接口技术课后习题答案
第一章1.1 解:五代,详细见书1.2 解:微型计算机:以大规模、超大规模集成电路为主要部件,以集成了计算机主要部件——控制器和运算器的微处理器为核心,所构造出的计算机系统。
PC机:PC<Personal Computer)机就是面向个人单独使用的一类微机。
单片机:用于控制的微处理器芯片,内部除CPU外还集成了计算机的其他一些主要部件,如:ROM、RAM、定时器、并行接口、串行接口,有的芯片还集成了A/D、D/A转换电路等。
数字信号处理器DSP:主要面向大流量数字信号的实时处理,在宿主系统中充当数据处理中心,在网络通信、多媒体应用等领域正得到越来越多的应用1.3 解:微机主要有存储器、I/O设备和I/O接口、CPU、系统总线、操作系统和应用软件组成,各部分功能如下:CPU:统一协调和控制系统中的各个部件系统总线:传送信息存储器:存放程序和数据I/O设备:实现微机的输入输出功能I/O接口:I/O设备与CPU的桥梁操作系统:管理系统所有的软硬件资源1.4 解:系统总线:传递信息的一组公用导线,CPU通过它们与存储器和I/O设备进行信息交换。
好处:组态灵活、扩展方便三组信号线:数据总线、地址总线和控制总线。
其使用特点是:在某一时刻,只能由一个总线主控设备来控制系统总线,只能有一个发送者向总线发送信号;但可以有多个设备从总线上同时获得信号。
1.5解:<1)用于数值计算、数据处理及信息管理方向。
采用通用微机,要求有较快的工作速度、较高的运算精度、较大的内存容量和较完备的输入输出设备,为用户提供方便友好的操作界面和简便快捷的维护、扩充手段。
<2)用于过程控制及嵌人应用方向。
采用控制类微机,要求能抵抗各种干扰、适应现场的恶劣环境、确保长时间稳定地工作,要求其实时性要好、强调其体积要小、便携式应用强调其省电。
1.6 解:1.7 解:I/O 通道:位于CPU 和设备控制器之间,其目的是承担一些原来由CPU 处理的I/O 任务,从而把CPU 从繁杂的I/O 任务中解脱出来。
微机原理与接口技术(第二版)课后习题答案
微机原理与接口技术(第二版)课后习题答案第1章作业答案1.1 微处理器、微型计算机和微型计算机系统三者之间有什么不同?解:把CPU(运算器和控制器)用大规模集成电路技术做在一个芯片上,即为微处理器。
微处理器加上一定数量的存储器和外部设备(或外部设备的接口)构成了微型计算机。
微型计算机与管理、维护计算机硬件以及支持应用的软件相结合就形成了微型计算机系统。
1.2 CPU在内部结构上由哪几部分组成?CPU应该具备哪些主要功能? 解:CPU主要由起运算器作用的算术逻辑单元、起控制器作用的指令寄存器、指令译码器、可编程逻辑阵列和标志寄存器等一些寄存器组成。
其主要功能是进行算术和逻辑运算以及控制计算机按照程序的规定自动运行。
1.3 微型计算机采用总线结构有什么优点?解:采用总线结构,扩大了数据传送的灵活性、减少了连线。
而且总线可以标准化,易于兼容和工业化生产。
1.4 数据总线和地址总线在结构上有什么不同之处?如果一个系统的数据和地址合用一套总线或者合用部分总线,那么要靠什么来区分地址和数据?解:数据总线是双向的(数据既可以读也可以写),而地址总线是单向的。
8086CPU为了减少芯片的引脚数量,采用数据与地址线复用,既作数据总线也作为地址总线。
它们主要靠信号的时序来区分。
通常在读写数据时,总是先输出地址(指定要读或写数据的单元),过一段时间再读或写数据。
1.8在给定的模型中,写出用累加器的办法实现15×15的程序。
解: LD A, 0LD H, 15LOOP:ADD A, 15DEC HJP NZ, LOOPHALT第 2 章作业答案2.1 IA-32结构微处理器直至Pentillm4,有哪几种?解:80386、30486、Pentium、Pentium Pro、Peruium II 、PentiumIII、Pentium4。
2.6 IA-32结构微处理器有哪几种操作模式?解:IA一32结构支持3种操作模式:保护模式、实地址模式和系统管理模式。
汇编语言与接口技术课后答案(1-8章完整版)-王让定朱莹编(下载后可查看剩余几章内容)
第一章(下载后可查看)第二章1.8086/8088 CPU 的地址总线有多少位?其寻址范围是多少?答:8086/8088 CPU 的地址总线共20位, 最大可寻址1MB空间。
2.8086/8088 CPU分为哪两个部分?各部分主要由什么组成?答:8086/8088 CPU 分为总线接口部件(BIU)和执行部件(EU)两个部分。
其中BIU包括:4 个16 位的段地址寄存器(CS、DS、SS、ES);1个16位的指令指针寄存器IP;1个20位的地址加法器;指令队列寄存器;内部寄存器;输入输出总线控制逻辑;EU包括:4 个16 位的通用数据寄存器(AX、BX、CX、DX);4个16位的专用寄存器(BP、SP、SI、DI);1个16位的标志寄存器FR;4. 8086/8088 CPU 中有几个通用寄存器?有几个变址寄存器?有几个指针寄存器?通常哪几个寄存器亦可作为地址寄存器使用?答:8086/8088 CPU 中共有:8个16位的通用寄存器AX、BX、CX、DX 、BP、SP、SI、DI;2 个变址寄存器SI 、DI;2 个指针寄存器BP、SP;其中BX、BP、SI 、DI 亦可作地址寄存器。
5.8086/8088 CPU 中有哪些标志位?它们的含义和作用如何?答:8086/8088 CPU中共有9个标志位,其中DF、IF 和TF为控制标志位,其余6 个为状态标志位。
它们的含义和作用如下所示:CF(Carry Flag) 进位标志: 若算术运算的结果产生了进位或借位( 对字节操作最高位是D7位;对字操作最高位是D15位),则CF=1,否则CF=0。
PF(Parity/Even Flag) 奇偶标志:如果运算结果中含有偶数个1, 则PF=1,否则PF=0。
此标志位主要用于数据通信中, 检测数据传送有无出错。
AF(Auxiliary Carry Flag) 辅助进位标志: 用于反映一个字节( 字的低字节) 的低4位向高4位有无进位(借位)的情况,有进(借)位时,AF=1,否则AF=0。
微机原理第六章参考答案
一、I/O接口的作用是使微机处理器与外设之间能够有条不紊地协调工作,打到信息交换的目的。
I/O接口的功能有:数据缓冲、设备选择、信号转换、接收、解释并执行CPU命令、中断管理、可编程等功能。
二、I/O端口是接口信息流传送的地址通道。
一般接口电路中有数据端口、命令端口、状态端口等。
三、CPU对I/O端口的编址方式有哪几种?各有什么特点?80X86对I/O端口的编址方式属于哪一种?CPU对I/O端口的编址方式有:统一编址和独立编址。
统一编址的微机系统中,存储器、I/O接口和CPU通常挂接在同一总线上,CPU对I/O端口的访问非常灵活、方便,有利于提高端口数据的处理速度;但是减少了有效的存储空间。
独立编址的微机系统中,I/O地址空间和存储器地址空间可以重叠,CPU需要通过不同的命令来区分端口的存储器。
80X86采用独立编址方式。
四、某微机系统有8个I/O接口芯片,每个接口芯片占用8个端口地址。
若起始地址为9000H,8个接口芯片的地址连续分布,用74LS138作译码器,请画出端口译码电路图,并说明每个芯片的端口地址范围。
74LS138分析下表所列的地址分配情况,可知系统地址信号的译码情况为(图略):●字选:A2~A0直接与接口芯片上的地址信号线连接以寻址每个接口芯片内部的8个端口;●片选:⏹A5~A3接3-8译码器输入端,译码器输出端分别作为8个接口芯片的片选信号;五、由于CPU与外设之间的速度不匹配,所以输入需要缓冲,输出需要锁存。
输入缓冲器就是输入时在外设和CPU之间接一数据缓冲器,当读该缓冲器的控制信号有效时,才将缓冲器的三态门打开,使外设的数据进入系统的数据总线,而其他时间,三态门处于高阻状态,不影响总线上的其他操作。
输出锁存就是在CPU和外设之间接一锁存器,使得有输出指令并且选中该I/O端口时,才使总线上的数据进入锁存器,此后不管总线上的数据如何变化,只要没有再次使锁存器的信号有效,锁存器的输出端就一直保持原来的锁存信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作业:
课本6.5 6.7
第6章补充题参考答案
补充题1:初始化8259A控制器,系统中有一片8259A,中断请求用电平触发,中断类型号为60H~67H,特殊全嵌套方式,不用缓冲方式,采用中断自动结束方式。
8259A端口地址为93H/94H。
编写其初始化程序。
答:
MOV AL, 1BH ;设置ICW1(中断请求信号采用电平触发方式,单片,
OUT 94H, AL
MOV AL, 60H ;设置ICW2(将中断类型码高5位指定为01100)
OUT 93H, AL
MOV AL, 13H ;设置ICW4(用特殊全嵌套方式;用中断自动结束方式;采用非缓冲方式,工作于8088/8086系统)
OUT 93H, AL
补充题2:开关K4的信号输入到中断控制器8259A的IR2,当K4开关合上瞬间,产生中断,在中断服务程序中完成读取开关K0~K3的状态,并在7段数码管上显示数字或符号。
设输出接口的地址为3F2H,输入接口地址为3F3H。
当开关K0~K3的状态分别为0000~1111时,在7段数码管上对应显示’0’~’F’,8259A的端口为3F0H和3F1H.设其中断号为08H~0FH。
1. 设计相关的接口电路,包括8259A的连接。
2. 编写主程序完成初始化8259A和相关中断向量的设置。
3. 编写中断服务程序。
答:
1. 接口电路图
2. 初始化程序:
INPORT EQU 03F3H
OUTPORT EQU 03F2H
PORT8259 EQU 03F0H
……
;设置数码管显示数据
Seg7 DB 3FH,06H,
5BH,4FH,66H,6DH,
7DH,07H,7FH,67H,77H,
7CH,39H,5EH,79H,71H
……
MOV AL, 13H ;设置ICW1(中断请求信号采用边沿触发方式,单片,
MOV DX, PORT8259
OUT DX, AL
MOV AL, 08H ;设置ICW2(将中断类型码高5位指定为00001)
MOV DX, PORT8259+1
OUT DX, AL
MOV AL, 03H ;设置ICW4(用一般全嵌套方式;用中断自动结束方式;
;采用非缓冲方式,工作于8088/8086系统)MOV DX, PORT8259+1
OUT DX, AL
主程序中中断向量设置:
CLI
PUSH DS
XOR AX, AX
MOV DS, AX
MOV BX, n ; 中断类型号
MOV CL,2
SHL BX, CL ;向量表偏移地址=nX4
MOV AX, OFFSET MY_INT
MOV [BX], AX
MOV AX, SEG MY_INT
MOV [BX+2], AX
POP DS
STI
3. 中断服务程序
MY_INT PROC FAR
PUSH AX
PUSH BX
PUSH SI
STI
;中断服务程序:显示K0-K3开关状态
LEA BX, Seg7
MOV AH, 0
MOV DX,INPORT
IN AL, DX
AND AL, 0FH
MOV SI, AX
MOV AL, [BX+SI]
MOV DX, OUTPORT
OUT DX, AL
CLI
POP SI
POP BX
POP AX
MOV AL, 20H ; EOI 命令,00100000B MOV DX, PORT8259
OUT DX, AL ; 写入OCW2
IRET
MY_INT ENDP。