资源预览内容
第1页 / 共3页
第2页 / 共3页
第3页 / 共3页
亲,该文档总共3页全部预览完了,如果喜欢就下载吧!
资源描述
“微机系统原理与接口技术”第六章习题解答(部分)3 统 一 编 址 和 分 离 编 址 , 统 一 编 址 : 存 储 器 和 I/O 地 址 空 间 统 一 分 配 , 用 相 同 的 指 令访 问 存 储 器 和 I/O 中 的 内 容 , 访 问 存 储 器 和 I/O 时 , 用 相 同 的 控 制 信 号 和 不 同 的 地 址 信号 ; 分 离 编 址 : 存 储 器 和 I/O 地 址 空 间 单 独 分 配 , 用 不 同 的 指 令 访 问 存 储 器 和 I/O, 访问 存 储 器 和 I/O 时 , 地 址 可 以 相 同 , 但 有 不 同 的 控 制 信 号 。4 某微机系统有 8 个 I/O 接口芯片,每个接口芯片占用 8 个端口地址。若起始地址为9000H,8 个接口芯片的地址连续分布,用 74LS138 作译码器,请画出端口译码电路图,并说明每个芯片的端口地址范围。答:分析下表所列的地址分配情况,可知系统地址信号的译码情况为(图略): 字选:A 2A 0 直接与接口芯片上的地址信号线连接以寻址每个接口芯片内部的 8 个端口; 片选: A5A 3 接 3-8 译码器输入端,译码器输出端分别作为 8 个接口芯片的片选信号; A15A 6 经门电路译码后形成 3-8 译码器的片选信号;地址信号 A15A14A13A12 A11A10 A9A8A7A6A5 A4A3A2A1A0端口1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0端口2 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 0 0 0 0 0 第 1 个I/O 接口芯片端口8 1 0 0 1 0 0 0 0 0 0 0 0 0 1 1 1端口1 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0端口2 1 0 0 1 0 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 0 0 0 0 0 0 0 1 第 2 个I/O 接口芯片端口8 1 0 0 1 0 0 0 0 0 0 0 0 1 1 1 1端口1 1 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0端口2 1 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 1 0 0 0 0 0 0 0 1 0 第 3 个I/O 接口芯片端口8 1 0 0 1 0 0 0 0 0 0 0 1 0 1 1 1 1 0 0 1 0 0 0 0 0 0 端口1 1 0 0 1 0 0 0 0 0 0 1 1 1 0 0 0第 8 个I/O 接口芯片 端口 1 0 0 1 0 0 0 0 0 0 1 1 1 0 0 12 1 0 0 1 0 0 0 0 0 0 1 1 1 端口8 1 0 0 1 0 0 0 0 0 0 1 1 1 1 1 16(略)7、中断、DMA8. 假 设 一 台 打 印 机 的 数 据 输 出 I/O 口 地 址 为 378H, 状态 口 地 址 为 379H, 状 态 字 节 的D0 位 为 状 态 位 ( D0=0, 表 示 打 印 数 据 缓 冲 区 空 , CPU 可 以 向 它 输 出 新 数 据 ; D0=1, 表示 数 据 区 满 ) 。 试 编 写 一 段 程 序 , 用 查 询 方 式 从 内 存 中 以 BUF 为 首 址 的 单 元 处 开 始 , 将连 续 1KB 的 数 据 传 送 给 打 印 机 , 每 次 送 1 字 节 。答 : 一 种 可 能 的 程 序 段 如 下 实 现 :LEA BX, BUF ; BX 指 向 第 1 个 待 打 印 的 数 据MOV CX, 1024 ; 一 共 要 送 1K 个 字 节 数 据NEXT: MOV DX, 379HIN AL, DX ; 读 打 印 机 状 态 端 口TEST AL, 01HJNZ NEXT ; 若 D0 位 不 为 0, 则 继 续 查 询 等 待MOV DX, 378HMOV AL, BXOUT DX,AL ; 将 BX 所 指 的 数 据 发 送 到 打 印 机INC BX ; BX 指 向 下 一 个 待 打 印 的 字 节LOOP NEXT ; CX 不 为 0, 继 续 送 下 一 个 字 节9. 请 用 无 条 件 传 输 方 式 编 写 一 个 完 整 的 输 入 /输 出 程 序 , 将 首 地 址 为 40000H 的 内 存 单元 中 的 1K 个 字 数 据 从 端 口 Output 处 输 出 , 然 后 从 端 口 Input 处 输 入 2KB 数 据 到 首 地址 为 50000H 的 内 存 单 元 中 ( 端 口 地 址 的 实 际 值 可 自 行 给 定 ) 。答 : 一 种 可 能 的 程 序 如 下 实 现 :DATA1 SEGMENT AT 4000HBUFFER1 DW ; 已存放好 1K 个字数据DATA1 ENDSDATA2 SEGMENT AT 5000HBUFFER2 DB 2048 DUP(?) ; 预留 2KB 单元存放读入的数据DATA2 ENDSCODE SEGMENTASSUME CS:CODE , DS:DATA1, ES:DATA2START: MOV AX, DATA1MOV DS, AXMOV AX, DATA2MOV ES, AXLEA SI, BUFFER1 ; SI 指向准备发送的第 1 个数据LEA DI,BUFFER2 ; DI 指向第 1 个准备存放接受数据的单元CLD ; 地址增量方向MOV CX, 1024 ; 发送数据总个数MOV DX, OUTPUT ; 设 OUTPUT 为字输出端口地址AGAIN1: LODSW ; 将 DS:SI 所指数据取出准备发送,并修改 SI 值OUT DX, AXLOOP AGAIN1MOV CX, 2048 ; 接收数据总个数MOV DX, INPUT ; 设 INPUT 为字输入端口地址AGAIN2: IN AX, DLSTOSB ; 将输入数据存在 ES:DI 所指单元,并修改 DI 值LOOP AGAIN2MOV AH, 4CH ; 返回INT 21HCODE ENDSEND START
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号