+ Trả lời chủ đề
Hiện kết quả từ 1 tới 1 của 1

Chủ đề: Một số hàm cơ bản của ngắt 16h

  1. #1
    Status : HongPhuong_Alpha đang ẩn
    Tham gia ngày : Aug 2011
    Bài gửi : 228

    Một số hàm cơ bản của ngắt 16h

    MỘT SỐ HÀM CƠ BẢN CỦA NGẮT 16H


    HÀM 00H
    [hr]
    Hàm 00h của ngắt 16h: Lấy một mã hai byte trong vùng đệm bàn phím BIOS. Nếu vùng đệm rỗng hàm sẽ đợi cho đến khi vùng đệm khác rỗng (có phím). Đối với bàn phím từ 101 phím trở lên ta mở rộng hàm 00h thành hàm 10h.

    Thực hiện:
    Mã:
            Mov ah,00
            Int 16h
    Giá trị trả về:
    AH: Mã mở rộng.
    AL: Mã ASCII.
    HÀM 01H
    [hr]
    Hàm 01h của ngắt 16h: Hỏi vùng đệm bàn phím (rỗng hay không rỗng).Đối với bàn phím từ 101 phím trở lên ta mở rộng hàm 01h thành hàm 11h.

    Thực hiện:
    Mã:
            Mov ah,1
            Int 16h
    Giá trị trả về:
    ZF mang giá trị 1 khi vùng đệm rỗng, mang giá trị 0 khi vùng đệm bàn phím khác rỗng.
    HÀM 02H
    [hr]
    Hàm 02h của ngắt 16h: Hàm cho phép đọc trạng thái của các phím đặt biệt như Shift, Alt, Num Lock, Caps Lock, Scroll Lock, Ctrl. Đối với bàn phím từ 101 phím trở lên ta mở rộng hàm 02h thành hàm 12h.

    Thực hiện:
    Mã:
            Mov ah,2
            Int 16h
    Giá trị trả về:
    AL = byte trạng thái bàn phím.
    Bit 0 = 1 Shift phải đang ấn.
    Bit 1 = 1 Shift trái đang ấn.
    Bit 2 = 1 Ctrl đang ấn.
    Bit 3 = 1 Alt đang ấn.
    Bit 4 = 1 Scroll Lock On.
    Bit 5 = 1 Num Lock On.
    Bit 6 = 1 Caps Lock On.
    Bit 7 = 1 Insert hoạt động.
    HÀM 03H
    [hr]
    Hàm 03h của ngắt 16h: Đặt các thời gian trì hoản và lặp phím.
    Hàm 03h cho phép điều chỉnh thời gian được giữ phím trước khi việc lặp phím bắt đầu có tác dụng. Thông thường thời gian trì hoản phím là 1/2 giây, nhưng có thể đổi thành 1/4, 3/4 hay 1 giây. Ngoài ra phục vụ còn cho phép thời gian lặp phím. Thông thường thời gian lặp phím là 1/10s nhưng có thể đổi thành 1/30s đến 1/2s.

    Mã Trì Hoản Thời Gian Trì Hoản
    [table border="1"][tr][td]0 [/td][td] 250ms[/td][/tr][tr][td] 1[/td][td]500ms [/td][/tr][tr][td] 2[/td][td] 750ms[/td][/tr][tr][td] 3[/td][td]1s [/td][/tr][/table]
    Thời gian lặp phím có thể từ 0 đến 1Fh. 0 tưng ứng thời gian lặp phím 1/30s là nhanh nhất còn 1Fh tương ứng thời gian lặp phím 2s là chậm nhất.

    Thực hiện:
    Mã:
            Mov ah,3
            Mov Al,5
            Mov Bh, mã thời gian trì hoản     
            Mov Bl, thời gian lặp phím.         
            Int 16h
    HÀM 05H
    [hr]
    Hàm 05h của ngắt 16h: Cho phép ghi một mã 2 byte vào vùng đệm bàn phím BIOS. Ứng dụng: Cho phép nhập các phím từ bàn phím một cách tự động mà không cần phím.
    Thực hiện:
    Mã:
            Mov ah,5
            Mov cx, mã 2 byte
            Int 16h
    Lần sửa cuối bởi HongPhuong_Alpha; 06-08-2011 lúc 04:48 PM

+ Trả lời chủ đề

Quyền viết bài

  • Bạn không thể gửi chủ đề mới
  • Bạn không thể gửi trả lời
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
Trang Chủ Việc Làm Gia Sư Gia sư