




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 第第15章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 15.1 屬性編碼屬性編碼 15.2 BIOS中斷中斷10H 15.3 閃爍、反白和卷動(dòng)閃爍、反白和卷動(dòng) 15.4 其他其他DOS輸入輸出處理輸入輸出處理 15.5 BIOS INT 16H的鍵盤處理的鍵盤處理 15.6 擴(kuò)充功能鍵擴(kuò)充功能鍵 第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 15.1 屬屬 性性 編編 碼碼 單色顯示器有4K字節(jié)的存儲(chǔ)器,即顯示緩沖區(qū),只能顯示黑白字母、數(shù)字和方塊圖形。顯示模式為文本模式時(shí),顯示屏幕為80列、25行,即8025個(gè)字符。4K字節(jié)存放每個(gè)屏幕字符和
2、字符的屬性編碼,屬性編碼將確定顯示反白、閃爍、高亮度等。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 彩色/圖形顯示卡,有文本模式和圖形模式兩種工作模式。在文本模式下顯示屏幕有兩種格式:8025和4025,顯示卡上有16K字節(jié)的存儲(chǔ)器,即顯示緩沖區(qū)。在屏幕顯示8025時(shí),顯示緩沖區(qū)分成了4個(gè)屏幕頁(03);顯示4025時(shí),顯示緩沖區(qū)分成了8個(gè)屏幕頁(07)。系統(tǒng)預(yù)置的顯示頁號(hào)數(shù)是0,但你也可以使用顯示緩沖區(qū)的其他頁。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 單色和彩色的屬性編碼在文本模式的情況下,將決定每一個(gè)被顯示字符的特性。對(duì)應(yīng)屏幕上的每個(gè)字符位置有兩個(gè)存儲(chǔ)器字節(jié):一個(gè)是被顯
3、示字符的ASCII碼,另一個(gè)就是顯示字符的屬性字節(jié)。屬性字節(jié)中的編碼不同,決定了被顯示字符的特性不同。在單色文本模式下,屬性字節(jié)確定字符是否閃爍、高亮度、反白顯示等。所以,屬性的不同編碼會(huì)使字符以不同的效果在屏幕上顯示,單色顯示的屬性編碼如圖15-1所示。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 圖15-1 單色屬性字節(jié)7BLRGBIRGB閃爍背景亮度前景6543210第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 RGB字母分別占一個(gè)位,各代表彩色顯示器的紅、綠、藍(lán)三色。位7(BL)設(shè)定閃爍,位3(I)設(shè)定高亮度。前景指顯示的字符,一般是白色;背景是黑色。表15-1列出了前景、
4、背景編碼的組合模式。 第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 表15-1 背景、前景編碼組合模式功 能背 景前 景R G BR G B不顯示(黑底黑字)0 0 00 0 0加底線(不適用于彩色)0 0 00 0 1正常顯示(黑底白字)0 0 01 1 1反白顯示(白底黑字)1 1 10 0 0第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 彩色顯示器并不提供加底線的功能。但是,這一位被用來當(dāng)作選用藍(lán)色前景,因此顯示變?yōu)樗{(lán)字黑底。表15-2給出了一些典型的單色文本顯示模式下的屬性編碼和對(duì)應(yīng)的顯示效果。 第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 表15-2 典型單色屬性編
5、碼值及顯示效果 二進(jìn)制編碼顯示效果BLRGBIRGB00000000不顯示00000001黑底白字 下劃線00000111黑底白字 正常顯示00001111黑底白字 高亮度01110000白底黑字 反白顯示10000111黑底白字 閃爍11110000白底黑字 反白閃爍第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 這些屬性都適用于文字的單色及彩色顯示,下一章將介紹如何選定某一特定顏色。當(dāng)程序設(shè)定某一屬性之后,它就一直保持這個(gè)屬性,直到另一個(gè)屬性改變它為止。例如,將屬性設(shè)為00H,此字節(jié)將完全不顯示。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 15.2 BIOS中斷中斷10H BI
6、OS是IBM PC機(jī)上提供的一系列基本輸入/輸出系統(tǒng)功能模塊;每一種功能模塊完成某種特定的輸入/輸出功能,它可以使程序編制人員不必了解硬件I/O接口的特性,依靠直接調(diào)用某個(gè)功能模塊,就可以完成相應(yīng)的I/O設(shè)備的控制和管理。調(diào)用前只需在指定寄存器中設(shè)置入口參數(shù),使用中斷調(diào)用指令I(lǐng)NT n,便能得到希望的結(jié)果或返回參數(shù)。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 其中BIOS的INT 10H完成的是對(duì)屏幕的操作。本節(jié)將對(duì)中斷INT 10H的部分功能進(jìn)行介紹,使用INT 10H之前,先將其功能號(hào)預(yù)置在AH中。 (1) AH=00:設(shè)置顯示模式。 AL中預(yù)置顯示模式字,無返回參數(shù)。AL的設(shè)定如
7、下: 00 4025 黑白模式 01 4025 彩色文本模式 16色 02 8025 黑白模式 03 8025 彩色文本模式 16色 04 320200 彩色圖形模式 4色第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 05 320200 單色圖形模式 黑白06 640200 單色圖形模式 黑白07 8025 單色文本模式 黑白0D 320200 彩色圖形EGA 16色0E 640200 彩色圖形EGA 16色(EGA為增強(qiáng)型圖形界面顯示卡。)第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 例如,設(shè)置顯示模式為320200彩色圖形模式: MOV AH,00 ;設(shè)置顯示模式 MOV AL
8、,04 ;320200 彩色圖形模式 INT 10H ;調(diào)用BIOS 10 H中斷第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (2) AH=01:文本模式下設(shè)置光標(biāo)大小。 ASCII碼字符集中沒有光標(biāo)。計(jì)算機(jī)用硬件控制光標(biāo),并有一些特殊的INT處理為它服務(wù)??梢允褂肐NT 10H來調(diào)整光標(biāo)的高度。寄存器CH (位40)確定光標(biāo)的上限位置(開始掃描線),寄存器CL(位40)確定光標(biāo)的下限位置(結(jié)束掃描線)。你可以在上限和下限之間來調(diào)整光標(biāo)的大小,0/13適用于單色及增強(qiáng)型圖形顯示器,0/7適用于大部分的彩色顯示器。 第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 入口參數(shù):AH=01
9、,CH=光標(biāo)開始掃描線,CL=光標(biāo)結(jié)束掃描線,無返回參數(shù)。 例如,將光標(biāo)設(shè)置為極限(最大): MOV AH,01 ;要求設(shè)置光標(biāo)大小 MOV CH,00 ;光標(biāo)開始掃描線 MOV CL,13 ;光標(biāo)結(jié)束掃描線 INT 10H ;調(diào)用BIOS 10H中斷第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 這時(shí)光標(biāo)就像一個(gè)閃爍的方塊。只要在范圍內(nèi),你就可以任意地調(diào)整光標(biāo)大小,例如,04/08,03/10等等。光標(biāo)將一直保持這種狀態(tài),直到下一次改變它為止。CH/CL=12/13(單色)或CH/CL=6/7(彩色)可將光標(biāo)還原成正常狀態(tài)。圖形模式下如需要,可自行模擬光標(biāo)。第第1515章章 屏幕處理高級(jí)
10、特性屏幕處理高級(jí)特性 (3) AH=02:設(shè)置光標(biāo)位置。 這個(gè)操作可以將光標(biāo)設(shè)置在屏幕的任何位置。它是依行、列的坐標(biāo)而定的。一般顯示緩沖區(qū)使用0頁,但在80行模式下,頁數(shù)可以是03中的任意一頁。 入口參數(shù):AH=02,BH=頁號(hào),DH=行號(hào),DL=列號(hào),無返回參數(shù)。 第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 例如,將光標(biāo)移動(dòng)到第0頁的第3行、第 8列: MOV AH,02 ;設(shè)置光標(biāo)位置 MOV BH,00 ;第0頁 MOV DH,03 ;第3行 MOV DL,08 ;第8列 INT 10H ;調(diào)用BIOS 10H中斷 該程序段將使光標(biāo)移動(dòng)到指定位置。第第1515章章 屏幕處理高級(jí)特
11、性屏幕處理高級(jí)特性 (4) AH=03:讀當(dāng)前光標(biāo)位置。 利用這個(gè)功能可以找到當(dāng)前光標(biāo)所處的位置,以及光標(biāo)的大小。 入口參數(shù):AH=03,BH=頁號(hào)。 返回參數(shù):DH=行號(hào),DL=列號(hào),CH=光標(biāo)開始掃描線,CL=光標(biāo)結(jié)束掃描線。 例如,讀取第0頁光標(biāo)當(dāng)前位置: MOV AH,03 ;要求讀當(dāng)前光標(biāo)位置 MOV BH,00 ;第0頁 INT 10H ;調(diào)用BIOS 10H中斷第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 該程序段執(zhí)行完后,在DX中得到光標(biāo)的位置,DH為行號(hào),DL為列號(hào),在CX中得到光標(biāo)的大小,CH為掃描開始線,CL為結(jié)束掃描線。 (5) AH=04:讀光筆位置。第第151
12、5章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (6) AH=05:選擇顯示頁。 入口參數(shù):AH=05,AL=頁號(hào),無返回參數(shù)。 例如: MOV AH,05 ;選擇顯示頁 MOV AL,02 ;要顯示的頁號(hào)(07) INT 10H ;調(diào)用BIOS 10H中斷 在40列的模式中,可以選擇編號(hào)為07的顯示緩沖區(qū)顯示頁;在80列的模式中,可以選擇編號(hào)為03的顯示頁。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (7) AH=06:窗口上卷。 當(dāng)一個(gè)程序的顯示內(nèi)容向下已超過屏幕的底部,下一行應(yīng)繞到頂部再開始,解決的方法是將屏幕向上滾動(dòng)。 入口參數(shù):AH=06,AL=上卷行數(shù),窗口底部為空白輸入行。若A
13、L=0表示窗口為空白。CH、CL=卷動(dòng)的左上角行、列號(hào);DH、DL=卷動(dòng)的右上角行、列號(hào);BH=空白輸入行的屬性(正常、反白、閃爍還是設(shè)定色彩)。無返回參數(shù)。 第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 例如:MOV AX,0603H ;向上卷3行MOV BH,07 ;正常屬性MOV CX,0410H ;從左上角第4行、第10H列MOV DX,1130H ;至右上角第11H行、第30H列INT 10H ;調(diào)用BIOS 10H中斷該程序段執(zhí)行完后,第4行、第10H列到第11H行、第30H列的窗口上卷3行。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (8) AH=07:窗口下卷。
14、入口參數(shù):AH=07,其他的和06號(hào)功能相同。此時(shí)窗口頂部為輸入行。無返回參數(shù)。 (9) AH=08:讀當(dāng)前光標(biāo)位置的字符和屬性。 此操作可在文字或圖形模式下讀取顯示區(qū)的字符和屬性。 入口參數(shù):AH=08,BH=頁號(hào)。 返回參數(shù):AL=讀出的字符,AH=讀出的字符屬性。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 例如,讀取第0頁當(dāng)前光標(biāo)位置的字符和屬性: MOV AH,8 ;要求讀取字符和屬性 MOV BH,0 ;第0頁 INT 10H ;調(diào)用BIOS 10H中斷 此操作將返回的字符存在AL中,而屬性放在AH中。在圖形模式下,AL中返回的不是光標(biāo)處字符的ASCII碼,而直接反映字符點(diǎn)陣
15、,所以要確定是什么字符,必須將該點(diǎn)陣與字符點(diǎn)陣發(fā)生器內(nèi)的各字符逐一比較,如無字符AL=0。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (10) AH=09:在當(dāng)前光標(biāo)位置寫出字符(包括屬性和ASCII碼)。 入口參數(shù):AH=09,BH=頁號(hào),AL=要顯示的字符的ASCII碼,BL=字符屬性(文本或圖形模式下,其功能包括閃爍、反白等),CX=要顯示字符數(shù)的重復(fù)次數(shù)。無返回參數(shù)。 例如: MOV AH,09 ;要求顯示 MOV AL,要顯示的字符第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 MOV BH,頁號(hào) MOV BL,屬性或色彩 MOV CX,要寫的字符次數(shù) INT 10H ;
16、調(diào)用BIOS 10H AL中存放的是一個(gè)要顯示的字符,可以重復(fù)出現(xiàn)多次。CX中的值決定AL中字符重復(fù)出現(xiàn)的次數(shù),顯示不同的字符需要重復(fù)執(zhí)行,但并不會(huì)使光標(biāo)前移。圖形模式下,利用BL來定義前景顏色。如下例所示,在品紅背景下,顯示五個(gè)淺綠色閃爍的星號(hào)(彩色文本模式下)。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 MOV AH,09 ;要求顯示MOV AL,* ;顯示*MOV BH,0 ;0頁MOV BL,0DAH ;彩色顯示屬性MOV CX,05 ;重復(fù)5次INT 10H ;調(diào)用BIOS 10H 第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (11) AH=0AH:在當(dāng)前光標(biāo)位置寫字
17、符(屬性不改變)。模式0A與09的不同之處是模式0A不能設(shè)定屬性。入口參數(shù):AH=0AH,其余同09號(hào)功能。MOV AH,0AH ;要求顯示MOV AL,char ;所要顯示的字符MOV BH,page# ;頁數(shù)MOV CX,repetition ;重復(fù)5次INT 10H ;調(diào)用BIOS 10H 第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (12) AH=0EH:寫字符并移動(dòng)光標(biāo)位置。 此操作會(huì)自動(dòng)地使光標(biāo)前進(jìn)一格,并轉(zhuǎn)到下一行,將屏幕向上卷動(dòng)。 設(shè)定AH為0EH,要顯示的字符放在AL中,BL中存放前景顏色(圖形模式),要顯示的頁號(hào)存放在BH中(文字模式)。鈴聲(07H)、退位(08H
18、)、換行(0AH)和回車(0DH),會(huì)影響此模式的正常執(zhí)行。 入口參數(shù):AH=0EH,DX=要寫的字符,BH=頁號(hào),BL=前景顏色(圖形模式下),無返回參數(shù)。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (13) AH=0FH:讀當(dāng)前顯示狀態(tài)。 入口參數(shù):AH=0FH。 返回參數(shù):AL=當(dāng)前顯示模式,AH=屏幕顯示列數(shù),BH=當(dāng)前頁號(hào)。 (14) AH=13H:寫字符串。 本功能有4 個(gè)子功能,在各個(gè)子功能里均需ES:BP指向一個(gè)字符串,CX中存放字符串的長(zhǎng)度,BH中存放字符串的顯示頁號(hào),DH和DL中分別存放起始位置行、列。例如:第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 MOV
19、 AH,13H MOV AL,子功能號(hào) ;子功能號(hào):03 MOV BH,頁號(hào) LEA BP,地址 ;在ES:BP位置的字符 MOV CX,字符串長(zhǎng)度 MOV DX,屏幕起始位置 INT 10H第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 0子功能:顯示字符串,統(tǒng)一屬性在BL中,光標(biāo)不移動(dòng)位置。 1子功能:顯示字符串,統(tǒng)一屬性在BL中,光標(biāo)移動(dòng)到顯示字符串末尾。 2子功能:顯示字符串(包含屬性字節(jié)),光標(biāo)不移動(dòng)位置。 3子功能:顯示字符串(包含屬性字節(jié)),光標(biāo)移動(dòng)到顯示字符串末尾。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 15.3 閃爍、反白和卷動(dòng)閃爍、反白和卷動(dòng) 例15.1所示
20、程序的功能是從鍵盤接受名字,并將它顯示在屏幕上。但是,本程序以反白的模式顯示提示語句,依照正常的模式接受輸入名字,并且在同一行40列的位置,以反白和閃爍的模式把名字顯示在屏幕上。顯示格式如下: Name?Francis Bacon Francis Bacon 0列 40列 第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 為了控制光標(biāo)的位置,程序中定義了變量ROW來控制列的增加,而變量COL是為了在顯示提示語句和名字的時(shí)候可以水平地移動(dòng)光標(biāo),因?yàn)镮NT 10H不會(huì)自動(dòng)使光標(biāo)向前移動(dòng)。本程序使屏幕由上向下顯示到20行為止;以后,每個(gè)增加的提示語句都將使屏幕上卷一行。 在輸入方面,子程序D10I
21、NPT使用DOS的INT 21H實(shí)現(xiàn)。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 例15.1 一個(gè)閃爍、反白和卷動(dòng)的綜合實(shí)例程序。源程序清單如下: T I T L E N M S C R O L L ( E X E ) R E V E R S E VIDEO,BLINKING,SCROLLING ; - STACKSG SEGMENT PARA STACK STACK DW 32 DUP(?) STACKSG ENDS ; -第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 DATASG SEGMENT PARA DATA NAMEPAR LABEL BYTE ;名字參數(shù)表 MAXN
22、LEN DB 20 ;名字最大長(zhǎng)度 ACTNLEN DB ? ;實(shí)際輸入字符長(zhǎng)度 NAMEFLD DB 20 DUP( ) ;名字 COL DB 00 COUNT DB ? PROMPT DB NAME? ROW DB 00 DATASG ENDS 第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 ; - CODESG SEGMENT PARA CODE BEGIN PROC FAR ASSUME CS:CODESG, DS:DATASG, SS:STACKSG, ES:DATASG PUSH DS SUB AX,AX PUSH AX MOV AX,DATASG MOV DS,AX第第151
23、5章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 MOV ES,AX MOV AX,0600H CALL Q10CLR ;清屏 A20LOOP: MOV COL,0 ;設(shè)置COL為0 CALL Q20CURS ;設(shè)置光標(biāo)位置 CALL B10PRMP ;顯示提示符 CALL D10INPT ;輸入名字第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 CMP ACTNLEN,0 ;是否有名字 JNE A30 ;有,轉(zhuǎn)A30 MOV AX,0600H CALL Q10CLR ;沒有,清屏 RET A30: CALL E10NAME ;顯示名字 JMP A20LOOP BEGIN ENDP第第1515章章
24、 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 ; -DISPLAY PROMPT:顯示提示- B10PRMP PROC NEAR LEA SI,PROMPT ;取提示符地址 MOV COUNT,05 B20: MOV BL,70H ;反白 CALL F10DISP ;調(diào)用顯示 INC SI ;取名字中下一字符 INC COL ;取下一屏COL第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 CALL Q20CURS DEC COUNT ;名字長(zhǎng)度減1 JNZ B20 ;循環(huán)N次 RET B10PRMP ENDP ; -ACCEPT INPUT OF NAME:輸入名字- D10INPT PROC NE
25、AR MOV AH,0AH LEA DX,NAMEPAR INT 21H RET第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 D10INPT ENDP ; -DISPLAY NAME WITH BLINKING REVERSE VIDEO:顯示名字- E10NAME PROC NEAR LEA SI ,NAMEFLD ;取名字首字符地址 MOV COL,40 ;設(shè)置屏幕COL E20: CALL Q20CURS ;設(shè)置光標(biāo) MOV BL,0F0H ;閃爍、反白第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 CALL F10DISP ;調(diào)用顯示 INC SI ;取名字中下一字符地址 I
26、NC COL ;取下一屏COL DEC ACTNLEN ;名字長(zhǎng)度減1 JNZ E20 ;循環(huán)N次 CMP ROW,20 ;是否是屏幕底部? JAE E30 ;不是 INC ROW第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 RET E30: MOV AX,0601H ;是 CALL Q10CLR ;清屏 RET E10NAME ENDP第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 ; -DISPLAY CHARACTER:顯示字符- F10DISP PROC NEAR ;入口參數(shù)在BL中 MOV AH,09 ;顯示 MOV AL,SI ;取名字中字符 MOV BH,00 ;頁號(hào)
27、MOV CX,01 ;字符數(shù)是1 INT 10H RET F10DISP ENDP 第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 ; -CLEAR SCREEN:清屏- Q10CLR PROC NEAR ;入口參數(shù)在AX中 MOV BH,07 MOV CX,0000 MOV DX,184FH INT 10H RET Q10CLR ENDP第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 ; -SET CURSOR ROW/COL:設(shè)置光標(biāo)位置- Q20CURS PROC NEAR MOV AH,02 MOV BH,00 MOV DH,ROW MOV DL,COL INT 10H RET
28、 Q20CURS ENDP CODESG ENDS END BEGIN第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 15.4 其他其他DOS輸入輸出處理輸入輸出處理 DOS操作系統(tǒng)為用戶提供了許多可以直接調(diào)用的子程序,稱為系統(tǒng)功能調(diào)用。使用系統(tǒng)功能調(diào)用的一般過程為,把功能號(hào)放入AH寄存器,設(shè)置入口參數(shù)。然后,執(zhí)行中斷INT 21H。系統(tǒng)功能調(diào)用的類型為20H3FH,由于在現(xiàn)有的PC機(jī)上,28H3FH類型號(hào)尚未使用,所以只使用了20H27H類型號(hào),其中大部分由DOS調(diào)用,只有少量的允許用戶調(diào)用。 第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 其中21H號(hào)功能調(diào)用是面向用戶的,具有對(duì)鍵
29、盤、顯示器、磁盤、打印機(jī)和異步通訊進(jìn)行操作的多種功能,共有80多個(gè)子程序功能供用戶使用,21H使用各子程序功能的調(diào)用模式是一樣的,調(diào)用的格式是: 入口參數(shù)相關(guān)的寄存器 程序功能號(hào)AH INT 21H第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 例如,顯示字符串 09號(hào)功能調(diào)用,在第8章中就已介紹并使用。下面介紹幾種較為常見的功能調(diào)用。 (1) AH=00:停止程序運(yùn)行,無返回參數(shù)。 (2) AH=01:有返回參數(shù)的鍵盤輸入。 此功能會(huì)返回兩種情況其中的一種參數(shù):若AL的值不為0,表示輸入的為字符的ASCII碼,例如,字母或數(shù)字。反之,若AL的值為0,則表示輸入的是一個(gè)特殊的功能鍵,例如,
30、Home、F1或 PgUp等。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 無入口參數(shù);返回參數(shù):輸入字符的ASCII碼AL。 功能:等待用戶從鍵盤上輸入一個(gè)字符鍵,并對(duì)字符鍵進(jìn)行檢查,如果為Ctrl+Break,則退出命令行;否則,將字符的ASCII碼送給AL,并將該字符顯示在屏幕上。例如,執(zhí)行程序段: MOV AH,01 INT 21H 若在鍵盤上輸入字符S,則在AL中得到字符S的ASCII碼53(十六進(jìn)制),并將字符S顯示在屏幕上。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (3) AH=02:在屏幕上顯示一個(gè)字符。 入口參數(shù):被顯示字符的ASCII碼DL。無返回參數(shù)。 功
31、能:將DL中的字符顯示在屏幕上。 例如,在屏幕上顯示*。 MOV AH,02 MOV DL,* ;或 MOV DL,2AH (2AH為*的ASCII碼) INT 21H第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (4) AH=05:打印機(jī)輸出。 入口參數(shù):要輸出字符的ASCII碼DL。 功能:打印出要輸出的字符。 (5) AH=07:無返回參數(shù)的直接鍵盤輸入。 該功能基本上同AH=01的功能,不同的是輸入的字符不會(huì)在屏幕上顯示;對(duì)于Ctrl+Break請(qǐng)求,不響應(yīng)。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (6) AH=08:無返回參數(shù)鍵盤輸入。 該功能基本上同AH=01的功
32、能,但輸入的字符不會(huì)在屏幕上顯示,響應(yīng)Ctrl+Break。 例如,將從鍵盤上輸入的一個(gè)字符打印機(jī)輸出。 MOVAH,08 INT 21H MOV DL,AL MOV AH,05 INT 21H第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (7) AH=0BH:檢查鍵盤輸入狀態(tài)。 此功能返回的值將存放在AL中,若AL的值為FF(十六進(jìn)制),表示輸入的字符是有效的,否則AL的值為0。此功能常與功能01、07及08連用。 第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 15.5 BIOS INT 16H的鍵盤處理的鍵盤處理 BIOS INT 16H是對(duì)鍵盤進(jìn)行的BIOS軟中斷調(diào)用。它有以
33、下7個(gè)主要功能,功能號(hào)在AH中,作為入口參數(shù)。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (1) AH=00:讀取一個(gè)字節(jié)。 該功能會(huì)將一個(gè)由鍵盤輸入的ASCII碼讀入AL中,即取出緩沖區(qū)隊(duì)列首字符的ASCII碼送AL,掃描碼送AH。緩沖區(qū)后續(xù)字符前移,若緩沖區(qū)中無內(nèi)容,將等待。若被輸入的字符是特殊鍵,例如Home、F1等,AL的值會(huì)被設(shè)為00。本功能不會(huì)自動(dòng)返回字符到屏幕上。 第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (2) AH=01:決定是否能夠讀入字節(jié)。 本功能將0標(biāo)志位清0(ZF=0)為入口參數(shù),用來表示能夠讀入字節(jié);出口的AX 內(nèi)容同上,但不同的是,只對(duì)緩沖區(qū)的隊(duì)首讀出而不是取出,既不改變緩沖區(qū)內(nèi)容,也不等待,并設(shè)置ZF=0作為已獲得字符(已按過鍵)的標(biāo)志。如隊(duì)列為空,則ZF=1。第第1515章章 屏幕處理高級(jí)特性屏幕處理高級(jí)特性 (3) AH=02:讀取特殊功能鍵狀態(tài)。 該功能將返回參數(shù)存放在AL中,AL中各二進(jìn)制位狀態(tài)含義如下: 位7(Ins)=1 表示正處于插入狀態(tài) 位6(Caps)=1 表示處于字母大寫狀態(tài) 位5(Num)=1 表示處于數(shù)值鍵狀態(tài) 位4(Scroll)=1 表示設(shè)定為Scroll Lock狀態(tài) 位3(Alt)=1 表示Alt+Shift被按下 位2(Ctrl)=1 表示Ctrl+Shift被按下 位1(ShiftL)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 綠色建筑材料展示行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 高效玩具消毒箱行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報(bào)告
- 孩子獨(dú)立生活能力的培養(yǎng)方法
- 2025-2030中國木材防蛀防腐劑行業(yè)市場(chǎng)發(fā)展分析及投資前景與投資策略研究報(bào)告
- 2025-2030中國有機(jī)馬鈴薯淀粉行業(yè)市場(chǎng)發(fā)展趨勢(shì)與前景展望戰(zhàn)略研究報(bào)告
- 2025-2030中國智能路由器行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030中國智能浴室行業(yè)市場(chǎng)發(fā)展趨勢(shì)與前景展望戰(zhàn)略研究報(bào)告
- 2025-2030中國智能手機(jī)藍(lán)牙游戲控制器行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030中國普惠金融行業(yè)現(xiàn)狀供需分析及市場(chǎng)深度研究發(fā)展前景及規(guī)劃可行性分析研究報(bào)告
- 2025-2030中國星級(jí)酒店家具行業(yè)市場(chǎng)發(fā)展分析及競(jìng)爭(zhēng)格局與投資前景研究報(bào)告
- 核和輻射事故現(xiàn)場(chǎng)衛(wèi)生救援
- 學(xué)生心理危機(jī)識(shí)別與干預(yù)(家長(zhǎng)教師版)
- 廣西建設(shè)工程質(zhì)量檢測(cè)和建筑材料試驗(yàn)收費(fèi)項(xiàng)目及標(biāo)準(zhǔn)指導(dǎo)性意見(新)2023.10.11
- 象征手法 (2)課件
- 《過零丁洋》公開課件
- 黃精栽培技術(shù)PPT
- 廣州市三年級(jí)下冊(cè)英語單詞
- 08S305-小型潛水泵選用及安裝圖集
- 《專利糾紛與處理》PPT課件
- 農(nóng)業(yè)技術(shù)推廣知識(shí)課程教學(xué)大綱
- 員工技能等級(jí)評(píng)定方案匯編
評(píng)論
0/150
提交評(píng)論