找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2830|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

INT 21H功能集

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:60076 發(fā)表于 2014-4-30 23:36 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
INT 21H是一條中斷語(yǔ)句,AH的值為它的功能,當(dāng)AH值不一樣時(shí),它的功能也不同。
      
       功能一:輸出一個(gè)字符串用 21H 中斷的09 函數(shù)。INT 21H可以被用來(lái)向監(jiān)視器傳遞ASCII數(shù)據(jù),但是必須要設(shè)定AH = 09 且 DX = 要被顯示的ASCII 數(shù)據(jù)的偏移地址,然后調(diào)用 21H 中斷。 監(jiān)視器會(huì)輸出整個(gè)字符串直到遇到了“$”;09函數(shù)是不會(huì)顯示‘$’的

例如:要顯示字符串 “THE EARTH IS BUT ONE COUNTRY”

DATA_ASC  DB  'THE EARTH IS BUT ONE COUNTRY', '$'

     MOV AH, 09;   選擇09函數(shù)

     MOV DX, OFFSET DATA_ASC;  DX = 數(shù)據(jù)的偏移地址

     INT 21H;  調(diào)用21H中斷



       功能二:輸出一個(gè)字符用 21H 中斷的02 函數(shù)。當(dāng)要輸出一個(gè)字符時(shí),需要設(shè)定 AH = 02, DL 存放將要顯示的字符,然后調(diào)用21H中斷;02函數(shù)可以顯示'$'字符

例如:要顯示“J”

    MOV AH, 02

    MOV DL,'J';   顯示字符‘J’

    INT 21H;   調(diào)用21H中斷



       功能三:輸入一個(gè)字符用 21H 中斷的01 函數(shù)。此函數(shù)會(huì)一直等待用戶從鍵盤(pán)輸入一個(gè)字符,然后會(huì)顯示在頻幕中。在調(diào)用中斷后,輸入的字符會(huì)被存放到AL 中

    MOV AH, 01;   01號(hào)函數(shù)

    INT 21H;   在這之后,輸入的字符會(huì)被存放到寄存器AL 中,并將字符顯示出來(lái)



       功能四:輸入一個(gè)字符串用 21H 中斷的0AH 函數(shù)。此函數(shù)可以提供方法讓用戶輸入一個(gè)字符串并將之放入預(yù)存的內(nèi)存; 但是必須設(shè)定 AH = 0AH, DX = 將要存放的地址的偏移值; 這通常比認(rèn)為是緩沖區(qū)域;而DOS要求緩沖區(qū)域必須事前在數(shù)據(jù)段中定義,且第一個(gè)字節(jié)必須說(shuō)明緩沖區(qū)的大;在輸入完成后, DOS會(huì)將輸入的字符的個(gè)數(shù)(不包含回車(chē)鍵)放在第二個(gè)字節(jié);然后接下來(lái)的字節(jié)即從第3個(gè)字節(jié)開(kāi)始才會(huì)放從鍵盤(pán)輸入的字符

例如:要存放從鍵盤(pán)輸入的6個(gè)字符(包含了回車(chē))

ORG 0010H          ;將從0010H開(kāi)始存放從鍵盤(pán)輸入的字符

DATA1    DB    6, ?,  6  DUP (FF)      ; 在內(nèi)存 0010H中放的是6,表示緩沖區(qū)域的大小為6;0011H的內(nèi)容仍未確定,其值為從鍵盤(pán)中輸
                                        ;入的字符的個(gè)數(shù)(不包含回車(chē)鍵), 從0012H到0017H的6個(gè)字節(jié)中被初始化為FF,將要存放從鍵盤(pán)輸入的字符

MOV AH, 0AH                                ;  使用0AH函數(shù)來(lái)輸入字符串

MOV DX, OFFSET DATA1            ;  取緩沖區(qū)的地址偏移值

INT 21H                                         ; 調(diào)用21H中斷

注:在IBM PC中,21H中斷只有當(dāng)用戶按下了回車(chē)才會(huì)執(zhí)行(回車(chē)的ASCII 值為 0DH)


         功能五:從鍵盤(pán)中輸入一個(gè)字符,但是不顯示出來(lái),用21H的07函數(shù),用戶輸入的字符同樣會(huì)被存放到AL 寄存器中

  MOV AH, 07

  INT 21H
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表