Tải bản đầy đủ (.docx) (2 trang)

Các hàm nhập xuất cơ bản Vi xử lý

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (63.23 KB, 2 trang )

Các hàm nhập/xuất cơ bản của DOS, ngắt 21h:
Hàm 1: Nhập 1 ký tự từ bàn phím
Input:
ah = 1;
Call interrupt: int 21h
Output:
al = mã ASCII của ký tự
Ví dụ:
Mov ah, 1
Int 21h ; Ký tự nhập được sẽ có mã ASCII lưu trong al.
Hàm 2: Hiển thị một ký tự lên vị trí hiện tại của con trỏ màn hình
Input:
ah = 2, dl = mã ASCII (của ký tự cần hiển thị)
Call interrupt: int 21h
Output:
al = last character output.
Ví dụ:
Mov ah, 2
Mov dl, ‘A’
Int 21h
Hàm 9: Hiển thị một xâu (kết thúc bằng ‘$’) ký tự lên vị trí hiện tại
của con trỏ màn hình
Input:
ah = 9, dx = offset của xâu (lea dx, string_name)
Call interrupt: int 21h
Output:
al = 24h.
Ví dụ:
str db
‘Khoe de xay dung bao ve to quoc!$’


Mov ah, 9
Lea dx, str
Int 21h
Bài tập: Sử dụng các hàm nhập xuất trên và làm việc với stack như sau:
Nhập một chuỗi ký tự từ bàn phím và lưu mã ASCII của chúng vào stack,
kết thúc việc nhập bằng ấn Enter. Hiển thị chuỗi ký tự đã nhập theo
chiều ngược lại ở dòng tiếp theo.
Khung chương trình dịch ra *.COM:
Org
Jmp

100h
Start
; Khai báo dữ liệu
ten_chuoi db ‘abc, xyz … $’
Start:


Ret


Khung chương trình dịch ra *.EXE:
.Model
Small
.Stack
100h
.Data
; Khai bao du lieu o day
.Code
Main_proc_name Proc

Mov ax, @Data
; Khoi tao
Mov ds, ax
; doan du lieu

Mov ah, 4ch
; Ham 4ch de ket thuc chuong trinh
Int 21h
; Ket thuc chuong trinh
Main_proc_name Endp
; Chuong trinh con (neu co), cau truc nhu sau:
Sub_proc_name
Proc

Sub_proc_name
Endp
End Mainproc_name



×