《汇编语言》学习(十七)键盘输入和磁盘读写

本文介绍了《汇编语言》第17章的内容,重点讲解了BIOS中断例程,包括键盘输入处理中断int 9、键盘缓冲区读取int 16以及磁盘读写中断int 13。通过分析int 16中断例程,解释了为何在循环等待时需设置IF=1以避免死锁。同时,探讨了磁盘读写的基础知识和int 13中断例程在读写扇区中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    《汇编语言》第17章主要介绍BIOS提供的几个中断例程,包括:键盘输入处理中断例程int 9,键盘缓冲区读取例程int 16,磁盘读写中断例程int 13。但是,本章的重点却不是这些中断例程,而是最后的“课程设计 2”,这些BIOS中断例程是为了做好课程设计而准备的。

一、键盘输入和缓冲区读取例程

1,int 9

    int 9是BIOS提供的处理键盘输入的中断例程,CPU在9号中断发生后,执行int 9中断例程,从60h端口读出扫描码,并将其转化为相应的ANSCII码或状态信息,存储在内存的指定空间(键盘缓冲区或状态字节)。

    键盘缓冲区中有16个字单元,可以存储15个按键的扫描码和对应的ASCII码,扫描码在前,ASCII码在后。

    键盘缓冲区是环形队列结构管理的内存区。 int 9例程入队,int 16例程出队。


2,int 16

    int 16例程的功能0,用于从键盘缓存区读取一个键盘输入。

mov ah,0        ; 0 - function number
int 16
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值