ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:57.92KB ,
资源ID:9963841      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9963841.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(课堂综合练习及参考答案.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

课堂综合练习及参考答案.docx

1、课堂综合练习及参考答案课堂练习11. 写汇编程序片段,判断AL和BL寄存器的最高位,相同时转移到标号L001,否则继续(使用普通指令实现,不能改变AL和BL寄存器的值,且不能使用其它寄存器)。PUSH AXXOR AL, BLTEST AL, 80HPOP AXJZ L0012. 写汇编程序片段。寄存器AL存放的是温度(摄氏度,有符号数),将其转换为华氏度(华氏度 = 摄氏度1.8 + 32),取整数,结果存放在AX寄存器中。MOV BL, 9IMUL BL ; AL BL 商 AXMOV BX, 5XOR DX, DXIDIV BX ; DX:AX BX 商 AXADD AX, 323. 当

2、在主机中执行输入指令IN AL, DX时,ISA总线的控制总线中哪个信号有效? DX的值影响ISA总线的什么信号? ISA控制总线中的-IOR信号有效,DX的值输出到地址总线的低16位。4. PCI总线的仲裁机制的作用是什么?PCI信号中哪些信号与仲裁有关系? 总线仲裁机制是PCI主设备取得总线控制权的数字功能电路机制,PCI主设备通过REQ#信号提出向总线仲裁机制提出总线申请,仲裁机制通过GNT#信号应答主设备。5. PCI中那些信号是中断申请?在配置空间有哪些字段与中断有关? PCI总线的中断申请信号有4个,INTA#、INTB#、INTC#和INTD#。通过配置空间的Interrupt

3、Pin字段(偏移地址3DH)选择使用上述4个中断申请中的哪一个。通过配置空间的Interrupt Line字段(偏移地址3CH)确定所选中断对应系统中断的编号。6. 在TPC-386EX实验台初始化8253(基地址200H)的通道2,采用0方式、二进制计数、计数器初值1000,写出初始化汇编代码。TIMER = 200H MOV AL, 0B0H ; 定时器2 / 16位初值 / 0方式 / 二进制MOV DX, TIMER+3OUT DX, ALMOV AX, 1000DEC DXOUT DX, ALMOV AL, AHOUT DX, AL7. 针对TPC-386实验台,编写中断初始化程序。

4、要求:边沿触发,采用单片8259非缓冲方式,中断编号基数为16,普通全嵌套优先权方案,普通结束方式。中断信号从IR5引入。; - 8259初始化MOV AL, 00010011B ; ICW1OUT 20H, AL MOV AL, 00010000B ; ICW2OUT 21H, AL MOV AL, 00000101B ; ICW4OUT 21H, AL ; - 设置中断向量PUSH DSXOR AX, AXMOV DS, AXLEA AX, CS:IR5p ; 中断服务程序MOV DS:0054H, AXMOV AX, CSMOV DS:0056H, AXPOP DS ;-设置中断屏蔽寄存

5、器MOV AL, 0DFH ; OCW1OUT 21H, AL;-打开中断STI8. 在TPC-386EX实验台写一个使用SIR0中断的中断服务程序的框架(采用普通中断结束方式)。SIR0p PROC FAR PUSH ; 保护现场 CLI ; 关闭中断 MOV AL, 20H ; 中断结束 OUT 0A0H, AL POP ; 恢复现场 STI ; 开中断 IRET ; 从中断返回SIR0p ENDP课堂练习21. 简述PCI中断。包括中断产生、中断响应的过程。当PCI设备需要中断支持,就要在INTA#INTD#中选择一个中断申请线,在配置空间的Interrupt Pin (偏移地址3DH)

6、字段定义,并通过配置空间的Interrupt Line字段(偏移地址3CH)确定所选中断对应系统中断的编号。当中断产生,设备的中断申请送到中断控制器,中断控制器向CPU发送中断申请,CPU控制PCI总线进入中断响应周期,获取中断向量(图16.16)。CPU根据中断向量转入中断服务程序。2. 简述USB的帧和微帧的概念,以及协议中的实现。说明SOF令牌结构。USB协议通过帧(低速和全速模式)或微帧(高速模式)的定义,将时间分为1ms或125s的间隙,并通过帧或微帧同步全部USB设备。USB主机以广播方式向所有USB设备发送“帧标志”信息。全速模式下主机每1ms发送一个SOF包。低速模式下由Kee

7、p Alive状态信号替代SOF包。高速模式下每一个1ms帧分成了8个微帧。SOF格式:SyncPIDFrame No.帧序列号11位CRC5校验5位EOP3. 说明USB传输中的“事务”的概念,以及“事务”的构成要件。USB的事务(Transaction)为USB主机与设备端点之间的一次数据传输。事务是USB传输(Transfer)过程中的一个阶段(Stage)。为了实现一个USB事务,需要23个数据包(Package)的交换。每一个数据包被称为一个事务的相位(Phase)。构成事务的数据包通常依次为令牌包、数据包和联络包,实时传输的事务无联络包。4. 简要说明USB的4种传输模式的特点和性

8、能。USB的4种传输模式分别为控制传输、中断传输、批量传输和实时传输。可以根据USB设备的特点选择支持的传输模式。但USB设备必须支持控制传输。控制传输实现USB控制信息、配置信息的传输,同时也可以实现用户数据传输。中断传输可以保证传输延时,适合小批量、非周期性的数据传输。批量传输可以最大可能的利用传输带宽,适合突发性的、大批量数据传输。实时传输可以保证传输带宽,适合恒定流量、同时对错误不敏感的数据传输。4种USB传输的理论速度:传输类型控制传输批量传输中断传输实时传输高速最大速率(B/s)15,872K53,248K24,576K24,576K全速最大速率(B/s)832K1,216K64K

9、1,023K低速最大速率(B/s)24K不支持800不支持5. 在TPC-386EX实验箱实现延时脉冲输出。即当按钮按下后,延时25ms后从8255的PC0输出一个负脉冲,脉冲宽度不限。基本方法:将按钮连接至8255的一个输入端(PC7),在主程序检测该输入端的上跳沿,启动定时器,将定时器输出连接到系统中断(MIR5),在中断服务程序向PC0输出负脉冲。中断初始化:采用实验台系统中断MIR5,已经完成8259A初始化。剩下任务包括设置中断向量、设置中断屏蔽寄存器、打开中断。 ;-设置中断向量 PUSH DS ; 保存DS XOR AX, AX ; 0AX MOV DS, AX ; DS LEA

10、 AX, CS:MIR5p ; 中断服务入口地址偏移量AX MOV DS:00D4H, AX ; 00D4H MOV AX, CS ; 中断服务入口地址段值AX MOV DS:00D6H, AX ; 00D6H POP DS ; 恢复DS ;-设置中断屏蔽寄存器 IN AL, 21H ; 读取当前中断屏蔽寄存器 AND AL, 0DFH ; 将D5置为0 OUT 21H, AL ; 写回中断屏蔽寄存器 ;-打开中断 STI8255初始化:A组、B组均为0方式输入,PC0PC3输出,PC4PC7输入。(8255片选端连接地址200H)PPORT = 200HMOV AL, 10011010BOU

11、T PPORT+3, ALMOV AL, 1 ; 1PC0OUT PPORT+3, AL按钮按下检测:读取判断PC7press0: IN AL, PPORT+2 TEST AL, 80H JNZ press0press1: IN AL, PPORT+2 TEST AL, 80H JZ press18253初始化:通道2,0方式,输入1MHz,初始值25000。TIMER = 210HMOV AL, 10110000BOUT TIMER+3, ALMOV AX, 25000OUT TIMER+2, ALMOV AL, AHOUT TIMER+2, AL中断服务:输出向PC0输出负脉冲。IRQ5P

12、ro PROC FAR CLI PUSH AX MOV AL, 0 OUT TIMER+3, AL ; 可加入延时 MOV AL, 1 OUT PPORT+3, AL MOV AL, 20H OUT 20H, AL POP AX STI IRET IRQ5Pro ENDP6. 电话忙音的频率是450Hz,通断比是350:350ms。通过TPC-386EX实验台资源设计一个忙音信号发生器。方波实现方案之一:过定时中断控制PC0输出忙音。通过8253产生900Hz分频(通道1,3方式,1Mhz/900 ),定时器输出连接中断。在中断服务程序对一个变量(Tick)进行二次计数,实现350ms的计数值

13、是315,700ms一个周期,采用模630计数。计数值小于315时反向PC0。主程序:;-初始化定时器1为2方式 MOV DX, TIMER+3 MOV AL, 01110100B OUT DX, AL MOV DX, TIMER+1 MOV AX, 1111 ; 输入1MHz,输出900Hz OUT DX, AL MOV AL, AH OUT DX, AL ;-初始化8255,PA,PCH: 0输入,PB,PCL:0方式输出MOV AL, 10011000BMOV DX, PPORT+3 OUT DX, AL;-设置中断向量 PUSH DS XOR AX, AX MOV DS, AX LEA

14、 AX, CS:MIR5p MOV DS:00D4H, AX MOV AX, CS MOV DS:00D6H, AX POP DS ;-设置中断屏蔽寄存器 IN AL, 21H AND AL, 0DFH OUT 21H, AL STI ; 打开中断RTloop: JMP RTloop ; 死循环中断服务程序MIR5p PROC FAR PUSH AX ; 保存寄存器 PUSH DX CLI ; 关闭中断 INC tick .IF tick=630 MOV tick, 0 .ENDIF .IF tick 315 MOV AL, BYTE PTR tick AND AL, 1 MOV DX, PP

15、ORT+3 OUT DX, AL .ENDIF MOV AL, 20H ; OCW2:普通EOI命令 OUT 20H, AL STI ; 开放中断 POP DX ; 恢复寄存器 POP AX IRET ; 从中断服务返回 MIR5p ENDP7. 基于TPC-386EX实验台设计一个串行接口信号发生器。将拨动开关K0K7连接到8255的一个端口,每当8个拨动开关中任一个开关状态发生变化,就从串行接口发出当前K0K7的状态字节。串行接口参数是9600bps、8个数据位、1个停止位、无校验。画出流程图,并写出汇编代码。实现方案:8255_CS接200H。初始化8255,PB端口为0方式输入。连接K

16、0K7之PB0PB7;16550_CS接210H。初始化16550,9600/N/8/1;进入主程序,循环读取PB并存储,当PB发生变化进入发送流程;发送流程:检测直到发送保持寄存器空,将数据写到16550发送数据寄存器;发送后延时,以避免拨动开关抖动。 PPORT = 200HUART = 210HDATA SEGMENTkey BYTE 0DATA ENDS;-16550串口初始化 MOV DX, UART+3 ; 80HLCRMOV AL, 80HOUT DX, ALMOV DX, UART ; 12波特率因子锁存器MOV AL, 12 ; 9600bpsOUT DX, al MOV D

17、X, UART+1 MOV AL, 0 OUT DX, AL MOV DX, UART+3 ; 03LCRMOV AL, 03H ; 8位数据/1位停止位/无校验 OUT DX, AL MOV DX, UART+1 ; 0IERMOV AL, 0 ;关中断OUT DX, AL ;-初始化8255,PB为0方式输入MOV DX, PPORT+3MOV AL, 10001011BOUT DX, ALMOV DX, PPORT+1IN AL, DXMOV key, ALmloop: MOV DX, PPORT+1 ; 读取开关状态IN AL, DX.IF AL!=key MOV key, AL .R

18、EPEAT ; 检测知道THR空 MOV DX, UART+5 IN AL, DX AND AL, 20H .UNTIL AL!=0 MOV DX, UART ; 发送数据字节 MOV AL, key OUT DX, AL.ENDIFMOV CX, 50000 ; 循环延时.REPEAT.UNTILCXZJMP mloop课堂练习31. USB协议定义的IN和OUT令牌包的作用是什么?其包格式是什么样的?其中的各个字段的作用是什么?USB的IN和OUT令牌包是由主机发送到设备的。IN令牌的作用是要求指定设备发送指定端点的数据到主机,OUT令牌的作用是主机通知指定设备要发送数据到它的指定端点。I

19、N和OUT令牌的格式是一样的:SyncPIDADDRENDPCRC5EOP其中:Sync:同步字,8位,00000001;PID:信息包标志,8位,低4位是标志编码,高4位是低4位反码;ADDR:设备地址,7位; ENDP:端点地址,4位;CRC5:循环冗余校验码,5位; EOP:包结束标志信号。2. USB协议采用了什么差错控方法来保证传输的安全性?为了实现信息传输安全,信息包中采用CRC校验,接收方根据CRC信息验证信息的正确性。当接收方检测错误信息包,通过回送NAK握手包要求发送方重传;信息包的PID字段是USB信息包的最关键信息,采用重复冗余传输防止PID信息传输错误;数据包传输中顺序

20、使用DATA0、DATA1、DATA2,以避免包丢失。3. 在TPC-386EX实验台产生一个固定延时、任意脉宽的负脉冲信号。要求程序运行后指定信号输出端为1,按下按钮,待按钮释放开始延时10ms后输出端输出一个负脉冲,宽度不限。设计实现方案,并画出流程图。实现方案:采用定时器5方式,按钮输出接到GATE端,OUT即要求的输出信号。定时器输入接1MHz时钟,分频初值10000。TIMER = 200H ; 采用定时器2通道 MOV AL, 10111010B OUT TIMER+3, AL MOV AX, 10000 OUT TIMER+2, AL MOV AL, AH OUT TIMER+2

21、, ALFloop: JMP Floop4. 通过TPC-386EX实验台设计一个音频信号数字延时器的实现方案。要求采样频率为8K/s,延时时间50ms。(定时器控制的AD+FIFO存储+DA)实现方案:通过定时器产生8K/s的周期性中断(8253的2或3方式),在中断服务程序操作AD和DA变换;定义一个数据区,400字节,可以存储50ms的数字化音频数据。按照FIFO规则访问;中断服务中先读取AD数据,再启动AD的顺序操作。5. 在TPC-386EX实验台实现AD变换演示。将电位器分压值(0+5V)送AD变换器,将8255的一个端口的8位依次连接到8个发光二极管L0L7。AD变换器获得的值由

22、小到大分为8个等份,分别点亮L0、L1、L7。实现方案:初始化8255,将端口C设置为输出。利用端口C的8位输出连接L0L7;主程序循环AD变换(启动AD延时读取AD值);根据获得的AD变换数据的高3位,经过位移等操作变换成为针对端口C的置位/复位;0端口C(将全部发光二极管灭),置位命令端口C(点亮指定发光二极管)汇编程序代码:PPORT = 200HADCON = 210H begin: MOV DX, PPORT+3 MOV AL, 10000000B OUT DX, AL MOV AL, 0 ; PC输出0 DEC DX OUT DX, ALmloop: MOV DX, ADCON ;

23、 启动变换 OUT DX, AL MOV CX, 1000 ; 延时等待delay1: NOP LOOP delay1 MOV DX, ADCON+1 ; 读取结果 IN AL, DX SHR AL, 1 ; 右移4位 SHR AL, 1 SHR AL, 1 SHR AL, 1 AND AL, 0EH ; 高4位置0 OR AL, 1 ; 0 0 0 0 D7D6D5 1 MOV AH, AL MOV DX, PPORT+2 ; 向PC输出0 MOV AL, 0 OUT DX, AL INC DX ; 送置位/复位命令 MOV AL, AH OUT DX, AL JMP mloop6. 通过T

24、PC-386EX实验台设计一个按钮启动的方波信号发生器,程序运行后信号输出端无输出,通过按钮启动800Hz方波开始输出,再次按动按钮停止输出。设计电路连接并写出代码。设计方案:将按钮(PLUS1,正脉冲)连接到8255(PC7);使用一个定时器,3方式。输入(CLK2)连接1MHz,门控(GATE2)接+5V,输出(OUT2)即为要求的信号输出;主程序初始化定时器和8255后,循环检测按钮状态,当按钮按下,启动或停止8253分频输出。电路连接图:程序流程图:汇编程序代码(部分):TIMER = 200H ; 8254PPORT = 210H ; 8255;- 数据段 state BYTE 0;

25、- 代码段 MOV AL, 10011011B OUT PPORT+3, ALmloop: IN AL, PPORT+2 TEST AL, 80H JNZ mloop kpress: IN AL, PPORT+2 TEST AL, 80H JZ kpress INC state TEST state, 1 JZ fstop MOV AL, 10110110B OUT TIMER+3, AL MOV AX, 1250 OUT TIMER+2, AL MOV AL, AH OUT TIMER+2, AL JMP mloop fstop: MOV AL, 10110110B OUT TIMER+3, AL JMP mloop

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1