您好,欢迎访问三七文档
《微机系统与接口技术作业》部分参考答案第7章存储器系统P2176.某SRAM存储芯片,其字位结构为512K×8bit,试问其地址、数据引脚各是多少个?答:∵219=512K,所以地址引脚需19根;数据引脚需8根(8bit)。8.现有1024×1bit的存储芯片,若用它组成容量为16K×8bit的存储器。试求:(1)实现该存储器所需的芯片数量答:(16K×8bit)/(1K×1bit)=128片(2)该存储器所需地址的地址码总位数是多少?其中几位选片?几位用作片内地址?答:∵214=16K,所以地址码总位数为14位。而1024×1bit存储芯片需要地址10位,因此选片地址为4位,片内地址为10位。第8章输入/输出系统P2442.接口电路的作用是什么?I/O接口应具备哪些功能?参见教材P2193.什么是端口?端口有几类?参见教材P2208.1.2输入输出端口4.I/O端口有哪两种编址方式?PC系列机采用哪种编址方式?答:I/O端口和存储单元统一编址及I/O端口独立编址两种。PC机采用I/O端口独立编址。7.定时/计数器的3个通道在PC系列机中是如何应用的?答:0#计数器用于系统时钟中断;1#计数器用于动态存储器刷新定时;2#计数器用于发声系统音调控制。10.系统机定时/计数器的通道0定时周期最长是多少?要实现长时间定时,应采取什么措施?如果采用外扩8254定时/计数器实现长时间定时,应采取哪些措施?答:系统机定时/计数器通道0定时周期最长是55ms。要实现长时间定时,只能使用INT1CH中断的方法,通过对预先设定的中断次数进行计数,达到n倍55ms的定时目的。采用外扩8254,可以使用三个通道硬件级联的方法实现长时间定时。1补充题:设PC系统机外扩了一片8254及相应的实验电路。(1)根据由门电路构成的译码电路,分析出该片8254的四个端口地址。其中控制口的地址是213H(填16进制格式)。其他三个端口地址是210H~212H。(2)设CLK0已接至8MHz时钟,为了能从OUT0输出4KHz的方波,编写8254初始化程序,其中假设0号定时计数器工作在二进制方式。解:计数初值=(8×106)/4000=2000MOVDX,213H;8254控制口地址MOVAL,00110110B;命令字,0通道,16位读写,方式3,二进制计数OUTDX,ALMOVDX,210H;0通道计数器端口地址MOVAX,2000;计数初值2000,因是二进制计数,所以后面不能加HOUTDX,AL;先送低8位MOVAL,AHOUTDX,AL;再送高8位第9章中断系统P3001.叙述可屏蔽中断处理的全过程。参见教材P254倒数第4行的“2.8259A的中断过程“段落中的介绍,总共有7个要点。23.什么是中断向量和中断向量表?中断类型码和中断向量的关系是什么?答:中断服务程序的入口地址就是中断向量,它由服务程序所在段的段地址和服务程序入口的偏移地址两部分组成。将PC机256个中断向量放在系统最低端的1K字节范围内(地址为0000H:0000H~0000H:03FFH)就构成了中断向量表。中断类型码是为了区分不同中断而分配的一个n值号码,数值从0-255。应用时,不管是软件中断或硬件中断,直接引用的都是中断类型码n。当软件或硬件提供中断类型码n后,CPU自动将中断类型码n乘以4得到中断向量表中的一个地址,从此地址开始连续四个单元存放的是该型中断的中断向量。因此,知道了中断类型码,则唯一确定了中断向量存放在中断向量表中的位置,CPU从表中获取该中断向量,根据CS:IP的值就可转向服务程序。注意:前两个单元存放的是IP,后面两个单元存放的是CS。5.CPU响应可屏蔽中断的条件是什么?答:见教材P263倒数第3行开始的3个要点。6.CPU响应非屏蔽中断的条件是什么?答:见教材P264第2行开始的2个要点。8.键盘硬中断和键盘软中断的关系是什么?答:键盘硬中断(9型中断)负责实时接收键盘输入的键代码,并写入到键盘缓冲区中,而用户程序通过键盘软中断(INT16H)从键盘缓冲区中读取信息。键盘缓冲区存取数据遵循先进先出的规律,它在键盘硬中断和INT16H软中断之间起到传递信息缓冲的作用。补充题:假设微机系统外扩了如下的一个‘单脉冲发生器’,该‘单脉冲发生器’电路受一个自复开关K的控制,每按一次K,该电路输出一个正脉冲,输入到系统机从8259的IR1作为外部中断请求。要求:每按一次K,屏幕上显示一行字符串“Welcome!”。主机键盘按任意键,程序结束,返回DOS。(要求给出完整的源程序)单脉冲发生器K从8259IR1分析:3该电路使用了微机系统的硬件中断进行处理,首先要确定硬件中断的中断类型号,中断请求信号是由从8259A芯片的IR1引脚引入(图见P265),中断类型号是71H,但由于其71H型中断服务程序中使用了INT0AH指令,即重新指向了0AH型中断(见266),因此用户中断类型是0AH。需要特别注意,对于硬件中断,一定要对8259A中断屏蔽寄存器IMR进行操作,而且中断服务程序结束前要写中断结束命令字,这些都是与软中断1CH程序不同的地方。程序如下:.486datasegmentuse16old0add?mesegdb'Welcome!',0dh,0ah,'$'dataendscodesegmentuse16assumecs:code,ds:datastart:movax,datamovds,axcli;CPU关中断callwrite0A;写0AH型中断向量inal,21h;读主8259A中断屏蔽字andal,11111011b;将主8259AIMR(中断屏蔽寄存器)的D2位置0out21h,al;开放8259AIR2引脚中断请求(即开放来自从片的中断请求)inal,0a1h;读从8259A中断屏蔽字andal,11111101b;将从8259AIMR的D1位置0out0a1h,al;开放从8259AIR1引脚中断请求STI;CPU开中断x1:movah,1;int16h;调用PC按键输入功能jzx1;如没有PC按键输入,则循环等待inal,21h;有PC按键输入,进入结束程序前的工作。读主8259A中断屏蔽字4oral,04h;将主8259AIMR的D2位置1out21h,al;屏蔽主8259AIR2中断请求inal,0a1h;读从8259A中断屏蔽字oral,02h;将从8259AIMR的D1位置1out0a1h,al;屏蔽从8259AIR1中断请求movah,4ch;结束返回DOSint21hserviceproc;单脉冲按键中断服务程序pushaxpushdxmovdx,offsetmeseg;取欲显示字符串的偏移地址movah,9h;显示字符串功能号int21H;显示字符串moval,20h;中断结束命令字out20h,al;写入中断结束命令popdxpopaxiret;中断返回serviceendpwrite0aproc;写0AH型中断向量子程序pushdsmovax,codemovds,axmovdx,offsetservicemovax,250ah;AH=功能号,AL=中断类型号,DS:DX=中断服务程序入口地址int21hpopdsretwrite0aendp5codeends;代码段结束endstart;汇编结束,start表示启动地址第10章微型计算机系统串行通信P3343.异步通信一帧字符的格式是什么?答:1位起始位,5-8位数据位,1位可选奇偶校验位,1位、1.5位、或2位停止位4.设异步通信一帧字符由八个数据位,无校验,一个停止位,如果波特率为9600,则每秒能传输多少字符?答:每秒传输字符=传输速率/每帧字符的位数,结果为:9600/(1+8+0+1)=960个5.单工、半双工、全双工通信方式的特点是什么?参见教材P302倒数第4行-P303第5行7.分别叙述TTL和RS-232C的电平标准,通常采用什么器件完成两者之间的电平转换?答:TTL采用正逻辑,规定0V~0.3V为逻辑“0”,3V~5V为逻辑“1”。而RS-232C采用负逻辑,规定逻辑“1”在-3V~-15V之间,逻辑“0”在+3V~+15V之间。通常采用MC1488和MC1489电平转换器件,MC1488实现TTL-RS-232转换,MC1489实现RS-232-TTL转换。11.用系统机串行口采用中断方式完成字符发送和接收,编程时应采取哪些措施?答:①置8250中断允许寄存器的D1位为1,D0位为1,允许8250产生发送和接收中断请求;②置8250MODEM控制寄存器的D3位为1,允许8250将中断请求信号送至8259A。见教材P309图10-8;③将主8259AIMR(中断屏蔽字)的D4位或D3位置0(取决于主串口还是辅串口),即开放主8259AIR4或主8259AIR3中断;④写入0CH型中断向量(主串口)或0BH型中断向量(辅串口);⑤使用STI指令,允许CPU响应中断。补充:A、B两台PC机利用主串口进行点-点单工通信(不用联络线),发送采用查询方式,接收采用中断方式。一帧字符包含7个数据位,1个停止位,1个校验位,通信速率为4800波特(分频系数为0018H)。6(1)下图是A、B两机的RS—232C接口示意图,根据题意完成连线(不可有多余连线)。AB2345620207765432因2脚是TXD信号,3脚是RXD信号,又不用联络线,因此只需两根线连接。7脚是信号地。(2)下图是从PC机的RS-232C接口引脚观察到的波形,所传送字符的16进制ASCII码是_46H___;该帧数据采用的奇偶校验方式是__奇__校验;传送该帧数据需要的时间是_1/480秒。传送方向0011000101注意:波形是RS-232电平,它采用负逻辑表示,数据传送顺序是先传送D0位,再传送D1位……,最后是D6位。+12V-12V(3)用对端口直接编程的方法为接收方编写8250初始化程序段。I8250PROCMOVDX,3FBHMOVAL,80HOUTDX,AL;寻址位置1MOVDX,3F9HMOVAL,00OUTDX,AL;写除数高8位=0MOVDX,3F8HMOVAL,18HOUTDX,AL;写除数低8位=18HMOVDX,3FBH7MOVAL,0AHOUTDX,AL;设置数据帧格式MOVDX,3F9HMOVAL,01HOUTDX,AL;写中断允许寄存器(仅允许接收中断,D0=1)MOVDX,3FCHMOVAL,08HOUTDX,AL;写MODEM控制寄存器(允许8250送出中断请求,D3=1)RETI8250ENDP第11章并行I/O接口P3642.8255A各端口有几种工作方式?答:A端口有三种:方式0、方式1和方式2;B端口有方式0和方式1,C端口有方式0。5.当CPU用查询方式和8255A交换信息时,应查询哪些信号?当CPU用中断方式和8255A交换信息时,利用哪些端子提中断请求?答:输入方式查询IBF信号,只有IBF=1时,CPU才可从8255A输入数据;输出方式查询OBF信号,只有OBF=1时,CPU才可输出数据。中断方式下利用PC口的PC3和PC0提出中断请求,具体为:A端口使用PC3,B端口使用PC0。6.8255A的方式选择字和C端口置0/置1控制字都是写入控制端口的,8255A是怎样识别的?答:通过命令字的D7位识别,D7=1,代表方式选择命令字;D7=0,代表C端口置0/置1命令字。9.说明打印机Centronics并行接口时序。答:①在BUSY等于0时,CPU执行输出指令,输出一个数据;②CPU使接口电路发出选通脉冲STROBE=③打印机接收到STROBE=0之后,立即使BUSY=1表示打印机忙;④打印机将数据存入内部的缓冲区后,向PC机发出应答信号ACKNLG=0,过5微秒后将BUSY信号置0,表示打印机不忙,可以接收下一个数据。8补充:系统机外扩一片8255A及相应电路如下图所示,外扩8255A的端口地址为200H~203H,现利用系统机的
本文标题:微机接口作业及答案
链接地址:https://www.777doc.com/doc-5191104 .html