Bài giảng Cấu trúc máy tính: Chương 12 - Ngô Phước Nguyên

65 8 0
Bài giảng Cấu trúc máy tính: Chương 12 - Ngô Phước Nguyên

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài giảng Cấu trúc máy tính: Chương 12 trình bày các nội dung sau: Cơ bản về lưu trữ trên đĩa từ, một ứng dụng hiển thị sector một ứng dụng hiển thị cluster, các chức năng về file ở mức hệ thống, quản lý đĩa và thư mục, truy xuất đĩa với INT 13h của rombios bài tập giới thiệu file và lập trình xử lý file.

LẬP TRÌNH XỬ LÝ ĐĨA&FILE CƠ BẢN VỀ LƯU TRỮ TRÊN ĐĨA TỪ MỘT ỨNG DỤNG HIỂN THỊ SECTOR MỘT ỨNG DỤNG HIỂN THỊ CLUSTER CÁC CHỨC NĂNG VỀ FILE Ở MỨC HỆ THỐNG QUẢN LÝ ĐĨA VÀ THƯ MỤC TRUY XUẤT ĐĨA VỚI INT 13H CỦA ROMBIOS BÀI TẬP GiỚI THIỆU FILE VÀ LẬP TRÌNH XỬ LÝ FILE 1/19/2018 CHƯƠNG 12 LAP TRINH XU LY DIA TU CƠ BẢN VỀ LƯU TRỮ TRÊN ĐĨA TỪ Ngôn ngữ ASM vượt trội ngôn ngữ khác khả xử lý đĩa Ta xem xét việc lưu trữ thông tin đĩa theo mức độ : mức phần cứng/BIOS mức phần mềm/DOS mức phần cứng :lưu trữ thông tin liên quan đến cách liệu lưu trữ cách vật lý đĩa từ? mức phần mềm : việc lưu trữ quản lý tiện ích quản lý File HĐH DOS 1/19/2018 LAP TRINH XU LY DIA TU 1/19/2018 LAP TRINH XU LY DIA TU 1/19/2018 LAP TRINH XU LY DIA TU CÁC ĐẶC TÍNH LUẬN LÝ & VẬT LÝ CỦA ĐĨA TỪ Ở mức vật lý : đĩa tổ chức thành Tracks, Cylinders, Sectors  Khả lưu trữ đĩa mô tả thông sô : C (cylinder number) H (Head side) R (sector number) 1/19/2018 LAP TRINH XU LY DIA TU 1/19/2018 LAP TRINH XU LY DIA TU CÁC KHÁI NIỆM TRACK, CYLINDER, SECTOR Tracks : vòng tròn đồng tâm tạo bề mặt đĩa Cylinder : tập tracks bán kính chồng đĩa Mặt đĩa có track có nhiêu Cylinder Sector : đọan track (cung từ) có khả lưu trữ 512 bytes liệu Các sector đánh số track  đĩa tồn nhiều sector số hiệu 1/19/2018 LAP TRINH XU LY DIA TU 1/19/2018 LAP TRINH XU LY DIA TU Ở mức luận lý : đĩa tổ chức thành Clusters, files mà DOS dùng để cấp phát vùng lưu trữ cho liệu cần lưu trữ Cluster : nhóm gồm 2,4,6 sector kề Đó đơn vị cấp phát vùng lưu trữ cho liệu (file) Các cluster đánh số Nếu liệu cần lưu trữ byte hệ điều hành cấp phát cluster số bytes/cluster hay sector/cluster tùy thuộc vào loại đĩa 1/19/2018 LAP TRINH XU LY DIA TU TƯƠNG QUAN GIỮA SECTOR VẬT LÝ VÀ SECTOR LOGIC TRÊN ĐĨA MỀM MẶT ĐĨA TRACK SECTOR SECTOR THÔNG TIN LOGIC 0 0 0 2-5 6-9 1-3 1-4 5-8 9-11 BOOT RECORD FAT Thư mục gốc Thư mục gốc 4-9 12-17 Dữ liệu 1-9 18-26 Dữ liệu 1/19/2018 LAP TRINH XU LY DIA TU 10 MỞ FILE HÀM 3CH INT 21H AH = 3CH DS:DX địa chuổi ASCII (chuổi tên File kết thúc byte 0) CL = thuộc tính File Nếu thành cơng, AX = thẻ File Nếu CF set có lỗi, mã lỗi chứa AX (lỗi 3,4,5) 1/19/2018 LAP TRINH XU LY DIA TU 51 Viết code mở File với thuộc tính đọc, tên File FILE1 Fname DB ‘FILE1’,0 INT 21H FHANDLE DW ? MOV FHANDLE, AX MOV AX,@DATA JC OPEN_ERROR MOV DS,AX ……… MOV AH,3CH MOV CL,1 LEA DX,FNAME 1/19/2018 LAP TRINH XU LY DIA TU 52 CHỨC NĂNG MỞ FILE ĐÃ CÓ SẴN HÀM 3Dh INT 21H OPEN FILE AH = 3DH DS:DX = địa chuổi ASCII (chuổi tên File kết thúc byte 0) AL = mã truy cập : mở để đọc : mở để ghi : mở để đọc ghi Thành cơng, AX = Fhandle Có lỗi Mã lỗi chứa AX (2,4,5,12) 1/19/2018 LAP TRINH XU LY DIA TU 53 CHỨC NĂNG MỞ FILE ĐÃ CÓ SẴN HÀM 3Dh INT 21H OPEN FILE MOV AH, 3DH MOV AL, MOV DX, OFFSET FILENAME INT 21H JC DISPLAY_ERROR MOV INFILEHANDLE, AX … INFILE DB ‘ D:\FILE1.DOC’, INFILEHANDLE DW ? 1/19/2018 LAP TRINH XU LY DIA TU 54 CHỨC NĂNG 3EH ĐÓNG FILE ĐIỀU KIỆN : AH = 3EH BX = FILE HANDLE CẦN ĐÓNG XUẤT : KHƠNG LỖI CF = CĨ LỖI CF = EX : LỖI SỐ : INVALID HANDLE MOV AH, 3EH FILE HANDLE TRONG BX KHÔNG PHẢI LÀ THẺ FILE CỦA FILE ĐÃ MỞ MOV BX, INFILEHANDLE INT 21H JC DISPLAY_ERROR … INFILE DB ‘D:\FIEL1.DOC’, INFILEHANDLE DW ? 1/19/2018 LAP TRINH XU LY DIA TU 55 CHỨC NĂNG 3FH ĐỌC FILE ĐỌC SỐ BYTES TỪ FILE LƯU VÀO BỘ NHỚ ĐIỀU KIỆN : AH = 3FH BX = FILE HANDLE , CX = SỐ BYTES CẦN ĐỌC DS:DX : ĐỊA CHỈ BỘ ĐỆM XUẤT : AX = SỐ BYTES ĐỌC ĐƯỢC, NẾU AX = HAY AX

Ngày đăng: 08/05/2021, 16:36

Từ khóa liên quan

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

Tài liệu liên quan