Cấu trúc chương trình dữ liệu

Một phần của tài liệu Giáo trình Kỹ thuật vi điều khiển (Nghề Điện tử dân dụng): Phần 2 - CĐ nghề Vĩnh Long (Trang 88 - 90)

- Các vectơ ngắt.

3. Cấu trúc chương trình dữ liệu

Hợp ngữ hỗ trợ thiết kế cả hai dạng cấu trúc chương trình EXE và COM, mỗi dạng phù hợp với một nhĩm trình biên dịch nào đĩ. Muốn biên dịch một chương trình hợp ngữ sang dạng EXE thì ngồi việc nĩ phải được viết theo cấu trúc dạng EXE ta cịn cần phải sử dụng một trình biên dịch phù hợp. Điều này cũng tương tự với việc muốn cĩ một chương trình thực thi dạng COM.

Một chương trình hợp ngữ gồm hai thành phần chính: phần lệnh hợp ngữ và phần chỉ dẫn biên dịch. Chỉ cĩ các lệnh là được biên dịch thành ngơn ngữ máy. Phần hướng dẫn biên dịch khơng được dịch sang ngơn ngữ máy, nĩ chỉ cĩ tác dụng với các trình biên dịch. Thơng thường mỗi chương trình biên dịch cĩ một nhĩm hướng dẫn biên dịch phù

228

hợp với nĩ, những với các hướng dẫn biên dịch cơ bản và đơn giản thì nĩ phù hợp với hầu hết các trình biên dịch hợp ngữ hiện nay.

Cấu trúc chương trình dạng COM: .Model <Chế độ bộ nhớ> .Code

ORG 100h

<Nhãn chính>:

JMP <Thủ tục chính>

<Khai báo dữ liệu đặt tại đây> <Thủ tục chính> PROC

<Các lệnh của chương trình đặt tại đây> <Thủ tục chính> Endp

<Các thủ tục khác đặt tại đây>

End <Nhãn chính>

Trong cấu trúc chương trình trên các từ khĩa Model, Code, ORG, Proc, Endp, End là các hướng dẫn biên dịch. <Nhãn chính> là nhãn của lệnh Jmp.

Cấu trúc này cho thấy rõ, một chương trình hợp ngữ dạng COM chỉ cĩ 1 đoạn, đĩ chính là đoạn Code (đoạn mã lệnh), trong này bao gồm cả phần khai báo dữ liệu. Các khai báo dữ liệu trong chương trình dạng COM cĩ thể đặt ở đầu hoặc ở cuối chương trình, nhưng với việc sử dụng định nghĩa đoạn đơn giản các khai báo dữ liệu phải đặt ở đầu chương trình.

Chỉ dẫn ORG 100h và lệnh JMP <Thủ tục chính> sẽ được đề cập trở lại ở các

phần sau đây của tài liệu này.

Cấu trúc chương trình dạng EXE: .Model <Chế độ bộ nhớ> .Stack 100h

.Data

<Khai báo dữ liệu đặt tại đây>

.Code

<Thủ tục chính> PROC

<Các lệnh của chương trình đặt tại đây> <Thủ tục chính> Endp

<Các thủ tục khác đặt tại đây>

END

Trong cấu trúc chương trình trên các từ khĩa Model, Code, ORG, Proc, Endp, End là các hướng dẫn biên dịch. <Nhãn chính> là nhãn của lệnh Jmp.

Cấu trúc này cho thấy rõ, một chương trình hợp ngữ dạng COM chỉ cĩ 1 đoạn, đĩ chính là đoạn Code (đoạn mã lệnh), trong này bao gồm cả phần khai báo dữ liệu. Các khai báo dữ liệu trong chương trình dạng COM cĩ thể đặt ở đầu hoặc ở cuối chương trình, nhưng với việc sử dụng định nghĩa đoạn đơn giản các khai báo dữ liệu phải đặt ở đầu chương trình.

Chỉ dẫn ORG 100h và lệnh JMP <Thủ tục chính> sẽ được đề cập trở lại ở các

phần sau đây của tài liệu này.

229

Cấu trúc chương trình dạng EXE: .Model <Chế độ bộ nhớ> .Stack 100h

.Data

<Khai báo dữ liệu đặt tại đây>

.Code

<Thủ tục chính> PROC

<Các lệnh của chương trình đặt tại đây> <Thủ tục chính> Endp

<Các thủ tục khác đặt tại đây>

END

Trong cấu trúc chương trình trên các từ khĩa Model, Code, Data, Stack, Proc, Endp, End là các hướng dẫn biên dịch.Cấu trúc này cho thấy rõ, một chương trình hợp ngữ dạng gồm 3 đoạn: đoạn Code, chứa tồn bộ mã lệnh của chương trình. Đoạn Data, chứa phần khai báo dữ liệu của chương trình. Đoạn Stack, nơi chứa stack (ngăn xếp) của chương trình khi chương trình được nạp vào bộ nhớ để hoạt động.Chỉ dẫn .Stackđặt ở đầu chương trình với mục đích khai báo kích thước của Stack dùng cho chương trình sau này. Kích thước thường được chọn là 100h (256) byte.Chỉ dẫn .Model được đặt ở đầu cả cấu trúc chương trình dạng COM và EXE với mục đích khai báo chế độ bộ nhớ mà chương trình sử dụng.

Ví dụ: Sau đây là hai chương trình hợp ngữ đơn giản, dạng COM và dạng EXE, cùng

thực hiện nhiệm vụ in ra màn hình 3 dịng văn bản như sau :

Nguyen Kim Le Tuan Nguyen Le Tram Thanh Nguyen Le Tram Uyen

Một phần của tài liệu Giáo trình Kỹ thuật vi điều khiển (Nghề Điện tử dân dụng): Phần 2 - CĐ nghề Vĩnh Long (Trang 88 - 90)

Tải bản đầy đủ (PDF)

(105 trang)