« Home « Kết quả tìm kiếm

Vi xử lý máy vi tính - Chương 4


Tóm tắt Xem thử

- Các chương trình này sẽ được đánh dấu cẩn thận bằng dấu.
- Giới thiệu chung của chương trình hợp ngữ 1.1.
- Cú pháp của chương trình hợp ngữ.
- Một chương trình hợp ngữ bao gồm các dòng lệnh, một dòng lệnh có thể là một lệnh thật dưới dạng ký hiệu (symbolic), mà đôi khi còn được gọi là dạng gợi nhớ (mnemonic) của bộ vi xử lý, hoặc một hướng dẫn cho chương trình dịch (assembler directive).
- Một dòng lệnh của chương trình hợp ngữ có thể có những trường sau (không nhất thiết phải có đủ hết tất cả các trường):.
- Một ví dụ khác là các dòng lệnh với các hướng dẫn cho chương trình dịch:.
- Các tên và nhãn này sẽ được chương trình dịch gán.
- Mã lệnh này sẽ được chương trình dịch dịch ra mã máy..
- Dữ liệu cho chương trình.
- Dữ liệu của một chương trình hợp ngữ là rất đa dạng.
- Biến trong chương trình hợp ngữ có vai trò như nó có ở ngôn ngữ bậc cao.
- Hướng dẫn chương trình dịch để định nghĩa biến kiểu byte có dạng tổng quát như sau:.
- Hướng dẫn chương trình dịch để định nghĩa biến từ có dạng như sau:.
- Khung của một chương trình hợp ngữ.
- Các kiểu kích thước bộ nhớ cho chương trình hợp ngữ.
- Việc khai báo được thực hiện nhờ hướng dẫn chương trình dịch như sau..
- Nếu ta không khai Kích_thước thì chương trình.
- Đoạn dữ liệu chứa toàn bộ các định nghĩa cho các biến của chương trình.
- Đoạn mã chứa mã lệnh của chương trình.
- Việc khai báo đoạn mã được thực hiện nhờ hướng dẫn chương trình dịch .CODE như sau:.
- Các chương trình con sẽ được gọi ra bằng các lệnh CALL có mặt bên trong chương trình chính..
- Như vậy một chương trình chính có thể được định nghĩa bằng các lệnh giả PROC và ENDP theo mẫu sau:.
- Các lệnh của thân chương trình chính.
- các lệnh thân chương trình con.
- Sau đây là một khung cho chương trình hợp ngữ để rồi sau khi được dịch (assembled) nối (linked) trên máy IBM PC sẽ tạo ra một tệp chương trình chạy được ngay (executable) với đuôi .EXE..
- Các lệnh của chương trình chính để tại đây.
- các chương trình con (nếu có ) để tại đây.
- Để chương trình có thể chạy đúng ta phải có các lệnh sau để khởi đầu cho thanh ghi DS (hoặc caES nữa nếu cần):.
- Data định nghĩa bởi hướng dẫn chương trình dịch sẽ dịch tên.
- Sau đây là ví dụ của một chương trình hợp ngữ được viết để dịch ra chương trình với đuôi .EXE.
- Chương trình 4.1 Chương trình Hello.EXE .
- Khung của chương trình hợp ngữ để dịch ra chương trình.
- Trên máy tính IBM PC ngoài tệp chương trình với đuôi .EXE.
- Sau đây là khung của một chương trình hợp ngữ để dịch được ra tệp chương trình đuôi .COM..
- các lệnh của chương trình chính để tại đây.
- các chương trình con (nếu có) để tại đây.
- Đích của lệnh nhảy là phần đầu của chương trình chính.
- 000H Đoạn đầu chương trình (PSP) 0100.
- Tệp chương trình .COM trong bộ nhớ.
- Tất nhiên ta cũng có thể dùng hàm 4CH của ngắt INT 21H như đã dùng trong chương trình để dịch ra tệp .EXE..
- Sau đấy là ví dụ của một chương trình hợp ngữ để dịch ra tệp chương trình chạy được với đuôi .COM (chương trình 4.2)..
- Chương trình 4.2.
- Chương trình Helo.COM .
- Môđun chương trình .COM và .EXE trong bộ nhớ..
- Cách tạo và cho chạy một chương trình hợp ngữ trên máy IBM PC.
- để tạo ra một tệp văn bản chương trình gốc bằng hợp ngữ.
- Dùng chương trình dịch MASM để dịch tệp.ASM ra mã máy dưới dạng tệp .OBJ.
- Cho chạy chương trình vừa dịch.
- Các bước công việc để tạo ra và cho chạy một chương trình hợp ngữ.
- Trong trường hợp chương trình hợp ngữ không bị lỗi ta nhận được các dòng thông báo sau:.
- Tạo ra tệp văn bản của chương trình.
- Cho chạy chương trình s đ.
- Nếu trong ổ C ta có chương trình LINK và tệp vidu.obj ở ổ A thì ta có thể có lệnh:.
- Kết cục ta thu được một tệp chương trình chạy được là vidu.exe để tại ổ A..
- một chương trình chạy được..
- Giả thiết có chương trình EXE2BIN ở tại ổ C và chương trình vidu.exe ở tại ổ A ta có thể sử dụng lệnh sau:.
- mặc định sẽ tạo ra tệp chương trình đuôi .BIN để dùng cho các công việc khác..
- Kết cục ta thu được một tệp chương trình chạy được là vidu.com để tại ổ A..
- Bước cuối cùng là cho chạy chương trình vừa thu được.
- Để kết thúc ví dụ đã nêu ta có thể cho chạy chương trình vidu.com bằng lệnh:.
- Chương trình 4.3 Chương trình RUN.BAT.
- hợp để dich ra tệp chương trình đuôi .EXE và .COM.
- Ta có thể thực hiện công việc trên bằng mẫu chương trình sau:.
- Ta có thể thực hiện các công việc trên bằng mẩu chương trình sau:.
- Ta có thể thực hiện các công việc trên bằng mẫu chương trình sau:.
- Sau đây là mẩu chương trình thực hiện các công việc trên:.
- Ta có thể thực hiện công việc trên bằng mẩu chương trình sau:.
- Ta có thể tực hiện công việc trên bằng mẩu chương trình sau:.
- Một số chương trình cụ thể:.
- Trong phần này ta sẽ xét một số chương trình cho các ứng dụng cụ thể, thông qua các ví dụ này ta có thể.
- Một số chương trình liên quan đến các vấn đề khác chưa.
- Trong phần đầu của chương trình hợp ngữ ta có giứo thiệu một chương trình hiện lời chào băng tiếng Anh.
- Ngắt INT 20H dành riêng để kêt thúc chương trình loại .
- Hàm 4CH của ngắt INT 21H: kết thúc chương trình loại.
- Trong chương trình trên ta đã dùng thanh ghi CX để chứa số dòng phải giãn cách.
- Điều này chắc chắn là không phải thuận tiện đối với người sử dụng chương trình..
- Sau đây là văn bản của chương trình thực hiện công việc trên:.
- Điều này chắc chắn không phải là thuận tiện đối với người sử dụng chương trình..
- Một số nhận xét có thể rút ra khi đọc chương trình trên:.
- Bằng cách này trong khi viết chương trình ta có thể đạt được việc quản lý đơn giản hơn đối với các thanh ghi lệch..
- Sau đây là chương trình thực hiện công việc nói trên..
- Thực ra phần mã lệnh của chương trình kết thúc tại địa chỉ IP=0029H (byte cuối của lệnh INT 21H).
- để xem kết quả của chương trình sau khi chạy được cất giữ trong bộ nhớ ra sao..
- Sau đây là một trường hợp của chương trình trên với các dữ liệu cụ thể..
- Sau đây là chương trình thực hiện công việc trên..
- Tại đây ta tổ chức chương trình thành 1 chương trình chính và 1 chương trình con.
- Sau đẩy là chương trình thực hiện công việc trên..
- Sau đây là chương trình NAMPAMASM thực hiện công việc trên..
- So với cách làm từ trước đến nay thì trong phần chương trình đọc ký tự (DOCXAU) ta đã đưa vào thêm một số lệnh để làm cho việc xử lý các ký tự gõ từ bàn phím được mềm dẻo hơn: ta có thể loại bỏ ký tự gõ nhầm bằng cách dùng phím BS (Back space, xóa trái).
- Nhiệm vụ của chương trình con.
- Ví dụ như trong chương trình con DOCXAU, ta có thể thấy được các thanh ghi nào tham gia.
- vào việc truyền tham số giữa chương trình chính và chương trình con.
- Một chương trình viết dưới dạng thủ tục để tạo thời gian trễ 1ms có thể như sau:.
- chương trình trễ 1ms.
- Vấn đề truyền tham số giữa các chương trình.
- Sau đây là một số ví dụ về việc truyền tham số giữa các chương trình..
- Các chương trình con được gắn vào sau chương trình chính nhờ lệnh giả INCLUDE..
- Sau đây là avưn bản chương trình thực hiện công việc trên..
- Các thủ tục này được gọi trong chương trình CHINH.ASM đã nói ở trên..
- Sau đây là văn bản chương trình thực hiện công việc trên..
- Sau đây là văn bản chương trình thực hiện công việc trên

Xem thử không khả dụng, vui lòng xem tại trang nguồn
hoặc xem Tóm tắt