8月23日 微机原理————8255编程题

DATAS SEGMENT
DUF DB 1000  BUP (?)
DATAS ENDS

CODES SEGMENT
      ASSUME CS:CODES,DS:DATAS
      
START:
      MOV AX,DATAS
      MOV DS,AX
      MOV AL,10000100H
      OUT 93H,AL;控制字送控制口
      MOV AL,04H
      OUT 93H,AL;断开打印机,pc2置0,禁止中断
      MOV SI,OFFSET BUF;把BUF的有效地址给SI
      MOV CX,1000;循环1000次
      MOV AL,05H
      OUT 93H,AL;PC2置1允许中断
LP1:
      MOV AL,[SI];把SI中的一个字节送AL
      OUT 91H,AL;把数据送到B口
 NEXT1:
      IN AL,92H;C口内容读入到AL判断PC0位是不是1,是1才有中断请求
      TEST AL,01H
      JZ NEXT1
      INC SI
      DEC CX
      JNZ L1
      
      MOV AH,4CH
      INT 21H
CODE ENDS
     END START

🎉欢迎关注🔎点赞👍收藏⭐️留言📝
🎉推荐up主专题文章 C语言100道经典编程题【详细分析版】
📌QQ:3052645092 不明白或有问题可以一起讨论哦
🍭作者水平很有限,如果发现错误,请及时告知作者哦!感谢感谢!

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值