微机原理课后作业题答案.pdf_第1页
微机原理课后作业题答案.pdf_第2页
微机原理课后作业题答案.pdf_第3页
微机原理课后作业题答案.pdf_第4页
微机原理课后作业题答案.pdf_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一章 微型计算机系统概述 1 2 到目前为止 微处理器的发展共经历了几代 从内部结构讲 历代微处理器有哪些不 同 到目前为止 微处理器的发展共经历了五代 第一代 1971 1973 年 为 4 位和低档 8 位微处理器和微计算机 其特点是 采用 PMOS 工 艺 速度较低 基本指令执行时间为 10 20 s 字长 4 位或 8 位 封装引脚为 16 条 24 条 指令简单 运算功能较差 但价格低廉 主要用于面向消费的家用电器 计算器和进行 简单控制等 第二代 1973 1978 年 为 8 位的微处理器和微计算机 其特点是采用 NMOS 工艺 采用 10 条双列直插引脚 DIP 集成度比第一代产品提高 1 2 倍 8080 为 4900 个晶体管 片 MC6800 为 6800 个晶体管 片 Z80 为 10000 个晶体管 片 运算速度提高一个数量级 基本指令执 行时间为 1 2 s 指令系统比较完善 寻址能力有所增强 第三代 1978 1981 年 为 16 位微处器和微计算机 其特点是采用高性能的 HMOS 工艺 各方面性能比第二代又提高一个数量级 基本指令时间为 0 5 s 所组成的微计算机巳经达 到或超过中档小型机 如 PDPII 45 的水平 第四代 1981 1989 年 为 32 位微处理器和计算机 这一代产品属超大规模集成电路 SLSI Super Large Scale lntegration 采用新的 NMOS 工艺 时钟频率高于 20MHz 微指令 的执行时间可达 55ns 1989 年出现的 80486 集成度可达 100 万个晶体管 片 第五代 1990 年以后 为 64 位微处理器和微计算机 1993 年 3 月 Intel 公司推出新一代 64 位微处理器 Pcntium 简称 P5 集成度达 310 万个晶体管 片 其时钟频率达 60 66MHz 组 成 Pentium 586 微计算机 1 4 什么是微处理器 微处理器一般具有哪些功能 微处理器主要由运算器和控制器组成 一般也称为中央处理器 CPU 微处理器是微型计算 机的核心 本身具有共同的特点 微处理器一般具有以下功能 可以进行算术和逻辑运算 可保存少量数据 能对指令进行译码并执行规定的动作 能和存储器 外设交换数据 提供整个系统所需要的定时和控制 可以响应其他部件发来的中断请求 第二章 计算机中的数制和编码 2 选择题 1 十进制数 38 的八位二进制补码是 B A 0101 1011 B 1101 1010 C 1101 1011 D 0101 1010 2 将十六进制数 163 5B 转换成二进制数是 D A 1101010101 1111001 B 110101010 11001011 C 1110101011 1101011 D 101100011 01011011 3 将十进制数 35 转换成二进制数是 A A 100011 B 100111 C 111001 D 110001 4 将八进制数 154 转换成二进制数是 A A 1101100 B 111011 C 1110100 D 111101 5 将二进制数 101101101 111101 转换成十六进制数是 B A 16A F2 B 16D F4 C 16E F2 D 16B F2 6 下列数据中 C 最小 A 1011001B B 75D C 37O D 2A7H 7 带 号的数 如 N1 1001010 称为 B A 无符号数 B 真值 C 浮点数 D 机器数 8 表达式 11 4096 6 512 5 64 3 8 3 的结果以二进制表示时 含有 B 个 1 A 10 B 11 C 12 D 13 9 在 C 表示中 二进制数 1111 1111 表示十进制数 1 A 原码 B 反码 C 补码 D BCD 码 10 十进制数 205 49 转换成二进制数为 C A 1011 0111 101 B 1100 1000 011 C 1100 1101 011 D 1011 0111 001 11 补码 1011 0110 代表的是进制负数是 A A 74 B 68 C 54 D 48 12 长度相同但格式不同的两种浮点数 假设前者阶码长 尾数短 后者阶码短 尾数长 其他规定均相同 则它们可表示的数的范围和精度为 B A 两者可表示的数的范围和精度相同 B 前者可表示的数的范围大但精度低 C 后者可表示的数的范围大且精度高 D 前者可表示的数的范围大且精度高 第三章 8086 微处理器 3 1 填空题 1 8088CPU内部结构按功能可分为 总线接口部件和执行部件 两部分 2 根据功能不同 8086 的标志位可分为 条件码标志和控制 标志 3 当存储器的读出时间大于CPU所要求的时间时 为了保证CPU与存储器的周期配合 就要利用 READY或数据未准备好 信号 使CPU插入一个TW状态 4 当复位信号 RESET 来到时 CPU便结束当前操作 并对标志寄存器 IP DS ES SS及指令队列清零 而将CS设置为 0FFFF H 5 8086 8088 构成的微机中 每个主存单元对应两种地址 物理地址和逻辑地址 6 逻辑地址由段基址和 偏移地址 组成 7 8086 中 执行部件 的功能是负责指令执行 8 CPU中的 总线接口部件 根据EU的要求 完成CPU与存储器或I O设备间的数据 传送 9 CPU从主存取出一条指令并执行该指令的时间称为 总线周期 10 在计算机出现溢出情况时 标志 寄存器会记录这一情况 11 8086CPU的物理地址是指实际的 20 位主存单元地址 每个存储单元对应唯一的物理 地址 其范围是 00000H 0FFFFFH 12 将逻辑地址转换为物理地址的公式是 物理地址 段地址左移 4 位 偏移地址 3 5 什么是总线 什么是总线周期 总线是一簇公共的信号线 它是计算机中传递信息代码的干线 按照工作性质不同划分 总线有 地址总线 数据总线和控制总线 8086 CPU通过总线对存储器或I O端口进行一次访问所需要的时间称为一个总线周期 3 7 在 8086 的微机系统中 为什么常用 AD0 作为低 8 位数据的选通信号 在 8086 系统中 常将 AD0 信号作为低 8 位数据的选通信号 因为每当 CPU 和偶地址 单元或偶地址端口进行数据交换时 在 T1 状态 AD0 引脚传送的地址信号必定为低电平 在其他状态则用来传送数据 而 CPU 的传输特性决定了只要是偶地址单元或偶地址端口交 换数据 那么 CPU 必定通过总线的低 8 位即 AD7 AD0 传输数据 可见 如果在总线周期 的 T1 状态 AD0 为低电平 实际就指示了在这一总线周期中 CPU 将用总线低 8 位和偶地 址单元或偶地址端口交换数据 第四章 8086 指令系统 1 判断下列指令的正误 DATA DATA1 均为变量名 1 MOV ES 3F00H 错误 立即数不能直接送段寄存器 2 PUSH AL 错误 PUSH 是字操作指令堆栈操作作为字操作 AL 改为 AX 3 SHL AX 2 错误 移位次数大于 1 则把移位次数置于 CL 寄存器 MOV CL 2 SHL AX CL 4 IN AL DX 正确 从 DX 所指的端口中读取 1 个字节 5 MOV BX SI 错误 不允许两个同为存储单元 6 JMP BX 正确 7 LEA BX DATA 正确 8 POP CS 错误 禁止对 CS 寄存器赋值 9 MOV AL BX 10H 正确 10 MOV DATA1 DATA 错误 不能两个内存单元之间直接交换数据 11 XCHG CS AX 错误 CS 和 IP 不能作为交换指令的源操作数也不能作为 目的 12 MOV BX 1000 错误 不能两个内存单元之间直接交换数据 13 XCHG BP IP 错误 同 11 14 PUSH CS 正确 CS 寄存器的值可以推入堆栈 但不能从堆栈中弹出 1 个值 到 CS 15 POP CS 错误 不能从堆栈中弹出 1 个值到 CS 16 IN BX DX 错误 只能是累加器 AX 17 MOV BYTE PTR BX 1000H 错误 1000 超过了一个字节的范围 18 MOV DS 1000H 错误 MOV AX 1000H MOV DS AX 不能直接向 DS 中送立即数 19 MOV CS AX 错误 不允许使用 CS 寄存器 20 MOV BX DI 10 错误 必须指明是字节操作还是字操作 21 IN AL N N 255 错误 I O 地址由 DX 给出 22 ADD AL DATA BX 正确 3 A 5 实现两个十六进制二进制的加法 要求加数放在 FIRST 开始的单元 被加数放在 SECOND 开始的单元 和数放在 SUM 单元 MOV AX FIRST MOV BX SECOND ADD AX BX MOV SUM AX 7 指出下列指令中 源操作数的寻址方式 1 MOV ES 3F00H 直接寻址 2 PUSH AX 寄存器寻址 3 SHL AX 1 立即数寻址 4 IN AL DX 间接端口寻址 5 MOV BX SI 寄存器间接寻址 6 JMP BX 段内间接寻址 7 LEA BX DATA 直接寻址 8 POP SI 固定寻址 9 MOV AL BX 10H 寄存器相对寻址 10 MOV DX DAT BX SI 基址变址寻址 11 XCHG BX AX 寄存器寻址 12 MOV AX 1000 BP DI 基址变址寻址 13 XCHG BX AX 寄存器寻址 14 PUSH BX 寄存器间接寻址 15 POP BX SI 固定寻址 16 INC BX 寄存器寻址 17 MOV BYTE PTR BX 100 立即数寻址 18 MOV DS 1000H SI 寄存器相对寻址 19 MOV ES AX 寄存器寻址 20 MOV BYTE PTR BX DI 10 立即数寻址 21 IN AL N N 255 直接端口寻址 22 ADD AL DAT BX 寄存器相对寻址 8 1 AX FC2AH SF 1 ZF 0 CF 1 OF 0 2 13754H 20H CF 0 13755H 10H OF 0 14 串操作指令与寄存器 SI DI 及方向标志 DF 密切相关 试列表说明指令 MOVSB MOVSW CMPSB CMPSW SCASB SCASW LODSB LODSW STOSB STOSW 和 SI DI 及 DF 的关系 MOVSB 传送一个字节 且 SI DI 自动 1 DF 0 时 1 MOVSW 传送一个字 且 SI DI 自动 2 CMPSB 比较两个字节 且 SI DI 自动 1 DF 0 时 1 CMPSW 比较两个字 且 SI DI 自动 2 SCASB AL中的字节与ES DI所指的字节进行比较 不存结果 只要标志位 DI DI 1 DF 0 时 1 SCASW AX中的字与ES DI所指的字进行比较 不存 结果 保留标志位 DI DI 2 LODSB 从DS SI指定的存储单元取一个字节送入 AL 且SI SI 1 LODSW 从DS SI指定的存储单元取一个字送入AX 且SI SI 2 STOSB 将AL中的一个字节存入ES DI指定的内存单 元 且DI DI 1 STOSW 将AX中的一个字存入ES DI指定的内存单 元 且DI DI 2 16 设当前 SS 2010H SP FE00H BX 3457H 计算当前栈顶地址为多少 当执行 PUSH BX 后 栈顶地址和栈顶 2 个字节的内容分别是什么 1 当前栈顶地址为 SS 16 SP 20100 FE00 2FF00H 2 执行 PUSH BX 后 栈顶地址为 2FF00H 2 2FEFEH 2FEFEH 的内容为 57 2FEFFH 得内容为 34 第五章 汇编语言程序设计 5 1 编写一个程序 从键盘接收 10 个十进制数字字符 然后将这些数字加密存储在内存的 缓冲区 BUFFER 中 加密表如下 输入数字 0 1 2 3 4 5 6 7 8 9 密码数字 9 2 4 6 1 7 0 8 3 5 DATA SEGMENT TABLE DB 9 2 4 6 1 7 0 8 3 5 XX DB 7 YY DB DATA ENDS MOV BX OFFSET TABLE MOV AH 0 MOV AL XX ADD BX AX MOV AL BX MOV YY AL 5 2 编写一汇编语言程序 实现将数据段中首地址为 1000H 偏移地址 的 100 个连续存放 的字节数据搬移至该段内首地址为 1050H 偏移地址 的连续的 100 个内存单元中 DATA SEGMENT ORG 1000H TABLE DB 9 2 4 6 1 7 0 8 3 5 DB 0 7 8 5 8 9 100 个字节 DATA ENDS MOV SI 1063H MOV DI 10B3H MOV CX 64H STD REP MOVSB 5 3 从 100 个带符号数中寻找最大值 结果放在 MAX 单元中 DATA SEGMENT DAT DB 0 1 8 27 64 9 5 6 77 56 MAX DB COUNT EQU DAT DATA ENDS LEA BX DAT MOV CX COUNT 1 MOV AL BX KKK INC BX CMP AL BX JL XX1 LOOP KKK JMP EXIT XX1 MOV AL BX JMP KKK EXIT MOV MAX AL MOV AH 4CH INT 21H 5 4 统计从 01000H 内存单元开始的 100 个字 WORD 符号数中的正数 负数和零的字 WORD 个数 DATA SEGMENT ORG 1000H BUFFER DW 0 1 8 27 64 9 5 6 77 56 9 34 7 0 COUNT EQU 14 PLUS DB 0 ZERO DB 0 MINS DB 0 DATA ENDS LEA SI BUFFER MOV CX COUNT CLD CHECK LODSW OR AL AL JS XX1 JZ XX2 INC PLUS JMP NEXT XX1 INC MINS JMP NEXT XX2 INC ZERO NEXT LOOP CHECK 5 5 试编写一个汇编语言程序 求级数 1 2 22 32 的前n项和刚好大于 1000 的项数n CODE SEGMENT ASSUME CS CODE START MOV BX 0 MOV DX 0 LOP1 INC BX MOV CX BX MOV AX 0 LOP2 ADD AX BX LOOP LOP2 ADD DX AX CMP DX 1000 JBE LOP1 MOV AH 4CH INT 21H CODE ENDS END START 5 6 设有两个数组 A 和 B 其中数据均为 20 个 两数组中的数据都按自小到大的顺序存放 现在要将两个数组合并成一个数组 C 使数组 C 的数据按自小到大的顺序存放 DATA SEGMENT A DB 1 5 7 8 15 B DB 3 4 6 9 11 C DB 10 DUP DATA ENDS LEA SI A MOV CX 5 LEA BX C KA MOV AL SI MOV BX AL INC BX LOOP KA LEA SI B MOV CX 5 KB MOV AL SI MOV BX AL INC BX LOOP KB MOV CX 9 LOOP1 MOV DI CX MOV BX 0 LOOP2 MOV AL C BX CMP AL C BX 1 JGE COTINUE XCHG AL C BX 1 MOV C BX AL COTINUE INC BX LOOP LOOP2 MOV CX DI LOOP LOOP1 第六章 存储器 3 用下列 RAM 芯片构成 32K 8 的存储器模块 各需要多少芯片 1 1K 8 2 4K 8 3 1K 4 4 16K 4 解 1 32 个 2 8 个 3 64 个 4 4 个 4 为 8086CPU 扩充一存储器 假设使用芯片 6116 2K 8RAM 要求 1 地址从 A0000H 开始 存储容量为 4K 8 位 地址连续 2 画出电路连接图 3 使用汇编语言在其存储区域内存入全 A 字符 然后再读出 验证其存储是否正确 A0 A10 OEWE 6116 1 CE RD OEWE 6116 2 CE D7 D0 A19 A17 A18 A16 A15 A14 A13 A12 A11 WR 与 或 非 或 或 与 非 5 型号为 1K 4 的静态芯片 应有多少条地址线 多少条数据线 型号为 1K 4 的静态芯片 应有 10 条地址线 4 条数据线 6 试用 1024 1 位的芯片组成 1K 8 位存储空间 设计一种与 8 位 CPU 连接的方案 并画图 说明 7 设计一个 8086CPU 与存储器连接图 要求 1 CPU 工作在最小模式 2 EPROM 16K 8 地址从 00000H 开始 连续 3 RAM 16K 8 地址从 0C000H 开始 连续 8 设某微型计算机的内存 RAM 区的容量为 128K 若用 2164 芯片构成这样的存储器 需要多少片 2164 至少需要多少根地址线 其中多少用于片内寻址 多少根用于片间寻 址 片内地址线是为了对存储器芯片中的每一个存储单元都能寻址 CPU 为其提供的地址 线 比如 6264 为 8K 8 那么片内地址线为 13 根 A0 A12 2164 芯片为 64k 1bit 构成 128KB 那么需要 16 片 其中八片一组 共两组 用于片内寻 址的为 16 根 片间的为 1 根 总共 17 根 第七章 输入 输出接口 3 端口如何编址 在 8086 微型计算机系统中 端口与内存是统一编址还是单独编址 端口有两种编址方式 端口统一编址和端口独立编址 端口统一编址是把每一个端口视为一个存储器单元 并赋以相应的存储器地址 端口独立编址是把所有 I O 接口看作一个独立于存储的 I O 空间 在 8086 微型计算机系统中 端口与内存是单独编址 5 CPU 与外设之间传输的信息有哪几类 各有何特点 CPU 与外设之间传输的信息有三类 数据信息 状态信息 控制信息 CPU 和外部设备交换的基本信息就是数据 数据通常为 8 位或 16 位 状态信息反映了当前外设所处的工作状态 是外设通过接口送往 CPU 的 控制信息是 CPU 通过接口传送给外设的 CPU 通过发送控制信息 控制外设的工作 6 CPU 与外设之间传输信息的方式有哪几种 各有何特点 CPU 与外设之间传输信息的方式一般有四种 无条件传输方式 程序查询传输方式 中 断方式 DMA 方式 无条件传送方式是指 CPU 对外设接口的读写随时都可以进行 不需要等待某种条件的满 足 无条件传送方式仅局限于外部控制过程的各种动作时间是固定且是已知的前提下 直接 用 IN 或 OUT 指令与外设进行传送数据 程序查询传送方式是指 CPU 在与外设传递数据前首先查询外设的状态 即条件 若外设 准备好才传送 若未准备好 CPU 就等待 CPU 要不断查询外设状态 占用大量 CPU 时间 在中断传送方式下 外设具有申请 CPU 服务的主动权 当输入设备将数据准备好或输出 设备可以接收数据时 外设就可以向 CPU 提出中断请求 使 CPU 暂时停下目前的工作而和外 设进行一次数据传输 等输入操作和输出操作完成后 CPU 继续进行原来的工作 直接存储器存取方式 DMA Direct Memory Access 外设请求数据传送时 经过 DMA 控 制器发出总线请求信号 CPU 响应后 DMA 控制器就控制了系统总线 送出存储器读写所需的 地址和控制信号 送出外设读写所需的控制信号 从而实现外设和存储器之间的直接数据传 送 7 中断传输方式和查询传输方式相比较 有何优缺点 什么时候用查询传输方式 什么情况 下使用中断传输方式 中断传输方式和查询传输方式相比较 查询传输方式的优点是 I O 接口简单 但是它的 CPU 利用率低 不能满足实时控制系统对 I O 处理的要求 而中断传送方式能具有如下特点 提高了 CPU 的工作效率 外围设备具有申请服务的主动权 CPU 可以可外设并行工作 可适 合实时控制系统对 I O 处理的要求 中断传输方式一般适合于外设数量多 速度中等以下 数据量少的场合 CPU 与外设不同步工作时 难以保证在 CPU 执行输入操作时 外设已准备好 或执行输 出操作时 外设施空闲状态 一般采用查询传输方式 第八章 中断技术 1 选择题 1 已知 8259A 与 8086 CPU 相连 其对应的终端类型码为 40H 47H 那么在初始化时 CPU 送给 8259A 的 ICW2 值和 IR3 中断源被响应时 8259A 送给 CPU 的中断类型分别为 C A 40H 和 47H B 40H 和 40H C 40H 和 43H D 43H 和 47H 2 8259A 内中断类型号的数据长度为 A A 8 位 B 3 位 C 16 位 D 8 位或 16 位 3 8259A 中断控制器级联的方法最多可用 9 片 则 C A 最多可连接 72 个中断源 B 最多可连接 16 个中断源 C 最多可连接 64 个中断源 2 填空题 1 单片 8359A可管理 8 级可屏蔽中断 6 片级联最多可管理 43 级 2 当中断控制器 8259A的A0 接向地址总线A1 时 若其中一个口地址为 0F2H 若某外设的 中断类型码为 35H时 则该中断源应加到 8259A中的中断请求寄存器IIR的 IR5 输入端 3 8259A有两类命令字 分别是 预置命令字 和 操作命令字 4 若用两片中断控制器 8259A芯片构成主从级联形式 则这两片 8259A芯片最多可直接管 理 15 级外部中断源 5 在 8086 构成的系统中 利用 8259A管理外设产生 16 级中断 则至少需要 3 片 8259A 6 在中断响应过程中 8086 往 8259A发两个INTA信号的作用是 一是使总线在此期间处于 封锁状态 二是总线锁定信号lock撤除 7 8259A可采用级联的方式工作 在微机系统中可接 8 个从属的 8259A 3 8259A 仅有两个端口 如何识别 4 条 ICW 命令和 3 条 OCW 命令 8259A的7个命令字分别是 4个初始化命令字ICW1 ICW4 3个操作命令字OCW1 OCW3 其中 ICW1 OCW2 和 OCW3 是写入偶地址的 它们依赖于命令字中的 D4 D3 两个标志位来区 分 ICW2 ICW4 都写入奇地址 它们总是紧跟于 ICW1 后写入的 8259A 收到 ICW1 后 便能 根据 ICW1 的内容逐一识别跟在后面的其他初始化命令字 OCW1 也是写入奇地址 但它是初 始化设置后 在工作过程中的任意时刻都可以写入的 也就是说 在初始化完成后 写入奇 地址的命令字都是 OCW1 另外还需要注意的是 在 8259A 片内还有几个寄存器是可以读的 它们是中断请求寄存 器 IRR 中断服务寄存器 ISR 和中断屏蔽寄存器 IMR IMR 可以通过输入指令随时从奇地址 端口获取 而 IRR ISR 则都是从偶地址端口读取的 但必须事先设置相应的 OCW3 为了保 证获取正确的信息 在每次读偶地址端口前 都要重新设置正确的 OCW3 4 若某外设的中断类型码为 68H 时 试问 1 该中断源对应的中断矢量表的入口地址为多少 2 若该中断源对应的中断矢量表中对应得四个字节 从小到大地址顺序 的内容分别为 00H 66H 88H 0A0H 则该中断源的中断服务程序入口地址为多少 解 1 68H 4 01A0H 该中断源对应的中断矢量表的入口地址为 0A10H 2 偏移量 IP 的值为 6600H 段地址 CS 的值为 0A088H 该中断源的中断服务程序入口地 址为 0A088 6600 即 0A6E80H 5 什么是中断向量表 若 8086 的外部中断是通过 8259A 与 CPU 连接的 在响应中断时完成 哪些工作 如何进入中断服务程序的 所谓中断向量 实际上就是中断处理子程序的入口地址 每个中断类型对应一个中断向 量 8086 的中断系统是以位于内存 0 段的 0 3FFH 区域的中断向量表为基础的 中断向量 表中最多可以容纳 256 个中断向量 8 8259A 的中断屏蔽寄存器 IMR 和 8086 8088 的中断允许标志 IF 有什么区别 在中断响应 过程中 它们怎样配合起来工作 IF 是 8086 微处理器内部标志寄存器的一位 若 IF 0 8086 就不响应外部可屏蔽中断 请求 INTR 引线上的请求信号 8259A 有 8 个中断请求输入线 IMR 中的某位为 1 就把对应 这位的中断请求 IR 禁止掉 无法被 8259A 处理 也无法向 8086 处理器产生 INTR 请求 第九章 可编程并行接口 8255A 1 填空题 1 8255A端口C按位置位复位控制字的 D1D2D3 位用来指定置位或复位的端口C的具体位 置 2 8255A端口C按位置位复位控制字的 D0 位决定对端口C的某一位置位或复位 3 8255A端口A工作在方式 2 时 使用端口C的 PC3 PC7 作为与CPU和外部设备的联络信 号 4 8255A与CPU连接时 地址线一般于CPU的地址总线的 A0 连接 5 8255A控制字的最高位D7 1 时 表示该控制字为方式控制字 6 8255A的端口A的工作方式是由方式控制字的 D4 位决定 7 8255A的端口B的工作方式由方式控制字的 D2 位决定 8 Intel8255A是一个 可编程并行接口 芯片 9 8255A内部有 三 个输入 输出端口 10 8255A的三个端口中只有端口 C 没有输入锁存功能 2 8255A 的方式 0 一般使用在什么场合 在方式 0 时 如果使用应答信号进行联络 应该怎 么办 方式 0 的特点是只要 RD WR 信号有效 就有数据传送 一般用在随时传送数据的场合 若使用在应答信号进行联络 可用 C 口进行联络 对 C 口进行操作 一般 C 口高 4 位用作 选通 STB 线 C 口低 4 位用作状态输入 RDY 线 3 当 8255A 工作在方式 2 并采用中断时 CPU 如何区分是输入或输出引起的中断 在输入输出均允许中断的情况下 可在中断服务程序中查询状态字 判断 OBF 和 IBF 的状 态 当 OBF 有效时是输出 而当 IBF 有效时便是输入 4 设 8255A 的 4 个寻址地址号为 0060H 0063H 试编写下列各种情况下的初始化程序 1 将 A 组和 B 组设置成方式 0 A 口 B 口为输入 C 口为输出 2 将 A 组工作方式设置成方式 2 B 组为方式 1 B 口作为输出 3 将 A 口和 B 口均设置成方式 1 均为输入 PC6 和 PC1 为输出 4 将 A 口工作在方式 1 输入 B 口工作在方式 0 输出 C 口高 4 位配合 A 口工作低 4 位为输入 解 1 初始化程序 MOV DX 0063H MOV AL 92H OUT DX AL 2 初始化程序 MOV DX 0063H MOV AL C4H OUT DX AL 3 初始化程序 MOV DX 0063H MOV AL B6H OUT DX AL 4 初始化程序 MOV DX 0063H MOV AL B8H OUT DX AL 6 若 8255A 的端口 A 定义为方式 0 输入 端口 B 定义为方式 1 输出 端口 C 的上半部定 义为方式 0 输出 试编写初始化程序 口地址为 80H 83H MOV DX 0083H MOV AL 94H OUT DX AL MOV DX 80H IN AL DX MOV DX 81H OUT AL DX MOV DX 82H OUT AL DX 7 假设一片 8255A 的使用情况如下 A 口为方式 0 输入 B 口为方式 0 输出 此时连接的 CPU 为 8086 地址线的 A1 A2 分别接至 8255A 的 A0 A1 而芯片的 CS 非来自 A3A4A5A6A7 00101 试完成 8255A 的端口地址确定和初始化程序 8255A 的端口地址为 A0 A7 控制字为 90H MOV AL 90H MOV DX 0A6H OUT AL DX MOV DX 0A0H IN AL DX MOV DX 0A2H OUT AL DX 第十章 可编程定时器 计数器 3 对 8253 定时 计数器各通道的初始化包括哪些内容 设 8253 的端口地址为 360H 362H 364H 366H 试对其 3 个通道进行初始化编程 使计数器 0 设置为方式 1 计数初值为 2500H 计数器 1 设置为方式 2 计数初值为 3000H 计数器 2 设置为方式 3 计数初值为 1000H 8253 定时 计数器各通道初始化主要包括设置控制字 赋初值 发锁存命令和读计数值 CLK 为时钟信号 GATE 为门控信号 8253 的控制字格式 D7 D6 D5 D4 D3 D2 D1 D0 SC1 SC0 RW1 RW0 M2 M1 M0 BCD 计数器 0 Mov al 22H Mov dx 366H Out dx al Mov dx 360H Mov al 25H Mov dx al 计数器 1 Mov al 64H Mov dx 366H Out dx al Mov dx 362H Mov al 30H Mov dx al 计数器 2 Mov al A7H Mov dx 366H Out dx al Mov dx 364H Mov al 10H Mov dx al 4 设某系统中的8253的端口地址为3F0H 3F6H 若要将计数器1设置为方式2 CLK1为2MHz 要求 OUT1 输出 1kHz 的连续脉冲 计数器 2 设置为方式 0 其 CLK2 端输入外部计数事件 每计满 1000 个脉冲后向 CPU 发中断请求 使编写满足上述条件的初始化程序 CLK1 2MHz OUT1 为 1kHz 初值 N1 2M 1K 2000 N2 1000 计数器 1 MOV AL 65H MOV DX 3F6H OUT DX AL MOV DX 3F2H MOV AL 20H OUT DX AL 计数器 2 MOV AL 0B1H MOV DX 3F6H OUT DX AL MOV DX 3F4H MOV AL 00H OUT DX AL MOV AL 10H OUT DX AL 5 若将 8253 的计数 1 和计数 2 连续串接 OUT1 和 CLK2 CLK1 接 2MHz 时钟脉冲 两计数 器均工作于方式 2 BCD 计数 试计算 OUT2 输出信号的最大周期 N1 10000 N2 10000 T1 10000 2M 1 200 T2 10000 1 200 50S 6 试按如下要求分别编写 8253 的初始化程序 已知 8253 的计数器

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论