當前位置:編程學習大全網 - 編程語言 - 哪位知道這匯編語言的程序代碼的中文含義?

哪位知道這匯編語言的程序代碼的中文含義?

首先申明不是沖著懸賞來的。

其次,匯編並不是那樣的難以理解。

比如會的人都知道 int21h 是輸出的意思。

首先確認壹下:匯編的核心是中斷,而不是那些 mov、add、sub之類的指令。

中斷相當於其他編程語言的函數,不過更底層壹點。

以下為所有中斷的中文含義:

00H —設置顯示器模式

01H —設置光標形狀

02H —設置光標位置

03H —讀取光標信息

04H —讀取光筆位置

05H —設置顯示頁

06H、07H —初始化或滾屏

08H —讀光標處的字符及其屬性

09H —在光標處按指定屬性顯示字符

0AH —在當前光標處顯示字符

0BH —設置調色板、背景色或邊框

0CH —寫圖形象素

0DH —讀圖形象素

0EH —在Teletype模式下顯示字符

0FH —讀取顯示器模式

10H —顏色

11H —字體

12H —顯示器的配置

13H —在Teletype模式下顯示字符串

1AH —讀取/設置顯示組合編碼

1BH —讀取功能/狀態信息

1CH —保存/恢復顯示器狀態

(1)、功能00H

功能描述:設置顯示器模式

入口參數:AH=00H

AL=顯示器模式,見下表所示

出口參數:無

可用的顯示模式如下所列:

00H:40×25 16色 文本

01H:40×25 16色 文本

02H:80×25 16色 文本

03H: 80×25 16色 文本

04H:320×200 4色

05H:320×200 4色

06H:640×200 2色

07H:80×25 2色 文本

08H:160×200 16色

09H:320×200 16色

0AH:640×200 4色

0BH:保留

0CH:保留

0DH:320×200 16色

0EH:640×200 16色

0FH:640×350 2(單色)

10H:640×350 4色

10H:640×350 16色

11H:640×480 2色

12H:640×480 16色

13H:640×480 256色

對於超級VGA顯示卡,我們可用AX=4F02H和下列BX的值來設置其顯示模式。

BX顯示模式屬性

100H:640×400 256色

101H:640×480 256色

102H:800×600 16色

103H:800×600 256色

104H:1024×768 16色

105H:1024×768 256色

106H:1280×1024 16色

107H:1280×1024 256色

108H:80×60 文本模式

109H:132×25 文本模式

10AH:132×43 文本模式

10BH:132×50 文本模式

10CH:132×60 文本模式

(2)、功能01H

功能描述:設置光標形狀

入口參數:AH=01H

CH低四位=光標的起始行

CL低四位=光標的終止行

出口參數:無

(3)、功能02H

功能描述:用文本坐標下設置光標位置

入口參數:AH=02H

BH=顯示頁碼

DH=行(Y坐標)

DL=列(X坐標)

出口參數:無

(4)、功能03H

功能描述:在文本坐標下,讀取光標各種信息

入口參數:AH=03H

BH=顯示頁碼

出口參數:CH=光標的起始行

CL=光標的終止行

DH=行(Y坐標)

DL=列(X坐標)

(5)、功能04H

功能描述:獲取當前狀態和光筆位置

入口參數:AH=04H

出口參數:AH=00h——光筆未按下/未觸發,01h——光筆已按下/已觸發

BX=象素列(圖形X坐標)

CH=象素行(圖形Y坐標,顯示模式:04H~06H)

CX=象素行(圖形Y坐標,顯示模式:0DH~10H)

DH=字符行(文本Y坐標)

DL=字符列(文本X坐標)

(6)、功能05H

功能描述:設置顯示頁,即選擇活動的顯示頁

入口參數:AH=05H

AL=顯示頁

對於CGA、EGA、MCGA和VGA,其顯示頁如下表所列: 模式頁數顯示器類型

00H、01H0~7CGA、EGA、MCGA、VGA

02H、03H0~3CGA

02H、03H0~7EGA、MCGA、VGA

07H0~7EGA、VGA

0DH0~7EGA、VGA

0EH0~3EGA、VGA

0FH0~1EGA、VGA

10H0~1EGA、VGA

對於PCjr:

AL=80H——讀取CRT/CPU頁寄存器

81H——設置CPU頁寄存器

82H——設置CRT頁寄存器

83H——設置CRT/CPU頁寄存器

BH=CRT頁(子功能號82H和83H)

BL=CPU頁(子功能號81H和83H)

出口參數:對於前者,無出口參數,但對PCjr在子功能80H~83H調用下,有:BH=CRT頁寄存器,BL=CPU頁寄存器

(7)、功能06H和07H

功能描述:初始化屏幕或滾屏

入口參數:AH=06H——向上滾屏,07H——向下滾屏

AL=滾動行數(0——清窗口)

BH=空白區域的缺省屬性

(CH、CL)=窗口的左上角位置(Y坐標,X坐標)

(DH、DL)=窗口的右下角位置(Y坐標,X坐標)

出口參數:無

(8)、功能08H

功能描述:讀光標處的字符及其屬性

入口參數:AH=08H

BH=顯示頁碼

出口參數:AH=屬性

AL=字符

(9)、功能09H

功能描述:在當前光標處按指定屬性顯示字符

入口參數:AH=09H

AL=字符

BH=顯示頁碼

BL=屬性(文本模式)或顏色(圖形模式)

CX=重復輸出字符的次數

出口參數:無

(10)、功能0AH

功能描述:在當前光標處按原有屬性顯示字符

入口參數:AH=0AH

AL=字符

BH=顯示頁碼

BL=顏色(圖形模式,僅適用於PCjr)

CX=重復輸出字符的次數

出口參數:無

(11)、功能0BH

功能描述:設置調色板、背景色或邊框

入口參數:AH=0BH

設置顏色:BH=00H,01=顏色

選擇調色板:BH=01H,BL=調色板(320×200、4種顏色的圖形模式)

出口參數:無

(12)、功能0CH

功能描述:寫圖形象素

入口參數:AH=0CH

AL=象素值

BH=頁碼

(CX、DX)=圖形坐標列(X)、行(Y)

出口參數:無

(13)、功能0DH

功能描述:讀圖形象素

入口參數:AH=0DH

BH=頁碼

(CX、DX)=圖形坐標列(X)、行(Y)

出口參數:AL=象素值

(14)、功能0EH

功能描述:在Teletype模式下顯示字符

入口參數:AH=0EH

AL=字符

BH=頁碼

BL=前景色(圖形模式)

出口參數:無

(15)、功能0FH

功能描述:讀取顯示器模式

入口參數:AH=0FH

出口參數:AH=屏幕字符的列數

AL=顯示模式(參見功能00H中的說明)

BH=頁碼

(16)、功能10H

功能描述:顏色中斷。

其子功能說明如下:

00H — 設置調色板寄存器

01H — 設置邊框顏色

02H — 設置調色板和邊框

03H — 觸發閃爍/亮顯位

07H — 讀取調色板寄存器

08H — 讀取邊框顏色

09H — 讀取調色板和邊框

10H — 設置顏色寄存器

12H — 設置顏色寄存器塊

13H — 設置顏色頁狀態

15H — 讀取顏色寄存器

17H — 讀取顏色寄存器塊

1AH — 讀取顏色頁狀態

1BH — 設置灰度值

(17)、功能11H

功能描述:字體中斷。

其子功能說明如下:

00H裝入用戶字體和可編程控制器

10H裝入用戶字體和可編程控制器

01H裝入8×14 ROM字體和可編程控制器

11H裝入8×14 ROM字體和可編程控制器

02H裝入8×8 ROM字體和可編程控制器

12H裝入8×8 ROM字體和可編程控制器

03H設置塊指示器

04H裝入8×16 ROM字體和可編程控制器

14H裝入8×16 ROM字體和可編程控制器

20H設置INT 1Fh字體指針

21H為用戶字體設置INT 43h

22H為8×14 ROM字體設置INT 43H

23H為8×8 ROM字體設置INT 43H

24H為8×16 ROM字體設置INT 43H

30H讀取字體信息

(18)、功能12H

功能描述:顯示器的配置中斷。

其子功能說明如下:

10H — 讀取配置信息

20H — 選擇屏幕打印

30H — 設置掃描行

31H — 允許/禁止裝入缺省調色板

32H — 允許/禁止顯示

33H — 允許/禁止灰度求和

34H — 允許/禁止光標模擬

35H — 切換活動顯示

36H — 允許/禁止屏幕刷新

(19)、功能13H

功能描述:在Teletype模式下顯示字符串

入口參數:AH=13H

BH=頁碼

BL=屬性(若AL=00H或01H)

CX=顯示字符串長度

(DH、DL)=坐標(行、列)

ES:BP=顯示字符串的地址 AL=顯示輸出方式

0——字符串中只含顯示字符,其顯示屬性在BL中。顯示後,光標位置不變

1——字符串中只含顯示字符,其顯示屬性在BL中。顯示後,光標位置改變

2——字符串中含顯示字符和顯示屬性。顯示後,光標位置不變

3——字符串中含顯示字符和顯示屬性。顯示後,光標位置改變

出口參數:無

(20)、功能1AH

功能描述:讀取/設置顯示組合編碼,僅PS/2有效,在此從略

(21)、功能1BH

功能描述:讀取功能/狀態信息,僅PS/2有效,在此從略

(22)、功能1CH

功能描述:保存/恢復顯示器狀態,僅PS/2有效,在此從略

===============================================================

2、直接磁盤服務(Direct Disk Service——INT 13H)

===============================================================

00H —磁盤系統復位

01H —讀取磁盤系統狀態

02H —讀扇區

03H —寫扇區

04H —檢驗扇區

05H —格式化磁道

06H —格式化壞磁道

07H —格式化驅動器

08H —讀取驅動器參數

09H —初始化硬盤參數

0AH —讀長扇區

0BH —寫長扇區

0CH —查尋

0DH —硬盤系統復位

0EH —讀扇區緩沖區

0FH —寫扇區緩沖區

10H —讀取驅動器狀態

11H —校準驅動器

12H —控制器RAM診斷

13H —控制器驅動診斷

14H —控制器內部診斷

15H —讀取磁盤類型

16H —讀取磁盤變化狀態

17H —設置磁盤類型

18H —設置格式化媒體類型

19H —磁頭保護

1AH —格式化ESDI驅動器

(1)、功能00H

功能描述:磁盤系統復位

入口參數:AH=00H

DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤

出口參數:CF=0——操作成功,AH=00H,否則,AH=狀態代碼,參見功能號01H中的說明

(2)、功能01H

功能描述:讀取磁盤系統狀態

入口參數:AH=01H

DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤

出口參數:AH=00H,AL=狀態代碼,其定義如下:

00H — 無錯

01H — 非法命令

02H — 地址目標未發現

03H — 磁盤寫保護(軟盤)

04H — 扇區未發現

05H — 復位失敗(硬盤)

06H — 軟盤取出(軟盤)

07H — 錯誤的參數表(硬盤)

08H — DMA越界(軟盤)

09H — DMA超過64K界限

0AH — 錯誤的扇區標誌(硬盤)

0BH — 錯誤的磁道標誌(硬盤)

0CH — 介質類型未發現(軟盤)

0DH — 格式化時非法扇區號(硬盤)

0EH — 控制數據地址目標被發現(硬盤)

0FH — DMA仲裁越界(硬盤)

10H — 不正確的CRC或ECC編碼

11H — ECC校正數據錯(硬盤)

CRC:Cyclic Redundancy Check code

ECC:Error Checking & Correcting code

20H — 控制器失敗

40H — 查找失敗

80H — 磁盤超時(未響應)

AAH — 驅動器未準備好(硬盤)

BBH — 未定義的錯誤(硬盤)

CCH — 寫錯誤(硬盤)

E0H — 狀態寄存器錯(硬盤)

FFH — 檢測操作失敗(硬盤)

(3)、功能02H

功能描述:讀扇區

入口參數:AH=02H

AL=扇區數

CH=柱面

CL=扇區

DH=磁頭

DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤

ES:BX=緩沖區的地址

出口參數:CF=0——操作成功,AH=00H,AL=傳輸的扇區數,否則,AH=狀態代碼,參見功能號01H中的說明

(4)、功能03H

功能描述:寫扇區

入口參數:AH=03H

AL=扇區數

CH=柱面

CL=扇區

DH=磁頭

DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤

ES:BX=緩沖區的地址

出口參數:CF=0——操作成功,AH=00H,AL=傳輸的扇區數,否則,AH=狀態代碼,參見功能號01H中的說明

(5)、功能04H

功能描述:檢驗扇區

入口參數:AH=04H

AL=扇區數

CH=柱面

CL=扇區

DH=磁頭

DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤

ES:BX=緩沖區的地址

出口參數:CF=0——操作成功,AH=00H,AL=被檢驗的扇區數,否則,AH=狀態代碼,參見功能號01H中的說明

(6)、功能05H

功能描述:格式化磁道

入口參數:AH=05H

AL=交替(Interleave)

CH=柱面

DH=磁頭

DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤

ES:BX=地址域列表的地址

出口參數:CF=0——操作成功,AH=00H,否則,AH=狀態代碼,參見功能號01H中的說明

(7)、功能06H

功能描述:格式化壞磁道

入口參數:AH=06H

AL=交替

CH=柱面

DH=磁頭

DL=80H~0FFH:硬盤

ES:BX=地址域列表的地址

出口參數:CF=0——操作成功,AH=00H,否則,AH=狀態代碼,參見功能號01H中的說明

(8)、功能07H

功能描述:格式化驅動器

入口參數:AH=07H

AL=交替

CH=柱面

DL=80H~0FFH:硬盤

出口參數:CF=0——操作成功,AH=00H,否則,AH=狀態代碼,參見功能號01H中的說明

(9)、功能08H

功能描述:讀取驅動器參數

入口參數:AH=08H

DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤

出口參數:CF=1——操作失敗,AH=狀態代碼,參見功能號01H中的說明,否則, BL=01H — 360K

=02H — 1.2M

=03H — 720K

=04H — 1.44M

CH=柱面數的低8位

CL的位7-6=柱面數的該2位

CL的位5-0=扇區數

DH=磁頭數

DL=驅動器數

ES:DI=磁盤驅動器參數表地址

(10)、功能09H

功能描述:初始化硬盤參數

入口參數:AH=09H

DL=80H~0FFH:硬盤(還有有關參數表問題,在此從略)

出口參數:CF=0——操作成功,AH=00H,否則,AH=狀態代碼,參見功能號01H中的說明

(11)、功能0AH

功能描述:讀長扇區,每個扇區隨帶四個字節的ECC編碼

入口參數:AH=0AH

AL=扇區數

CH=柱面

CL=扇區

DH=磁頭

DL=80H~0FFH:硬盤

ES:BX=緩沖區的地址

出口參數:CF=0——操作成功,AH=00H,AL=傳輸的扇區數,否則,AH=狀態代碼,參見功能號01H中的說明

(12)、功能0BH

功能描述:寫長扇區,每個扇區隨帶四個字節的ECC編碼

入口參數:AH=0BH

AL=扇區數

CH=柱面

CL=扇區

DH=磁頭

DL=80H~0FFH:硬盤

ES:BX=緩沖區的地址

出口參數:CF=0——操作成功,AH=00H,AL=傳輸的扇區數,否則,AH=狀態代碼,參見功能號01H中的說明

(13)、功能0CH

功能描述:查尋

入口參數:AH=0CH

CH=柱面的低8位

CL(7-6位)=柱面的高2位

DH=磁頭

DL=80H~0FFH:硬盤

出口參數:CF=0——操作成功,AH=00H,否則,AH=狀態代碼,參見功能號01H中的說明

(14)、功能0DH

功能描述:硬盤系統復位

入口參數:AH=0DH

DL=80H~0FFH:硬盤

出口參數:CF=0——操作成功,AH=00H,否則,AH=狀態代碼,參見功能號01H中的說明

(15)、功能0EH

功能描述:讀扇區緩沖區

入口參數:AH=0EH

ES:BX=緩沖區的地址

出口參數:CF=0——操作成功,否則,AH=狀態代碼,參見功能號01H中的說明

(16)、功能0FH

功能描述:寫扇區緩沖區

入口參數:AH=0FH

ES:BX=緩沖區的地址

出口參數:CF=0——操作成功,否則,AH=狀態代碼,參見功能號01H中的說明

(17)、功能10H

功能描述:讀取驅動器狀態

入口參數:AH=10H

DL=80H~0FFH:硬盤

出口參數:CF=0——操作成功,AH=00H,否則,AH=狀態代碼,參見功能號01H中的說明

(18)、功能11H

功能描述:校準驅動器

入口參數:AH=11H

DL=80H~0FFH:硬盤

出口參數:CF=0——操作成功,AH=00H,否則,AH=狀態代碼,參見功能號01H中的說明

(19)、功能12H

功能描述:控制器RAM診斷

入口參數:AH=12H

出口參數:CF=0——操作成功,否則,AH=狀態代碼,參見功能號01H中的說明

(20)、功能13H

功能描述:控制器驅動診斷

入口參數:AH=13H

出口參數:CF=0——操作成功,否則,AH=狀態代碼,參見功能號01H中的說明

(21)、功能14H

功能描述:控制器內部診斷

入口參數:AH=14H

出口參數:CF=0——操作成功,否則,AH=狀態代碼,參見功能號01H中的說明

(22)、功能15H

功能描述:讀取磁盤類型

入口參數:AH=15H

DL=驅動器,00H~7FH:軟盤;80H~0FFH:硬盤

出口參數:CF=1——操作失敗,AH=狀態代碼,參見功能號01H中的說明, 否則,AH=00H — 未安裝驅動器

=01H — 無改變線支持的軟盤驅動器

=02H — 帶有改變線支持的軟盤驅動器

=03H — 硬盤,CX:DX=512字節的扇區數

(23)、功能16H

功能描述:讀取磁盤變化狀態

入口參數:AH=16H

DL=00H~7FH:軟盤

出口參數:CF=0——磁盤未改變,AH=00H,否則,AH=06H,參見功能號01H中的說明

(24)、功能17H

功能描述:設置磁盤類型

入口參數:AH=17H

DL=00H~7FH:軟盤 AL=00H — 未用

=01H — 360K在360K驅動器中

=02H — 360K在1.2M驅動器中

=03H — 1.2M在1.2M驅動器中

=04H — 720K在720K驅動器中

出口參數:CF=0——操作成功,AH=00H,否則,AH=狀態編碼,參見功能號01H中的說明

(25)、功能18H

功能描述:設置格式化媒體類型

入口參數:AH=18H

CH=柱面數

CL=每磁道的扇區數

DL=00H~7FH:軟盤

出口參數:CF=0——操作成功,AH=00H,ES:DI=介質類型參數表地址,否則,AH=狀態編碼,參見功能號01H中的說明

(26)、功能19H

功能描述:磁頭保護,僅在PS/2中有效,在此從略

(27)、功能1AH

功能描述:格式化ESDI驅動器,僅在PS/2中有效,在此從略

===============================================================

3、串行口服務(Serial Port Service——INT 14H)

===============================================================

00H —初始化通信口

01H —向通信口輸出字符

02H —從通信口讀入字符

03H —讀取通信口狀態

04H —擴充初始化通信口

(1)、功能00H

功能描述:初始化通信口

入口參數:AH=00H

DX=初始化通信口號(0=COM1,1=COM2,……)

AL=初始化參數,參數的說明如下: 波特率奇偶位停止位字的位數

76543210

000 = 110X0 = None0 = 1 bit10 = 7 bits

001 = 15001 = Odd1 = 2 bits11 = 8 bits

010 = 30011 = Even

011 = 600

100 = 1200

101 = 2400

110 = 4800

111 = 9600

對於PS/2,可用INT 14H之功能04H和05H來初始化其通信速率大於9600。

出口參數:AH=通信口狀態,各狀態位為1時的含義如下: 位7—超時

位6—傳遞移位寄存器為空

位5—傳遞保持寄存器為空

位4—發現終止位3—發現幀錯誤

位2—發現奇偶錯

位1—發現越界錯

位0—接受數據準備好

AL=Modem狀態

位7—接受單線信號診斷

位6—環指示器

位5—數據發送準備好

位4—清除數據,再發送位3—改變在接受線上的信號診斷

位2—後邊界環指示器

位1—改變“數據準備好”狀態

位0—改變“清除—發送”狀態

(2)、功能01H

功能描述:向通信口輸出字符

入口參數:AH=01H

AL=字符

DX=初始化通信口號(0=COM1,1=COM2,……)

出口參數:AL的值不變

AH的位7=0——操作成功,通信口狀態,AH的位6~0是其狀態位

(3)、功能02H

功能描述:從通信口讀入字符

入口參數:AH=02H

DX=初始化通信口號(0=COM1,1=COM2,……)

出口參數:AL=接受的字符

AH的位7=0——操作成功,通信口狀態,AH的位6~0是其狀態位

(4)、功能03H

功能描述:讀取通信口狀態

入口參數:AH=03H

DX=初始化通信口號(0=COM1,1=COM2,……)

出口參數:AH=通信口狀態,AL=Modem狀態,參見功能號00H中的說明

(5)、功能04H

功能描述:擴充初始化通信口,僅在PS/2中有效,在此從略

剩余的中斷在基本都是外部接口,字數限制,不寫了。

  • 上一篇:美國CS專業最好的學校是哪所
  • 下一篇:什麽叫數控編程?
  • copyright 2024編程學習大全網