首页 > 其他 > 详细

程序查询方式控制输入输出

时间:2019-12-26 14:51:00      阅读:358      评论:0      收藏:0      [点我收藏+]

1、流程图:

条件传送方式又称为查询方式,即CPU传送数据之前(输入和输出),需要先查询外设是否准备好,没有准备好的话继续读取状态信息,直到外设准备好了以后开始数据传送。

技术分享图片

 

2、汇编语言程序设计:

(1)用程序查询的方式将输入设备的一个数据读入CPU的BL中:

     MOV DX,0001H    ;状态口地址 
NEXT:IN AL,DX    ;表示从外部设备输入数据给累加器(这里是状态 ),如果从外设端口中输入一个字节则给8位累加器 AL,若输入一个字则给16位累加器 AX
     AND AL,80H    ;按位与操作,保留最高位 
     JZ NEXT    ;JZ(Jump if Zero)是此前的运算结果为0时跳转;D7=0,不可以输入,需要继续监测状态
     MOV DX,0000H  ;数据口地址
     IN AL,DX  ;输入
     MOV BL,AL  ;CPU读入数据
     RET

(2)用汇编语言实现以查询方式的数据传送:将内存中首地址为BUF的存储区内的128字节数据向CRT终端输出。假设CRT终端数据口地址为0008H,状态口地址为0010,D7为状态位,D7=0表示输出缓冲器空,允许输出数据。

    MOV BX, OFFSET BUF
    MOV CX, 128
LOP:MOV DX, 0010H ;状态口地址
    IN AL, DX ;输入状态
    AND AL, 10000000B ;保留 D7
    JNZ LOP ;非零转移
    MOV AL, [BX] ;取出数据
    MOV DX, 0008H ;数据口地址
    OUT DX, AL ;输出
    LOOP LOP ;循环128次
    HLT

程序查询方式控制输入输出

原文:https://www.cnblogs.com/zhai1997/p/12101697.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!