当前位置: 网学 > 编程文档 > 汇编语言 > 正文

用汇编编写DOS下的内存驻留程序(5):键盘输入扩充程序

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/18
下载{$ArticleTitle}原创论文样式

五 键盘输入扩充程序

有了前一节的基本驻留程序为基础,就可以建立起不同的应用程序.接下来,就写一个驻留程序,把用户敲入的字符,用一系列的字符来取代.这样可以减少用户的击键次数.

首先,先复习一下前一节的驻留程序的格式,如下所示:
     cseg segment
      assume cs:cseg,ds:cseg
      org  100h
     start:
      jmp Initialize
     Old_Keyboard_IO dd ?
           ;Section 1
     new_keyboard_io proc far
      sti    
           ;Section 2
      pushf
      assume ds:nothing
      call  Old_Keyboard_IO
      nop
      iret
     new_keyboard_io endp
           ;Section 3
     Initialize:
      assume cs:cseg,ds:cseg
      mov bx,cs
      mov ds,bx
      mov al,16h
      mov ah,35h
      int 21h
      mov word ptr Old_Keyboard_IO,bx
      mov word ptr Old_Keyboard_IO,es
           ;End Section 3
      mov dx,offset new_keyboard_io
      mov al,16h
      mov ah,25h
      int 21h
      mov dx,offset Initialize
      int 27h
     cseg ends
      end start
 只要New_keyboard_IO这个程序,就可以把以上的程序变成许多不同的键盘应用程序.在开始设计之前,必须解决一些问题.

首先,必须决定哪些键可以用来加以扩充.如果把一般的英文字母或是数目字做为扩充字符的话可能会出现一些问题.如果是对控制字符做扩充,应该不会有什么问题,但是DOS把某些控制字符视为特殊的功能.譬如Control_H,IBM PC本身有一组自己独有和增加字符(extended character),譬如:功能键(F1到F10),以及ALT键和其它组合所产生的字符等.这些增加字符通常都是使用在文书编辑程序中,这些字符比较适合用来作为扩充字符用.这组字符是由两个码组成,前面一个码永远是0,因此DOS可以很容易加以分辨.而且使用这些字符作为扩充字符对DOS的使用也不会产生太大的影响.下面是扩充字符组的第二个码大小:
 1    2 Paoudo_NULL 3    4    5
 6    7    8    9    10
 11    12    13    14    15        Shift_Tab 16 Alt_Q   17 Alt_W   18 Alt_E   19 Alt_R   20 Alt_T   21 Alt_Y   22 Alt_U   23

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号