ngatDosbiosdoc

4 7 0
ngatDosbiosdoc

Đang tải... (xem toàn văn)

Thông tin tài liệu

[r]

(1)

Các ngắt BIOS Số hiệu

ngắt Hàm Công dụng Tham số vào Tham số ra

10h Chọn chế độ hiển thịcho hình. ah=0; al=chế độ(VGA, 16 mau>: al=3) Không

Thay đổi kích thớc trỏ, phải chọn dịng qt bắt đầu kết thúc trỏ

ah=1; bit thấp ch=dòng quét đầu; bit

thp cl=dịng qt cuối Khơng Dịch chuyển trỏ (vịtrí). ah=2; bh=số trang;dh=hàng; dl=cột Khơng Xác định vị trí kíchthớc thời

trá ah=3; bh=số trang;

ch=dòng quét đầu; cl=dòng quét cuối; dh=dòng; dl=cột

5 Chọn trang hiển thị ah=5;dh=dòng; dl=cộtal=số trang; Kh«ng

6 Cuốn hình hay cửasổ lên số dịng xác định

ah=6; al=sè dßng cn (al=0 hình hay cửa sổ); bh=thuộc tính dòng trống; (ch,cl)=(dòng,cột) góc trái cửa sổ; (dh,dl)=(dòng,cột) góc dới phải cửa sổ

Không

7 Cuốn hình hay cửasổ xuống số dũng xỏc nh

ah=6; al=số dòng (al=0 hình hay cửa sổ); bh=thuộc tính dòng trống; (ch,cl)=(dòng,cột) góc trái cửa sổ; (dh,dl)=(dòng,cột) góc dới phải cửa sổ

Không

8 Đọc ký tự với thuộc tínhtại vị trí trá (m·

ASCII) ah=8; bh=sè trang

ah=thuéc tÝnh; al=m· ASCII cđa ký tù

9 HiƯn ký tù với thuộctính vị trí trỏ. ah=9; al=mà ASCII cđa kýtù; bh=sè trang; bl=thc

tÝnh; cx=sè lÇn viÕt ký tự Không 0ah Viết ký tự vị trí contrá, ký tù nhËn thuéc

tÝnh cña ký tù viÕt tríc

ah=0ah; al=m· ASCII cđa ký tù; bl=sè trang; cx=số

lần viết ký tự Không 0bh Thiết lập bảng màu,nền viền.

0ch Vit im nh đồ hoạ 0dh Đọc điểm ảnh đồ hoạ 0eh Viết ký tự chế độtelex

0fh Xác định chế độ mànhình 10h (hàm

con 10h) ThiÕt lËp ghi mµu 10h (hµm

con 12h) ThiÕt lËp nhãm cácthanh ghi màu 10h (hàm

con 15h) Xỏc nh ghi màu 10h (hàm

(2)

13h ghi/đọc

đĩa Đọc sector

ah=2; al=số sector; ch=track; cl=sector; dh=head; dl=ổ đĩa (0-7f với đĩa mềm, 80-ffh với đĩa cứng); ES:BX=seg:off vùng đệm chứa dự liệu c

Thành công:

CF=0; ah=0; al=s cung c c

Không thành công: CF=1; ah=mà lỗi

3 Ghi sector

ah=3; al=số sector; ch=track; cl=sector; dh=head; dl=ổ đĩa (0-7f với đĩa mềm, 80-ffh với đĩa cứng); ES:BX=seg:off ca vựng m cha d liu ghi

Thành công:

CF=0; ah=0; al=s cung c ghi

Không thành công: CF=1; ah=mà lỗi 16h

Bàn phím Đọc ký tù tõ bµn phÝm ah=0; ah=scan code cđa phÝm;al=m· ASCII ký tự

2 Lấy cờ bàn phÝm ah=2;

al=các cờ (8); al7=1: Phím insert đợc ấn; al6=1: Phím Caps Lock đợc ấn; al5=1: Phím Num Lock đợc ấn; al4=1: Phím Scrol Lock đợc ấn; al3=1: Phím Alt đợc ấn; al2=1; Phím Ctrl đợc ấn; al1=1: Phím Shif trái đợc ấn; al0=1: Phím Shif phải đợc n

10h Đọc ký tự tự bàn phím(loại 101 phÝm) ah=10h ah=scan code cña phÝm;al=m· ASCII cña ký tù 17h

M¸y in ViÕt ký tù m¸y in Các ngắt DOS

Số hiệu

ngắt Hàm Công dụng Tham số vào Tham số ra

21h Kết thúc việc thi hànhmột chơng trình ah=0; CS=địa đoạn củađoạn mào đầu (PSP) Không

1

Vào ký tự từ bàn phím (đợi đọc ký tự từ thiết bị vào chuẩn (nếu cha có), sau đa ký tự tới thiết bị chuẩn đa mã ASCII ký tự vào al

ah=1 al=m· ASCII cña ký tù

2

Hiển thị lên hình (đa ký tự có mà ASCII dl tíi thiÕt bÞ chn)

ah=2; dl=mà ASCII ký

tự cần (đa ra) hiển thị Không In ký tự (đa ký tự có m·ASCII dl tíi thiÕt

bÞ in chn)

ah=5; dl=mà ASCII ký

tự cần (đa ra) in Không Hiển thị chuỗi (đa chuỗiký tự tới thiết bị

chuẩn)

ah=9; ds:dx=trỏ tới chuỗi

ký tù kÕt thóc b»ng ‘$’ Kh«ng

2ah Xác định ngày tháng ah=2ah;

al=ngµy (0=chđ nhËt, 1=thø hai, , 6=thứ bảy); cx=năm (1980 2099); dh=tháng (1 12); dl=ngày (1 31) 2bh Đặt ngày tháng

ah=2bh;

cx=năm(1980 2099); dh=tháng (1 12); dl=ngày (1 31)

al=00h ngày hợp lệ; al=ffh ngày không hợp lệ

(3)

dh=giây (0 59); dl=phần trăm giây(0 99)

2dh Đặt thời gian

ah=2dh; ch=giờ (0 23); cl=phút(0 59);

dh=giây (0 59); dl=phần trăm giây(0 99)

al=00f nÕu tgian hỵp lƯ; al=ffh nÕu thêi gian không hợp lệ

30h Xỏc nh s phiờn bảncủa DOS hành ah=30h;

bx=0000h; cx=0000h; al=sè chÝnh phiên (trớc dấu chấm); ah=số phụ phiên b¶n (sau dÊu chÊm)

31h

Kết thúc chơng trình lại thờng trú (kết thúc chơng trình dành vùng nhớ tính theo n v 16 byte)

ah=31h; al=mà trả lại; dx=kích thíc bé nhí tÝnh

theo đơn vị 16 byte Không

33h Kiểm tra Ctrl-Break(thiết lập xác định trạng thái Break)

ah=33h;

al=00h để xác định trạng thái Ctrl-Break al=01h để thiết lập trạng thái Ctrl-Break dl=00h để thiết lập trạng thái OFF Ctrl-Break dl=01h để thiết lập trạng thỏi ON ca Ctrl-Break

dl=trạng thái hành (00h=OFF, 01h=ON)

35h Xác định vector ngắt(nhận địa

vector ng¾t) ah=35h; al=sè hiƯu ng¾t;

es:bx=con trỏ trỏ đến ch-ơng trình phục vụ ngắt

36h Xác định dung lợng còntrống đĩa ah=36h;(0=default, 1=A, …);dl=ổ đĩa

bx=số free cluster; dx=số cluster/đĩa; cx=số byte/sector; ax=số sector/cluster, =ffffh ổ đĩa không hợp lệ

39h Tạo th mục (MkDir) ah=39h; ds:dx=con trỏ trỏđến chuỗi ASCIIZ

(đ-ờng dẫn-path) ax=mã lỗi CF=1 3ah Xoá thu mục con(RmDir) ah=3ah; ds:dx=con trỏ trỏđến chuỗi ASCIIZ

(đ-ờng dẫn-path) ax=mã lỗi CF=1 3bh Thay đổi th mục hiệntại (ChDir) ah=3bh; ds:dx=con trỏ trỏđến chui ASCIIZ

(đ-ờng dẫn-path) ax=mà lỗi CF=1 3ch

Tạo lập tệp (Creat) – Tạo tệp cắt bỏ tệp cũ để có đọ dài để chuẩn bị ghi

ah=3ch; ds:dx=con trỏ trỏ đến chuỗi ASCIIZ (đ-ờng dẫn-path); cx=thuộc tớnh ca

ax=mà lỗi CF=1, =thẻ 16 bit nÕu CF=0

3dh Më mét tƯp cho tríc

ah=3dh; ds:dx=con trỏ trỏ đến chuỗi ASCIIZ (đ-ờng dn-path); al=mó truy nhp

ax=mà lỗi CF=1, =thẻ 16 bit CF=0 3eh Đóng thẻ tệp chotrớc ah=3eh; bx=thẻ tệp đa lạibởi thao tác mở hay tạo tệp ax=mà lỗi CF=1,không có nghĩa CF=0

3fh

Đọc từ tệp hay từ thiết bị (chuyển số byte cho trớc từ tệp vào đệm cho trớc)

ah=3fh; bx=thẻ tệp; ds:dx=địa đệm; cx=số byte đọc;

ax=số byte đọc đợc, =mã lỗi CF=1

40h Ghi vào tệp hay vào thiết bị (chuyển số byte cho trớc từ đệm vào tệp

ah=40h; bx=thẻ tệp; ds:dx=địa đệm (dữ liệu để viết); cx=số byte đợc viết;

(4)

cho tríc) 41h

Xoá tệp th mục định (Unlink) – Xoá danh mục t-ơng ứng với tên tệp th mục

ah=41h; ds:dx=địa

một ASCIIZ ax=mà lỗi CF=1,không cónghĩa CF=0

42h

Di chuyển trỏ ghi/đọc tệp (LSeek) theo phng thc nh trc

ah=42h; ds:dx=khoảng cách (offset) di chun theo byte; al=ph¬ng thøc di chun (0, 1, 2); bx=thẻ tệp

ax=mà lỗi CF=1; dx:ax=vị trÝ trá míi nÕu CF=0

47h

Xác định th mục thời Đa đờng dẫn đầy đủ (bắt đầu từ th mục gốc) th mục cho ổ đĩa cho trớc vào vùng nhớ có địa ds:si

ah=47h; ds:si=con trỏ tới vùng nhớ 64 byte ngời sử dụng; dl=số hiệu ổ đĩa (0=default, 1=A, )

ds:si tên đờng dẫn đầy đủ từ th mục gốc CF=0; ax=mã lỗi CF=1

48h Cấp phát nhớ theosố đơn vị 16 byte (paragraph) yêu cầu

ah=48h; bx=số đơn vị 16 byte nhớ yêu cầu;

ax:0=địa ch nh cp phỏt;

ax=mà lỗi CF=1; ax nghĩa CF=0

49h 4ch

Kết thúc chơng trình (exit) trả điều khiển cho chơng trình gọi

ah=4ch; al=mà đa lại Không

25h c a tuyt i

al=số hiệu ổ đĩa; cx=số sector cần đọc; dx=số cung logic bắt đầu; ds:bx=địa chuyển đến

Thành công: CF=0 Không thành công: CF=1 ax chứa mã lỗi 26h Ghi đĩa tuyệt đối

al=số hiệu ổ đĩa; cx=số sector cần ghi; dx=số cung logic bắt đầu; ds:bx=địa chuyển

Thành công: CF=0 Không thành công: CF=1 ax chứa mã lỗi 27h Kết thúc chơng trình vàở lại thờng trú dx=độ lệch chỗ bắt đầuvùng nhớ đợc giải phóng,

Ngày đăng: 23/05/2021, 19:27

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan