《微机原理与接口技术》课后习题答案.pdf
第一章1.在计算机中为什么使用二进制数存储数据而不使用十进制数存储数据?答:计算机是由大量的电子器件组成的,在这些电子器件中,电路的通和断、电位的高和低,用两个数字符号1”和0”分别表示容易实现。同时二进制的运算法则也很简单,因此,在计算机内部通常用二进制代码来作为内部存储、传输和处理数据。2.完成下列数制之间的转换。(1)01011100B=92D(2)0.10110011B=O.41D(3)135D=1111101B(4)99.4375D=1100011.011 IB3.组合型BCD码和非组合型BCD码有什么区别?写出卜进制数254的组合型BCD数和非组合型BCD数答:1)BCD码是通常的8421码,它 用 4 个二进制位表示一个十进制位,-个字节可以表示两个十进制位,即 00992)非组合BCD码 用 8 个二进制位表示一个十进制位,实际上只是用低4 个二进制位表示一个十进制位0-9,高 4 位任意,但通常默认为03)254(10)=0010 0101 0100(BCD)254(10)=00100101 00000100(BCD)4.ASCII码的编码方法是什么?写出十进制数205和字符串人+8=(3的人5。1码。答:DASCII码的编码方法是使用7位二进制数来表示所有的大写和小写字母,数 字 0 到9、标点符号,以及在美式英语中使用的特殊控制字符2)十进制2制 的 ASCH码 是:011 000 1013)字符串 A+B=CJASCH 码是:412B423D435.机器数与真值有什么区别?机器数有哪些特点?答:1)真值是所表示的数的大小,一般用十进制表征。机器数原码,补码,反码都是机器数一种表现形式,或说都属于机器数2)机器数的特点:-:数的符号数值化 实用的数据有正数和负数,由于计算机内部的硬件只能表示两种物理状态(用0 和 1 表示),因此实用数据的正号“+”或 负 号 在 机 器 里 就 用 一 位 二 进 制 的 0或 1 来区别。通常这个符号放在二进制数的最高位,称符号位,以 0 代表符号“+”,以 1 代表 符 号 因 为 有 符 号 占 据 一 位,数的形式值就不等于真正的数值,带符号位的机器数对应的数值称为机器数的真值。例如二进制真值数-011011,它的机器数为1011011c二:二进制的位数受机器设备的限制。机器内部设备一次能表示的二进制位数叫机器的字长,一台机器的字长是固定的。字 长 8 位叫一个字节(B y te),现在机器字长一般都是字节的整数倍,如字长8 位、16位、32位、64位。6.写出原码、反码、补码的定义,并说明它们有哪些性质。答:1)原码,是一种计算机中对数字的二进制表示方法,是最简单的机器数,数码序列中最高位为符号位,符号位为0 表示正数,符号位为1表示负数;其余有效值部分用二进制的绝对值表示2)反码,是计算机中表示二进制数的种方法,若原码的符号位不变,对其余位逐位取反,即得到其反码3)补码,正数的补码与原码相同,负数的补码:符 号 位 为 1,其余位为该数绝对值的原码按位取反,然后整个数加L4)性质7.计算机中为什么采用补码形式存储数据?当计算机的字长n=16时,补码的数据表示范围是多少?答:原因:1)因为使用补码可以将符号位和其他位统一处理,同时,减法也可以按加法来处理2)两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃当计算机的字长n=16时,补码的数据表示范围是:一3 2 7 6 8+327678.设机器字长n=8,求下列各数的原码、反码和补码。(1)X=+11O1OO1B原码:X=01101001 反码:X=01101001 补 码:X=01101001(2)X=+1111000B原码:x=oiiiiooo 反码:x=oinlooo 补 码:x=oim ooo(3)X=-1000000B原 码:x=iioooooo 反码:x=io in n i 补 码:x=noooooo(4)X=-110101 IB原码:X=11101011 反 码:X=10010100 补 码:X=100101019.微型计算机系统的硬件由哪些部件组成?简述它们的主要功能。答:构成计算机的硬件系统通常有“五大件”组成:输入设备、输出设备、存储器、运算器和控制器。输入设备:将数据、程序、文字符号、图象、声音等信息输送到计算机中。常用的输入设备有,键盘、鼠标、数字化仪器、光笔、光电阅读器和图象扫描器以及各种传感器等。输出设备:将计算机的运算结果或者中间结果打印或显示出来。常用的输出设备有:显示器、打印机、绘图仪等。存储器:将输入设备接收到的信息以二进制的数据形式存到存储器中。存储器有两种,分别叫做内存储器和外存储器。运算器:是完成各种算术运算和逻辑运算的装置,能作加、减、乘、除等数学运算,也能作比较、判断、查找、逻辑运算等。控制器:是计算机机指挥和控制其它各部分工作的中心,其工作过程和人的大脑指挥和控制人的各器官一样10.CPU执行指令时,通常需要哪些步骤?答:取指令-分析指令-执行指令。11.简述计算机的基本工作原理。答:计算机的基本原理是存贮程序和程庄控制。预先要把指挥计算机如何进行操作的指令序列(称为程序)和原始数据通过输入设备输送到计算机内存贮器中。每一条指令中明确规定了计算机从哪个地址取数,进行什么操作,然后送到什么地址去等步骤12.微型计算机的主要性能指标有哪些?答:常用的微型计算机性能指标主要有:字长,主频,内存容量,指令书,基本指令执行时间,可靠性,兼容性,性能价格比等。13.微型系统中采用了哪些先进技术?简述这些先进技术的主要特点。答:微型系统中采用的先进技术:第一章-HF-1.8086/8088 CPU可直接寻址多少个内存(字节)单元?多少个I/O端口?它们的外部数据总线各有多少根?答:8086可寻址1M个内存单元,65536个 I/O端口,外部有16根数据线8088可寻址1M个内存单元,256个 I/O端口,外部有8 根数据线。2.8086 CPU由那两部分组成?它们大致是如何工作的?答:8086CPU由指令执行单位和总线接口单元两大部分构成工作过程:1)读存储器2)EU从指令队列中取走指令,经 EU控制器译码分析后,向各部件发控制命令,已完成执行指令的操作3)指令队列满,则 BIU处于空闲状态4)指令执行过程中,如果需要进行存取数据,EU就要求BIU完成相应的总线周期5)在程序转移时,先晴空队列,再去新的地址处取之6)ALU完成算术运算,逻辑运算或移位操作3.CPU、EU和 B IU 的英文全称和中文含义各是什么?答:CPU的英文全称是Central Processing Unit,中文名称即中央处理单元,也称为微处理器是微型计算机的核心部件,由运算器A L U,控制器,寄存器组以及总线接口等部件组成,主要完成各种运算,负责对整机的控制EU 与 BIU4.8086 CPU有哪些寄存器?各有什么用途?答:寄存器AX,AL:在乘法指令中,存放乘数和乘积;在除法指令中,存放被除数和商;在未组合BCD码运算的校正指令中;在某些串操作指令(LODS,STOS,SCAS)中在输入输出指令中作数据寄存器寄存器AH:在 LAHF指令中作目的寄存器寄存器AL:在组合型B C D 码的加减法校正指令中在 XLAT指令中作目的寄存器寄存器BX:在 XLST指令中基址寄存器寄存器CX:在循环指令中作循环次数计数器寄存器CL:在移位指令中作移位次数计数器寄存器DX:在字数据的乘法和除法指令中辅佐累加器寄存器SP:在堆栈操作中作堆栈指针寄存器SI:在串操作指令中作源变址寄存器寄存器DI:在串操作指令中作目的变址寄存器5.两个带符号数1011 0100B和 1100 0111B相加运算后各标志位的值是多少?哪些标志位是有意义的?答:两个带符号数1011 0100B和 1100 011 1B相加运算后各标志位的值是101111011PF=1,ZF=0,SF=0,OF=1 是有意义的6.说明下列8086引脚信号的功能AD15ADO、A19/S6-A16/S3,错误!不能通过编辑域代码创建对象八错误!不能通过编辑域代码创建对象。、M/错误!不能通过编辑域代码创建对象。、CLK、RESET INTR,NML ALE、DT/错误!不能通过编辑域代码创建对象BL,CF=0,ZF=0(2)若 AL,B L中内容是两个有符号数,结果又如何?影响哪几个标志位?答:此时 ALBL,OF=0,SF=O第四章1.编一个程序,统计一个8 位二进制数中的为“1”的位的个数。答案:假设A L中存放的是需要的8 位数xor ah,ahmov ex,8loop 1:sal al,l;左移adc ah,0;加 CFloop loop 1最终结果A H 中 为 1 的个数。2.编一个程序,使放在DATA及 DATA+1单元的两个8 位带符号数相乘,乘积放在DATA+2及 DATA+3单元中(高位在后)。-先运行如下s q l,建立一个合并函数create function fmcrg(coinpany varchar(200)returns varchar(8000)asbegindeclare str varchar(8000)set str=Hselect str=str+7-tjobname from zhaopin where company=company setstr=right(str,len(str)-1)retum(str)Endgo-调用自定义函数得到结果select distinct company,dbo.fiTierg(company)from zhaopin3.若在自1000H单元开始有一个100个数的数据块,要把它传送到自2000H开始的存储区中去,用以下三种方法,分别编制程序:(1)不用数据块传送指令;(2)用单个传送的数据块传送指令;(3)用数据块成组传送指令。解:(1)LEAST,1000HLEADI,2000HMOVCX,100L1:MOVAX,SIMOVDI,AXLOOPLIHLT(2)LEASI,1000HLEADI,2000HMOVCX,100CLDL1:MOVSBLOOP LIHLT(3)LEAST,1000HLEADI,2000HMOVCX,100CLDREPMOVSBHLT4.利用变址寄存器,编一个程序,把 自 1000H单元开始的100个数传送到自1070H开始的储存区中去。解:HLTLEASI,1000HLEADI,1070HMOVCX,100CLDREPMOVSBHLT5.要求同题4,;源地址为2050H,目的地址为2000H,数据块长度为50。解:LEA SI,2050HLEADI,2000HMOVCX,50CLDREPMOVSBHLT6.编一个程序,把 自 1000H单元开始的100个数传送至1050H开始的存储区中(注意据区有重叠)。解:LEASI,1000HLEADI,1050HADDSI,63HADDDI,63HMOVCX,100STDREPMOVSB:数7.在自0500H单元开始,存 有 100个数。要求把它们传送到1000H开始的存储区中,但在传送过程中要检查数的值,遇到第一个零就停止传送。解:LEAsi,0500HLEADI,1000HMOVex,100Nl:MOVAL,SICMPAL,0JZ N2MOV DI,ALINC SIINC DILOOP N1N2:HET8.条件同题7,但在传送过程中检查数的值,零不传送,不是零则传送到目的区。解:MOVSI,0500HMOVDI,1000HMOVCX,100N1:MOVAL,SICMPAL,0JZN2MOVDI,ALN2;INCSIINCDILOOPN1HLT9.把 在 题7中指定的数据块中的正数,传送到自1000H开始的存储区。MOV SI,0500HMOVDI,1000HMOVe x,100N l:MOVAL,SICMPAL,0JSN2MOVDI,ALINCDIN2;INCSILOOPN1HLT10.把在题7中指定的数据块中的正数,传送到自1000H开始的存储区;而把其中的负数,传送到自U 0 0 H开始的存储区。且分别统计正数和负数的个数,分别存入1200H和1201H单元中。MOV SI,0500HMOVDI,1000HMOVBX,11 OOHMOVe x,100HMOVDX,0N l:MOVAL,SICMPAL,0JSN2MOVDI,ALINCDLINCSIHLTINCDIJMPN3N2:MOVBX,ALINCDHINCSIINCBXN3:LOOP NlMOVBX,1200HMOVBX,DLMOVBX+1,DH11.自0500H单元开始,有 10个无符号数,编个程序求这10个数的和(用 8 位数运算指令),把和放到050A及 050B单元中(利用两个字节表示),且高位在050B单元。解:LEABX,0500HMOVAX,0MOVCL,10MOVDL,BXADDAL,DLADCAH,0INCBXDECCLJNZNlMOV050AH,AX12.自0200H单元开始,有 100个无符号数,编一个程序求这100个数的和(用 8 位数运算指令),把和放在0264H和 0265H单元(和用两字节表示),且高位在0265H单元。解:LEA BX,0200HN l:MOVAX,0MOVCL,100MOVDL,BXADDAL,DLADCAH,0INCBXDBCCLJNZNlMOV0264H,AL第五章1.什么是存储器系统?微机中的存储器系统主要分为哪几类?设计目标是什么?答:(1)存储器系统:将两个或两个以上速度、容量和价格各不相同的存储器用软件、硬件或软硬件结合的方法连接起来成为一个系统。(2)微机中的存储器系统主要分为两种:由Cache和主存储器构成的Cache存储系统,有主存储器和磁盘构成的虚拟存储系统。(3)前者的目标是提高存取速度而后者的主要目标是增加存储容量。2.内部存储器主要分为哪两类?它们的主要区别是什么?答:(1)分为ROM和 R A M(2)主要区别是:ROM在正常工作时只能读出,不能写入,R A M 则可读可写。断电后,R O M 中的内容不会丢失,RAM中的内容会丢失。3.为什么动态RAM需要定时刷新?答:D R A M 的存储元以电容来存储信息,由于存在漏电现象,电容中存储的电荷会逐渐泄露,从而使信息丢失或出现错误。因而需要对这些电容进行定时刷新。4.CPU寻址内存的能力最基本的因素取决于?答:地址总线的宽度。5.内存地址从20000H8BFFFH共有多少字节?答:共有 8BFFFH20000H+1=6 C 0 0 0 H 个字节若采用6264芯片构成第7 题中的内存空间,需要多少片6264?答:每个6264芯片的容量位8 K B,故需432/8=54片。7.设某微型机内存RAM 区的容量为128KB,若 有 2164芯片构成这样的存储器需多少片2164?至少需要多少根地址线?其中多少根用于片内寻址?答:需 16片 2 1 6 4,至少需17根地址线,需 要 16根用于片内寻址。8.什么是字扩展?什么是位扩展?用户自己购买内存条进行内存扩充,是在进行何种存储器扩展?答:当存储芯片的容量小于所需内存容量时,需要用多个芯片构成满足容量要求的存储器,这就是字扩展。当存储芯片每个单元的字长小于所需内存单元字长时,需要用多个芯片构成满足字长要求的存储模块,这就是位扩展。用户自己购买内存条进行内存扩充,所做的是字扩展的工作。/r/r t第 八 早1.I/O接口的作用是什么?具有哪些主要功能?I/O接口是-电子电路(以 IC 芯片或接口板形式出现),其内有若干专用寄存器和相应的捽制逻辑电路构成。它是CPU和 I/O设备之间交换信息的媒介和桥梁。作用:对于主机,I/O接口提供了外部设备的工作状态及数据;对于外部设备,I/O接口记忆了主机送给外设的切命令和数据,从而使主机与外设之间协调一致地工作。功能:进行端口地址译码设备选择、向 CPU提 供 I/O 设备的状态信息和进行命令译码、进行定时和相应时序控制、对传送数据提供缓冲,以消除计算机与外设在“定时”或数据处理速度上的差异。提供计算机与外设间有关信息格式的相容性变换。提供有关电气的适配、还可以中断方式实现CPU与外设之间信息的交换。2.CPU与 I/O接口之间传送的信息有哪些?各表示什么含义?C P U 与 I/O 接口电路之间传送的信息有数据信息,包括三种形式:数字量、模拟量、开关量;状态信息是外设通过接口往CPU传送的,如:“准备好”(READY)信号、“忙”(BUSY)信号;控制信息是CPU通过接口传送给外设的,如:外设的启动信号、停止信号就是常见的控制信息3.CPU与 I/O设备数据传送的控制方式有哪几种?它们各有什么特点?CPU与 I/O设备传输数据的控制方式通常有三种:程序方式、中断方式和DMA方式。程序方式:指用输入/输出指令,来控制信息传输的方式,是一种软件控制方式,根据程序控制的方法不同,又可以分为无条件传送方式和条件传送方式。中断控制方式是利用向CPU发送中断的方式控制外围设备和CPU之间的数据传送。它的优点是大大提高了 CPU的利用率且能支持多道程序和设备的并行操作。它的缺点是由于数据缓冲寄存器比较小,如果中断次数较多,仍然占用了大量CPU时间;在外围设备较多时,由于中断次数的急剧增加,可能造成CPU无法响应中断而出现中断丢失的现象;如果外围设备速度比较快,可能会出现CPU来不及从数据缓冲寄存器中取走数据而丢失数据的情况。存储器直接存取方式(DMA):外设利用专用的接口(DMA控制器)直接与存储器进行高速数据传送,并不经过CPU(CPU不参与数据传送工作),总线控制权不在CPU处,而由DM A控制器控制。其特点是接口电路复杂,硬件开销大。大批量数据传送速度极快。适用于存储器与存储器之间、存储器与外设之间的大批量数据传送的场合。4.什么叫端口?I/O端口的编址方式有哪两种?它们各有什么特点?解:端口指输入/输出接口中的寄存器I/O端口有两种编址方式;统一编址方式是将I/O 端口与内存单元统一起来进行编号。该方式优点是不需要专门的I/O指令,对 I/O端口操作的指令类型多;缺点是端口要占用部分存储器的地址空间,不容易区分是访问存储器还是外部设备。独立编址的端口单独构成I/O地址空间,不占用存储器地址。优点是地址空间独立,控制电路和地址译码电路简单,采用专用的I/O指令,使得端口操作的指令在形式上与存储器操作指令有明显区别,程序容易阅读;缺点是指令类别少,一般只进行传送操作。5.8255A的三种工作方式的特点是什么?各适合使用在什么场合?方式0:没有固定的用于应答式传送的联络信号线,CPU可以采用无条件传送方式与8255A交换数据。方 式 1:有专用的中断请求和联络信号线,因此,方 式 1经常用于查询传送或中断传送方式。方式2:PA 口为双向选通输入/输出或双向应答式输入/输出.6.设 8255A的 A 口工作于方式1 输出,B 口工作于方式0 输入,试编写初始化程序(设端口地址为40H 43H)。解:MOV DX,43HMOV AL,10100010B(A2H)OUT DX,AL7.使 用 8255A作为开关和LED指示灯的接口。要求8255A的 A 口连接8 个开关,B 口连接 8 个 LED指示灯,将 A 口的开关状态读入,然后送至B 口控制指示灯亮、灭。试画出接口电路设计图,并编写程序实现之。解:电路图参见教材P193图 7-14。A 口接入8 个开关,B 口用LED替代数码管,共阴接法。设 8255四个端口的地址为FFEOH FFE3H。DATA SEGMENTPORTA EQU OFFEOHPORTB EQU 0FFE1HCONTR EQU 0FFE3HDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV AL,90H;初始化8255,PA为输入,PB为输出MOV DX,CONTROUT DX,ALL0:MOV DX,PORTA;读 PA 口IN AL,DXNOT AL;按下开关灯亮MOV DX,PORTBOUT DX,AL;送 PB 口显示MOV CX,1000;延时LI:DEC CXJNZL1JMPLOCODE ENDSEND START8.在甲乙两台微机之间并行传送1 K B的数据,甲机发送,乙机接收。要求甲机一侧的8255A工作在方式1,乙机一侧的8255A工作在方式0,双机都采用查询方式传送数据。试画出通信接口电路图,并编写甲机的发送程序和乙机的接收程序。方式1乙(接收)CPU方式0甲 发送)CPU1 甲机发送程序段MOVDX,303H;8255A命令目MOVAL,10100000B;初始化工作方式字OUTDX,ALMOVAL,0DH;置发送中断允许INTEA=1OUTDX,AL;PC6=1MOVSI,OFFSET BUFS;设置发送区的指针MOVCX,3FFH;发送字节数MOVDX,300H;向 A 口写第一个数,产生;第一个OBF信号MOVAL,SI;送给乙方,以便获取乙方的;ACK信号OUTDX,ALINCSI;内存地址加1DECe x;传送字节数减1L:MOV DX,302H;8255A 状态口INAL,DX;查发送中断请求INTRA=1?ANDAL,08H;PC3=1JZL;若无中断请求,则等待;若有中断请求,则向A 口写数MOVDX,300H;8255APA 口地址MOVAL,SI;从内存取数OUTDX,AL;通过A 口向乙机发送第二个数据INCSI;内存地址加1DECe x;字节数减1JNZL;字节未完,继续MOVAH,4C00H;已完,退出INT21H;返回DOSBUFSDB 1024个数据2、乙机接受数据MOVMOVOUTDX,303HAL,10100000BDX,AL;8255A 命令口;初始化工作方式字MOVAL,00000111B;置 而 l=l(PC3=l)OUTDX,ALMOVSI,OFFSET BUFR;设置接收数据的指针MOVCX,3FFH;接收字节数L1:MOV DX,302H;8255APC 口INAL,DX渣甲机的OBF=0?ANDAL,80H;(乙机的PC7=0);即查甲机是否有数据发来JNZLI;若无数据请求,则等待MOVDX,300H;若有数据,则从口读取;8255A PA 口地址INAL,DX;从A 口读入数据MOVDI,AL;存入内存MOVDX,303H;产生ACK信号,并发给甲机MOVAL,00000110B;PC3 置“0”OUTDX,ALNOPNOPMOVAL,00000111B;PC3 置TOUTDX,ALINCDI;内存地址加1DECCX;字节数减1JNZLI;字节未完,则继续MOVAX,4C00H;已完,退出INT21H;返回DOSBUFRDB IO24DU(?9.8254定时/计数器有哪几种工作方式?它们的主要特点是什么?共有六种工作方式,分别对应与六种不同的用途。解:方式0:计数结束方 式 1:可重复触发的单稳态触发器方式2:分须器方式3:方波发生器方式4:软件触发的选通信号发生器方式5:硬件触发的选通信号发生器1 0.利用8254的通道1,产生500 H z的方波信号。设输入时钟频率CKL1=2.5 M H z,端口地址为FFAOH-FFA3H,试编制初始化程序。解:MOVAL,01110110BMOV DX,0FFA3HOUT DX,ALMOV AX,5000;2.5MHz/500Hz5000MOV DX,0FFA1HOUT DX,ALMOV AL,AHOUT DX,AL11.某系统使用8254的通道0 作为计数器,计 满 1 0 0 0,向 CPU发中断请求,试编写初始化程序(端口地址自设)。解:设端口地址为80H-83HMOVAL,00110000BOUT 83H,ALMOV AX,1000OUT 80H,ALMOV AL,AHOUT 80H,AL12.采用8254的通道0 产生周期为10 m s的方波信号,设输入时钟的频率为100kHz,8254的端口地址为38H 3 B H,试编写初始化程序。解:MOVAL,00110110BOUT 3BH,ALMOV AX,1000;10ms*100kHz=1000OUT38H,ALMOV AL,AHOUT38H,AL注意:计数值的高低字节的装入;13.串行通信有哪几种通信方式?它们的特点是什么?有同步通信和异步通信两种(1)同步通信同步通信是一种连续串行传送数据的通信方式,一次通信只传送一帧信息。这里的信息帧与异步通信中的字符帧不同,通常含有若干个数据字符。它们均由同步字符、数据字符和校验字 符(CRC)组成。其中同步字符位于帧开头,用于确认数据字符的开始。数据字符在同步字符之后,个数没有限制,由所需传输的数据块长度来决定;校验字符有1 到 2 个,用于接收端对接收到的字符序列进行正确性的校验。同步通信的缺点是要求发送时钟和接收时钟保持严格的同步。(2)异步通信异步通信中,在异步通信中有两个比较重要的指标:字符帧格式和波特率。数据通常以字符或者字节为单位组成字符帧传送。字符帧山发送端逐帧发送,通过传输线被接收设备逐帧接收。发送端和接收端可以由各自的时钟来控制数据的发送和接收,这两个时钟源彼此独立,互不同步。接收端检测到传输线上发送过来的低电平逻辑0(即字符帧起始位)时,确定发送端已开始发送数据,每当接收端收到字符帧中的停止位时,就知道一帧字符已经发送完毕。14.异步串行通信的数据格式是什么?异步通信数据帧的第一位是开始位,在通信线上没有数据传送时处于逻辑“1”状态。当发送设备要发送一个字符数据时,首先发出一个逻辑“0”信号,这个逻辑低电平就是起始位。起始位通过通信线传向接收设备,当接收设备检测到这个逻辑低电平后,就开始准备接收数据位信号。因此,起始位所起的作用就是表示字符传送开始。当接收设备收到起始位后,紧接着就会收到数据位。数据位的个数可以是5,6,7 或 8 位的数据。在字符数据传送过程中,数据位从最低位开始传输。数据发送完之后,可以发送奇偶校验位。奇偶校验位用于有限差错检测,通信双方在通信时需约定一致的奇偶校验方式。就数据传送而言,奇偶校验位是冗余位,但它表示数据的一种性质,这种性质用于检错,虽有限但很容易实现。在奇偶位或数据位之后发送的是停止位,可以是1 位、1.5 位 或 2 位。停止位是一个字符数据的结束标志。在异步通信中,字符数据以图所示的格式一个一个地传送。在发送间隙,即空闲时,通信线路总是处于逻辑“1”状态,每个字符数据的传送均以逻辑“0”开始。15.什么是波特率?假设异步传输的一帧信息由1位起始位、7 位数据位、1 位校验位和1位停止位构成,传送的波特率为9 6 0 0,则每秒钟能传输的字符个数是多少?解:波特率表示每秒钟传送二进制的位数。每秒钟能传输的字符个数为9600/10=96016.一个异步串行发送器,发送的字符格式为:1 位起始位,7 位数据位,1 位奇偶校验位和 2 位停止位,若每秒发送100个字符,则其波特率为多少?解:波 特 率 为 100X11=1100.17.RS 232c的逻辑电平是如何定义的?它与计算机连接时,为什么要进行电平转换?EIA-RS-232C对电器特性、逻辑电平和各种信号线功能都作了规定。在 TxD和 RxD上:逻辑 1(MARK)=-3V-15V逻辑 0(SPACE)=+3 +15V在 RTS、CTS、DSR、DTR和 DCD等控缶“线上:信号有效(接通,ON状态,正电压)=+3V+15V信号无效(断开,OFF状态,负电压)=-3V-15V以上规定说明了 RS-232c标准对逻辑电平的定义。对于数据(信息码):逻 辑“1”(传号)的电平低于-3 V,逻 辑“0”(空号)的电平高于+3V:对于控制信号;接通状态(ON)即信号有效的电平高于+3 V,断开状态(O F F)即信号无效的电平低于-3 V,也就是当传输电平的绝对值大于3V 时,电路可以有效地检查出来,介于-3+3V之间的电压无意义,低于-15V或高于+15V的电压也认为无意义,因此,实际工作时,应保证电平在土(315)V 之间。EIARS-232C与 TTL转换:EIARS-232C是用正负电压来表示逻辑状态,与 TTL以高低电平表示逻辑状态的规定不同。因此,为了能够同计算机接口或终端的TTL器件连接,必须在EIARS-232c与 TTL电路之间进行电平和逻辑关系的变换。实现这种变换的方法可用分立元件,也可用集成电路芯片。目前较为广泛地使用集成电路转换器件,如 MC1488、SN75150芯片可完成TTL电平到EIA电平的转换,而 MC1489、SN75154可实现EIA电平到 TTL电平的转换。MAX232芯片可完成T T L-E IA 双向电平转换。第七章1.在中断响应过程中,8086往 8259A发的两个INTA#信号分别起什么作用?解:59A接收到第一个/INTA有效的负脉冲后,将被响应的中断源置入ISR(正在服务寄存器)的对应位,即 ISR对应位置1,同时把IRR(中断请求寄存器)的对应位清0;当 8259A接收到第二个/INTA有效的负脉冲后,就将其中断类型号送入数据总线。2.8086最多可有多少级中断?按照产生中断的方法分为哪两大类?解:8086最多可有8 级中断。按照产生中断的方法分为硬件中断和软件中断两大类。3.非屏蔽中断有什么特点?可屏蔽中断有什么特点?分别用在什么场合?解:非屏蔽中断不受CPU中断标志的影响,无论中断标志是允许中断或禁止中断,在非屏蔽中断引线上的中断请求,C PU 在当前指令执行完以后,都要影响此中断。可屏蔽中断则受中断标志影响,只是在开中断(允许中断)情况下,C PU 才响应可屏蔽中断。非屏蔽中断,使用在CPU必须要响应的场合,例如电源故障等4.什么叫中断向量?它放在哪里?对应于ICH 的中断向量存放在哪里?如 果 1CH的中断处理子程序从5110H:2030H开始,则中断向量应怎样存放?答:中断向量是用来提供中断入口地址的一个地址指针;对应于1CH的中断向量存放在1CHX4=7OH开始的4 个单元如 果 1CH的中断处理子程序从5110H:2030H开始,则中断向量应如下存放:0070H:30H0071H:20H0072H:10H0073H:51H5.从 8086/8088的中断向量表中可以看到,如果一个用户想定义某个中断,应该选择在什么范围?解:从 8086/8088的中断向量表中可以看出,由于系统占用了部分中断类型码,主要包括:(1)专用中断:0 4,占中断向量表000 013H。(2)系统备用中断:5 31H(3)用户使用中断:32H-0FFH如果一个用户想定义一个中断,可以选择中断类型码32H-FFH,其中断向量在中断向量表的 0C8H-01BFH。6.非屏蔽中断处理程序的入口地址怎样寻找?解:非屏蔽对应类型2,它位于中断向量表0000:0008H-0000:000BH处,4 个单元的值即为非屏蔽中断处理程序的入口地址:08H、09H放偏移量,OAH、0BH放段地址。7.叙述可屏蔽中断的响应过程,一个可屏蔽中断或者非屏蔽中断响应后,堆栈顶部四个单元中是什么内容?解:当 CPU在 INTR引脚上接受一个高电平的中断请求信号并且当前的中断允许标志为1,CPU就会在当前指令执行完后开始响应外部的中断请求,具体如下:1、从数据总线上读取外设送来的中断类型码,将其存入内部暂存器中;2、将标志寄存器的值推入堆栈;3、将标志寄存器中IF和 TF清零;4、将断点保护到堆栈中;5、根据中断类型获取中断向量转入中断处理子程序;6、处理完后恢复现场。响应后堆栈的顶部4 个单元是IP,CSo8.一个可屏蔽中断请求来到时,通常只要中断允许标志为1,便可在执行完当前指令后响应,在哪些情况下有例外?解:如果发出中断请求信号时,正好碰到CPU执行封锁指令,由于CPU封锁指令和下一条指令合在一起看成一个整体,所以必须等到下一条指令执行完后才响应中断。如果是执行往寄存器传送数据指令,那一定要等下条指令执行完后,才允许中断。无总线请求;CPU执行完当前指令。9.在编写中断处理子程序时,为什么要在子程序中保护许多寄存器?解:因为在用户程序运行时,会在寄存器中有中间结果,当在中断服务程序中要使用这些寄存器前要把这些寄存器的内容推至堆栈保存(称为保护现场)。在从中断服务程序返回至用户程序时把这些内容从堆找恢复至寄存器中(称为恢复现场)。10.中断指令执行时,堆栈的内容有什么变化?中断处理子程序的入口地址是怎样得到的?解:中断指令执行时,堆栈内容变化如下:标志寄存器被推入堆栈,且 SP减 2,然后CPU将主程序的下一条指令地址即断点地址推入堆栈,即段值C S推入堆栈且SP减 2,偏移量推入堆栈,且 SP减 2。中断处理子程序的入口地址即中断向量,对应的中断类型号的4 倍即为中断向量地址,在该地址处的4 个字节内容,高地址单元两个字节为中断入口地址的段地址,低地址单元两个字节为中断入口地址的偏移地址11.中断返回指令IRET和普通子程序返回指令RET在执行时,具体操作内容有什么不同?解:因为在响应中断时,CPU保护标志寄存器和保护断点。所以,1RET指令要恢复断点和标志寄存器。12.若在一个系统中有五个中断源,它们的优先权排列为:1、2、3、4、5,它们的中断服务程序的入口地址分别为:3000H、3020H、3050H、3080H、30A0H。编一个程序,使得当有中断请求CPU响应时,能用查询方式转至申请中断的优先权最高的源的中断服务程序。13.设置中断优先级的目的是什么?解:若有多个外设同时请求中断,它们之间是有轻重缓急的,设置中断优先级就能使CPU按照轻重缓急的要求来响应中断。而且,设置了中断优先级可以使优先级高的中断比优先级低的中断优先处理,实现中断嵌套。14.可编程中断控制器8259A在中断处理时,协助CPU完成哪些功能?解:在中断响应周期,8259A可为CPU提供响应的中断类型码15.8259A具有哪些中断操作功能?指出与这些功能相对应的控制字(ICW/OCW)的内容?解:ICW1的 D4必须为k DO确定是否送IC W 4,若根据选择ICW4的各位应为0,则可令D0位(即 IC4)为 0,则不送ICW4。D1位 SN GL,规定系统中是单片8259A工作还是级连工作。D2位 A D L 规定CALL地址的间隔,D 2=l,则间隔为4,这适用于建立一个转移指令表;D 2=0,则间隔为8。D3位 LTIM,规定中断请求输入线的触发方式,D 3=l为电平触发方式,此时边沿检测逻辑断开;D3=0则为边沿触发方式。解 ICW1的 D 4必须为1。D0确定是否送ICW4,若根据选择ICW4的各位应为0,则可令D0位(即 IC4)为0,则不送ICW4。D 1位 SN G L,规定系统中是单片8259A工作还是级连工作。D 2位 A D I,规 定 CALL地址的间隔,D 2=l,则间隔为4,这适用于建立一个转移指令表;D2=0,则间隔为8。D3位 LTIM,规定中断请求输入线的触发方式,D 3=l为电平触发方式,此时边沿检测逻辑断开;D3=0则为边沿触发方式。16.什么是中断响应周期?在中断响应中8086CPU和 8259A一般完成哪些工作?解:中断响应周期是从用户程序至中断服务程序的过渡周期。在第一个中断响应周期,8259A确定中断的优先级;在第二个中断响应周期,8259A送出中断向量,C PU 获取此向量转至中断服务程序的入口。17.8086有哪几种中断?哪些是硬件中断?哪些是软件中断?解:8086CPU有两种中断:软件中断由指令的执行所引起的;硬件中断由外部(主要 是 外 设)的 请 求 所 引 起 的。(1)外 部 中 断 8 0 8 6 有 两 条 外 部 中 断 请 求:NMI-non maskable interrupt(非屏蔽中断)和 INTR(可屏蔽中断)。(2)内部中断8086