汇编语言程序设计课件 第5.1讲 模拟软件的输入和输出设备
时间:2025-05-11
时间:2025-05-11
学习资料
第五.1讲 输入和输出设备及指令1. 输入和输出设备的工作基础 2. 输入和输出指令 3. 输入/输出程序示例
学习资料
1、输入和输出原理CPU将数据送往外设对应的接口电路中的数据寄存器 可以从接口电路中的状态寄存器获取外部设备的状态 通过地址区分不同的数据或状态寄存器 这些地址称为端口地址
CPU
地址
数据 接口电路
状态
外部设备
学习资料
2.输入/输出指令IN指令从某个端口的输入8位或16位数据到AL或AX 格式 IN AL,8位端口地址 IN AX,8位端口地址 IN AL,DX IN AX,DX
OUT指令将AL或AX的内容送往某个端口 格式 OUT 8位端口地址,AL OUT 8位端口地址,AX OUT DX,AL OUT DX,AX
学习资料
实例1:数码管输出该设备通过数码管显示一个2字节的带符号 数。 端口地址:199 例如Out 199,1234 Out 199,-5678
方法一:Mov ax,0 Mov cx,1 Again: ADD AX,CX INC CX CMP CX,101 JC AGAIN OUT 199,AX INT 20H
任务计算1+2+…+100的值,并在数码管上显示。
思路首先计算累加和 输出累加和
方法二:Mov ax,0 Mov cx,100 Again: ADD AX,CX DEC CX CMP CX,0 JNE AGAIN OUT 199,AX INT 20H
循环指令 LOOPMov ax,0 Mov cx,100 Again: ADD AX,CX loop again OUT 199,AX INT 20H
学习资料
实例2:温度计控制温度控制系统介绍 加热炉端口 127 将1送该端口可以点燃加 入炉 将0送该端口可以熄灭加 入炉
温度计端口 125 从该端口可以读入当前 温度
环境温度你可以自己设置该温度
任务控制该系统保持在70度
学习资料
设计思路反复读入当前温度计测量温度,并判断如果该温度大于70度则停止加热 如果该温度小于70度则开始加热 如果键盘按了任意键则结束
开始 读入温度计温度 BL
开始 读入温度计温度 BL>70? 熄火 BL<70? 点火 没有敲键 结束 BL
BL<=70? 熄火
BL>=70? 点火
没有敲键 结束
学习资料
程序设计BEGIN: IN AL,125 MOV BL,AL CMP BL,70 JLE L1 MOV AL,0 OUT 127,AL L1: CMP BL,70 JGE L2 MOV AL,1 OUT 127,AL L2: MOV AH,0BH INT 21H CMP AL,0 JZ BEGIN INT 20H开始 读入温度计温度 BL<=70? 熄火 BL
BL>=70? 点火
没有敲键 结束
学习资料
本讲小结与外部设备的通讯 输入/输出指令 循环指令 输入/输出程序示例
学习资料
作业作业1编写程序将温度系统控制在50到60度之间
作业2将温度控制在键盘输入的温度(10-90度范围)