Một số chức năng quản lý ổ đĩa Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin INT – Với ngắt 21h * Số hiệu hàm: 0Dh – Reset ổ đĩa Trong một điều kiện làm việc, nếu trong quá trình
Trang 1Một số chức năng quản lý ổ đĩa
Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 0Dh – Reset ổ đĩa
Trong một điều kiện làm việc, nếu trong quá trình xử lý các tập tin/chương trình bị lỗ Reset lại đĩa để xĩa vùng đệm của tập tin
Thao tác Thanh ghi Giá trị Điều kiện
Ví dụ:
MOV AH,0Dh
Trang 2Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 0Eh – Chọn ổ đĩa mặc định
- Chọn một ỗ đĩa làm ổ đĩa mặc định hiện hành
Thao tác Thanh ghi Giá trị Điều kiện
Một số chức năng quản lý ổ đĩa
Trang 3Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
Trang 4Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 1Bh – Lấy thơng tin ổ đĩa mặc định hiện hành
Thao tác Thanh ghi Giá trị Điều kiện
CX Kích thước sector vật lý
AL*CX*DX Dung lượng của đĩa
Ví dụ: Xác định thơng tin ổ đĩa mặc định hiện hành
MOV AH,1Bh
Một số chức năng quản lý ổ đĩa
Trang 5Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 1Ch – Lấy thơng tin ổ đĩa bất kỳ được chỉ định
Thao tác Thanh ghi Giá trị Điều kiện
AL*CX*DX Dung lượng của đĩa
Ví dụ: Xác định thơng tin ổ đĩa D
MOV AH,1Ch MOV DL,3
Một số chức năng quản lý ổ đĩa
Trang 6Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 36h – Lấy thơng tin khơng gian trống của ổ đĩa
Thao tác Thanh ghi Giá trị Điều kiện
AL*CX*DX Dung lượng của đĩa
Ví dụ: Xác định thơng tin khơng gian trống ổ đĩa mặc định
MOV AH,36h MOV DL,0
Một số chức năng quản lý ổ đĩa
Trang 7Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 39h – Tạo thư mục con
Thao tác Thanh ghi Giá trị Điều kiện
Ví dụ: Tạo thư mục mới ASM trong ổ đĩa C
Một số chức năng quản lý thư mục
Trang 8Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 47h – Lấy thư mục hiện hành
Thao tác Thanh ghi Giá trị Điều kiện
DL <Số> Số ổ đĩa (0:Mặc định,1=A,2=B, )
SI Địa chỉ khơng gian vùng đệm
cĩ tên ổ đĩa)
Ví dụ: Tạo thư mục mới ASM trong ổ đĩa C
Trang 9Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
Yêu cầu: Lấy thơng tin đường dẫn thư mục hiện hành
.DATA
DUONGDAN DB 64 DUP(20h) CODE
MOV AX,@DATA MOV DS,AX
CALL LAY_O_DIA CALL LAY_THU_MUC
MOV AH,4Ch INT 21h
END
Ví dụ: Minh họa quản lý ổ đĩa và thư mục
Trang 10Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
Yêu cầu: Lấy thơng tin đường dẫn thư mục hiện hành
Ví dụ: Minh họa quản lý ổ đĩa và thư mục
Trang 11Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
Yêu cầu: Lấy thơng tin đường dẫn thư mục hiện hành
Ví dụ: Minh họa quản lý ổ đĩa và thư mục
Demo
Trang 12Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 41h – Xĩa tập tin
Thao tác Thanh ghi Giá trị Điều kiện
DX Địa chỉ của chuỗi ASCII chứa đường
dẫn đến tập tin
Ra AX Mã lỗi nếu cĩ (02,03 hoặc 05)
Ví dụ: Xĩa tập tin ABC.txt trong ổ D
.DATA
ASCStr DB 'D:\ABC.txt‘,00h CODE
LEA DX,ASCStr INT 21h
Một số chức năng quản lý tập tin
Trang 13Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 56h – Đổi tên tập tin
Thao tác Thanh ghi Giá trị Điều kiện
DS:DX DS:DX trỏ đến đầu tên củ
ES:DI ES:DI trỏ đến đầu tên mới
Ra AX Mã lỗi nếu cĩ (02,03 hoặc 05)
Ví dụ: Đổi tên tập tin ABC.txt trong ổ D thành DEF.txt
.DATA
TapTinA DB 'D:\ABC.txt‘,00h TapTinB DB 'D:\DEF.txt‘,00h CODE
Trang 14Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 43h – Lấy hoặc thiết lập thuộc tính tập tin
Thao tác Thanh ghi Giá trị Điều kiện
DS:DX DS:DX trỏ đến tên tập tin Thiết lập AL 1
CX <Số> Thuộc tính mới ES:DI ES:DI trỏ đến đầu tên mới
Thanh ghi CX với các bit thuộc tính:
Trang 15Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 43h – Lấy hoặc thiết lập thuộc tính tập tin
Ví dụ: Đổi thuộc tính tập tin Vidu.txt trong ổ đĩa C cĩ thuộc tính ẩn
.DATA TAPTIN DB ‘C:\Vidu.txt’,0
.CODE
MOV AL,1 LEA DX,TAPTIN MOV CX,2 ;Thuộc tính chỉ đọc
MOV AK,43h INT 21h
Một số chức năng quản lý tập tin
Trang 16Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 3Ch – Tạo tập tin mới
Thao tác Thanh ghi Giá trị Điều kiện
Vào AH 3Ch Thẻ tập tin lưu trong AX
MOV CX,1 LEA DX,TAPTIN MOV AH,3Ch
INT 21h
Một số chức năng quản lý tập tin
Trang 17Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 3Dh – Mở một tập tin đã cĩ
Thao tác Thanh ghi Giá trị Điều kiện
Vào AH 3Dh Thẻ tập tin lưu trong AX
LEA DX, TAPTIN MOV AH,3Dh
MOV AL, 0 INT 21h
Một số chức năng quản lý tập tin
Trang 18Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 3Eh – Đĩng một tập tin đang mở
Thao tác Thanh ghi Giá trị Điều kiện
Vào AH 3Eh Thẻ tập tin lưu trong AX
INT 21h
Một số chức năng quản lý tập tin
Trang 19Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 3Fh – Đọc nội dung một tập tin đang mở
Thao tác Thanh ghi Giá trị Điều kiện
Vào AH 3Fh Thẻ tập tin lưu trong AX
DS:DX DS:DX trỏ đến vùng bộ nhớ mà dữ
liệu sẽ chuyển tới
Một số chức năng quản lý tập tin
Trang 20Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
Một số chức năng quản lý tập tin
* Số hiệu hàm: 3Fh – Đọc nội dung một tập tin đang mở
Trang 21Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
INT – Với ngắt 21h
* Số hiệu hàm: 40h – Đọc nội dung một tập tin đang mở
Thao tác Thanh ghi Giá trị Điều kiện
Vào AH 40h Thẻ tập tin lưu trong AX
DS:DX DS:DX trỏ đến vùng bộ nhớ mà dữ
liệu lưu
Một số chức năng quản lý tập tin
Trang 22Chương 7: Quản lý và xử lý đĩa, thư mục và tập tin
Một số chức năng quản lý tập tin
* Số hiệu hàm: 40h – Đọc nội dung một tập tin đang mở