第13章-键盘和鼠标操作课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第13章-键盘和鼠标操作课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 13 键盘 鼠标 操作 课件
- 资源描述:
-
1、2022-12-261键盘操作键盘操作鼠标操作鼠标操作2022-12-262第一节第一节 键盘操作键盘操作键盘工作原理键盘工作原理键盘缓冲区键盘缓冲区键盘处理函数键盘处理函数2022-12-263一、键盘工作原理一、键盘工作原理键盘中有一个微处理器,可以监测每个键的键盘中有一个微处理器,可以监测每个键的按下或抬起的状态按下或抬起的状态当用户当用户按下按下或或抬起抬起一个键时,便产生一个一个键时,便产生一个INT 9 中断,并将该键的扫描码(中断,并将该键的扫描码(1字节)字节)送入计算机,由送入计算机,由ROM中中BIOS的中断处理程的中断处理程序去处理。序去处理。说明:说明:有些特殊键如有些
2、特殊键如PrintScreen等,只引起中断,不等,只引起中断,不产生扫描码。产生扫描码。扫描码的扫描码的最高位最高位(第第7位位)标识按键的状态:标识按键的状态:0:代表按下:代表按下1:代表抬起:代表抬起扫描码的扫描码的06位位记录的是引起中断的按键在记录的是引起中断的按键在键盘上的位置键盘上的位置说明:说明:扫描码仅能区别键的位置以及状态(按下或抬扫描码仅能区别键的位置以及状态(按下或抬起),不能直接区分大小写(大小写的扫描码相起),不能直接区分大小写(大小写的扫描码相同),键盘中断处理程序在区分大小写时,会参同),键盘中断处理程序在区分大小写时,会参照其他按键(照其他按键(Caps L
3、ock和和Shift)的状态。)的状态。2022-12-2642022-12-265按键种类AH的内容AL的内容字符键扫描码ASCII码功能键/组合键扫描码0扩充的键盘扫描码-扩充码的存放格式由于键盘扫描码只有一个字节,只能标出由于键盘扫描码只有一个字节,只能标出256种状态,不能包括键盘上的全部按键情况,故种状态,不能包括键盘上的全部按键情况,故键盘处理程序对扫描码进行了扩充键盘处理程序对扫描码进行了扩充:首先在首先在AX中将其扩充为两个字节,然后送入键盘缓冲区。中将其扩充为两个字节,然后送入键盘缓冲区。在在AX中扩充的这两个字节的内容如下表所示:中扩充的这两个字节的内容如下表所示:2022
4、-12-266二、键盘缓冲区二、键盘缓冲区由于由于INT 9中断和应用程序接收键盘输入不能中断和应用程序接收键盘输入不能同时进行,而键盘输入的信息是即刻消失的同时进行,而键盘输入的信息是即刻消失的,为了避免信息丢失,系统在内存中定义了一个为了避免信息丢失,系统在内存中定义了一个32字节的缓冲区,专门存储键盘输入。字节的缓冲区,专门存储键盘输入。键盘缓冲区中,能使用的仅键盘缓冲区中,能使用的仅30字节,可存放字节,可存放15个字符的扩充码。个字符的扩充码。此键盘缓冲区是基本输入输出系统分配的,与此键盘缓冲区是基本输入输出系统分配的,与C编译器分配的键盘缓冲区不是同一概念。编译器分配的键盘缓冲区不
5、是同一概念。两个缓冲区之间的关系:两个缓冲区之间的关系:2022-12-267设键盘输入设键盘输入:abaa的扫的扫描码描码bb的扫的扫描码描码r回车回车的扫的扫描码描码abn基本输入输出系统分配的键盘缓冲区C编译器分配的键盘缓冲区低字节高字节2022-12-268三、键盘处理函数三、键盘处理函数Turbo C在在bios.h中中提供提供了一个了一个键盘操作键盘操作函数函数bioskey(),用来,用来处理处理键盘输入键盘输入。(也可以用(也可以用BIOS调用或调用或DOS调用)调用)bioskey()函数函数的的原型是:原型是:int bioskey(int cmd);2022-12-269
6、三、键盘处理函数三、键盘处理函数其中:其中:cmd有三种取值:有三种取值:0:bioskey(0)返回按返回按键键的键值(即扩充码),的键值(即扩充码),并将缓冲区中的键值删除。该值是并将缓冲区中的键值删除。该值是2 个字节的整个字节的整数。若数。若无无键按下,则该函数一直等待,直到有键键按下,则该函数一直等待,直到有键按下。按下。1:返回按返回按键键的键值,但不删除缓冲区中的键的键值,但不删除缓冲区中的键值值。若缓冲区为空,返回若缓冲区为空,返回0。常用来查询是否有。常用来查询是否有键按下(与键按下(与kbhit()的的用法相仿)。用法相仿)。2022-12-2610三、键盘处理函数三、键盘
7、处理函数2:返回一些控制键是否被按过的信息,按:返回一些控制键是否被按过的信息,按过的状态由返回值的低过的状态由返回值的低8 位表示,位表示,如下:如下:位含义0若为1,表示右边Shift被按下1若为1,表示左边Shift被按下2若为1,表示Ctrl键被按下3若为1,表示Alt键被按下4若为1,表示Scroll Lock已打开5若为1,表示Num Lock已打开6若为1,表示Caps Lock已打开7若为1,表示Insert已打开2022-12-2611例例13-1:编程,显示用户在键盘上所按键的扫编程,显示用户在键盘上所按键的扫描码、描码、ASCII码和字符(若是非字符键,只显码和字符(若是
8、非字符键,只显示扫描码),同时显示示扫描码),同时显示Caps Lock、Shift和和Alt的按键情况。按的按键情况。按Esc键(扫描码为键(扫描码为1)结束。)结束。代码略代码略2022-12-2612第二节第二节 鼠标操作鼠标操作鼠标的鼠标的INT 33H功能调用功能调用常用鼠标操作函数常用鼠标操作函数鼠标形状的定制鼠标形状的定制鼠标操作举例鼠标操作举例2022-12-2613一一、鼠标的、鼠标的INT 33H功能调用功能调用DOS下使用鼠标,必须先安装相应的鼠标下使用鼠标,必须先安装相应的鼠标驱动程序驱动程序安装好鼠标驱动并进行初始化后,鼠标驱安装好鼠标驱动并进行初始化后,鼠标驱动程序
展开阅读全文