Bài thực hành Kỹ thuật vi xử lý

Bài 3: Hiển thị một chuỗi ra đầu ra chuẩn (Màn hình) Các lệnh cần sử dụng: Lệnh MOV Ngắt 21h với chức năng 9 Đầu bài: Hiển thị một chuỗi ký tự ra màn hình (Ví dụ: “Xin chao cac ban”) .model small .stack 100h .data ;Khai bao du lieu: bien, hang so, . Thong_bao DB 'Xin chao cac ban',13,10,'Moi nhan phim bat ky de tiep tuc!$' .code MAIN PROC ;Khoi tao dia chi doan du lieu MOV AX,@DATA MOV DS,AX ;Hien thong bao MOV AH,9 LEA DX,Thong_bao ; Lay ve dia chi cua chuoi Thong_bao INT 21h ; Hien thong bao HelloWorld MOV AH,1 INT 21h ; Cho nguoi dung bam phim bat ky ;Tro ve DOS MOV AH,4Ch INT 21h MAIN ENDP END MAIN

pdf11 trang | Chia sẻ: dntpro1256 | Lượt xem: 962 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Bài thực hành Kỹ thuật vi xử lý, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Bài thực hành Kỹ thuật vi xử lý Bài mở đầu Mục tiêu: Sau khi kết thúc bài thực hành này, sinh viên có thể:  Sử dụng công cụ 8086 Emulator để lập trình hợp ngữ và gỡ lỗi (debug).  Làm các ví dụ sử dụng ngắt 21h của DOS(đọc ký tự từ bàn phím, xuất ký tự ra màn hình, xuất chuỗi ký tự ra màn hình) Nội dung bài giảng (Chương 3)  Hướng dẫn cách cài đặt và sử dụng phần mềm 8086 Emulator  Trình bày cấu trúc chung của một chương trình hợp ngữ và các lệnh cơ bản để viết chương trình đầu tiên (MOV, INT, LEA) 1. 8086 Emulator: cách cài đặt và hướng dẫn sử dụng 1.1. Cách cài đặt Bước 1: Chạy file Setup.exe trong thư mục cài đặt. Nhấn Next để tiếp tục Hình 1. Màn hình bắt đầu quá trình cài đặt Bài thực hành Kỹ thuật vi xử lý Bước 2: Trình cài đặt hiện một số thông tin chú ý, nhấn nút Next để bỏ qua Hình 2. Thông tin chú ý trong quá trình cài đặt Bước 3: Chọn đường dẫn đến thư mục cài đặt, mặc định là C:\emu8086. Nhấn Next để tiếp tục Hình 3. Hướng dẫn chọn thư mục cài đặt Bài thực hành Kỹ thuật vi xử lý Bước 4: Thông báo tạo shortcut cho chương trình, nhấn Next để tiếp tục Hình 4. Thông báo tạo shortcut Bước 5: Sau khi trình cài đặt thu thập đủ thông tin, nó hiện thông báo sẵn sàng cho việc cài đặt và tổng hợp các thông tin đã thu thập được trong các bước trước. Nhấn nút Install để tiến hành cài đặt chương trình. Hình 5. Thông báo sẵn sàng quá trình cài đặt Bài thực hành Kỹ thuật vi xử lý Bước 6: Chờ cho quá trình cài đặt được thực thi Hình 6. Tiến trình cài đặt đang được thực thi Bước 7: Quá trình cài đặt thành công, nhấn nút Finish để kết thúc Hình 7. Quá trình cài đặt thành công Bài thực hành Kỹ thuật vi xử lý Bước 8: Chạy chương trình emu8086 (trên Desktop), giao diện cho lần đầu đăng nhập sẽ hiện ra yêu cầu chúng ta nhập mã đăng ký. Nhấn nút phía dưới (Please Enter the Registration Key) để đăng ký Hình 8. Cửa sổ khi chạy chương trình lần đầu Bước 9: Nhập thông tin đăng ký (có trong file cd key(8086).txt trong thư mục cài đặt) và nhấn nút OK để kết thúc quá trình đăng ký. Hình 9. Cửa sổ nhập thông tin đăng ký sử dụng 1.2. Hướng dẫn sử dụng phần mềm 8086 Emulator Dưới đây (Hình 10) là giao diện làm việc chính của chương trình 8086 Emulator. Chương trình cho phép chúng ta thực hiện các chức năng chính sau  Soạn thảo mã hợp ngữ trên màn hình soạn thảo, dịch ra file .exe hoặc file .com và chạy mô phỏng, debug trực tiếp.  Trao cứu tập lệnh của bộ vi xử lý 8086 (Help>8086 Instruction Set)  Tra cứu bảng mã ASCII (Mục ascii codes trên menu)  Thực hiện các phép toán và chuyển đổi giữa các hệ cơ số thông dụng (nhị phân, thập phân, thập lục phân) (Mục math trên menu) Bài thực hành Kỹ thuật vi xử lý Hình 10. Giao diện chính của chương trình 8086 Emulator Ngoài ra chương trình có phần trợ giúp rất hữu ích (Mục help trên menu). Người dùng có thể tìm hiểu cách sử dụng chương trình, tra cứu tập lệnh của vi xử lý 8086 và các ngắt cơ bản cũng như các ví dụ sử dụng các lệnh này. Hình 11. Giao diện trợ giúp của chương trình Bài thực hành Kỹ thuật vi xử lý 1.3. Giới thiệu giao diện gỡ lỗi (debug) Hình 12. Giao diện chạy chương trình và gỡ lỗi Giao diện chạy và gỡ lỗi sẽ hiện ra khi chúng ta nhấn nút Emulate trên thanh công cụ của chương trình. Với giao diện debug này, chúng ta có thể chạy cả chương trình hay chạy ở chế độ từng lệnh để dò lỗi. Chương trình cung cấp giao diện trực quan cho phép người lập trình:  Theo dõi trực tiếp mã lệnh, địa chỉ và nội dung của các lệnh cũng như dữ liệu trong bộ nhớ  Quan sát trực tiếp sự thay đổi của các thanh ghi, các biến, dữ liệu trong ngăn xếp và các cờ trong thanh ghi cờ. Bài thực hành Kỹ thuật vi xử lý 2. Lập trình hợp ngữ trên 8086 2.1. Cấu trúc chung một chương trình hợp ngữ Hình 13. Cấu trúc chung của một chương trình hợp ngữ (Xem thêm trong slide bài giảng – Chương 3) Một chương trình hợp ngữ có cấu trúc cơ bản như nội dung trong hình 12 bao gồm các phần  .model small: Khai báo kích thước chương trình để phân bố các đoạn bộ nhớ  .stack 100h : Khai báo kích thước ngăn xếp (ví dụ ở đây là 256 bytes)  .data : Khai báo bắt đầu đoạn dữ liệu. Tại đây, người lập trình sẽ hiển thực hiện khai báo dữ liệu như các biến, hàng số  .code : Khai báo bắt đầu đoạn mã. Trong phần này người lập trình viết code thực thi chương trình của mình. Trong khung chương trình ở trên, chúng ta chỉ có một chương trình chính được định nghĩa bởi hai từ khóa (MAIN PROC và MAIN ENDP). Chỉ dẫn END MAIN để kết thúc đoạn mã. Trong khung chương trình còn có hai đoạn mã nhỏ để thực hiện việc khởi tạo đoạn dữ liệu và trở về DOS sau khi thực hiện chương trình. 2.2. Chương trình HelloWorld Cũng như khi chúng ta học các ngôn ngữ lập trình khác, bao giờ chúng ta cũng viết một chương trình đầu tay với mục đích: Bài thực hành Kỹ thuật vi xử lý  Kiểm tra cấu trúc chương trình  Kiểm tra trình biên dịch Chương trình HelloWorld trong trường hợp này chỉ có chức năng hiển thị một thông báo HelloWorld và chờ người dùng nhấn phím bất kỳ để tiếp tục. Hình 14. Chương trình HelloWorld Hình 15. Kết quả khi chạy chương trình HelloWorld Bài thực hành Kỹ thuật vi xử lý 2.3. Lập trình vào ra chuẩn Chú ý: Kiểm tra chạy chương trình (ở cả chế độ chạy và debug) và quan sát sự thay đổi giá trị các thanh ghi, các biến Bài 1: Đọc một ký tự từ đầu vào chuẩn (Bàn phím) Các lệnh cần sử dụng: Lệnh MOV Ngắt 21h với chức năng 1 Đầu bài: Lập trình đọc một ký tự từ bàn phím, lưu mã của ký tự đó vào một biến kiểu byte (VD: Ky_tu) .model small .stack 100h .data ;Khai bao du lieu: bien, hang so, ... Ky_tu DB ? .code MAIN PROC ;Khoi tao dia chi doan du lieu MOV AX,@DATA MOV DS,AX ;Doc ky tu tu ban phim MOV AH,1 INT 21h ;Luu ky tu do vao bien Ky_tu MOV Ky_tu,AL ;Tro ve DOS MOV AH,4Ch INT 21h MAIN ENDP END MAIN Bài 2: Hiển thị một ký tự ra đầu ra chuẩn (Màn hình) Các lệnh cần sử dụng: Lệnh MOV Ngắt 21h với chức năng 2 Đầu bài: Lập trình xuất một ký tự ra màn hình (Ví dụ: chữ $) .model small .stack 100h .data ;Khai bao du lieu: bien, hang so, ... Bài thực hành Kỹ thuật vi xử lý .code MAIN PROC ;Khoi tao dia chi doan du lieu MOV AX,@DATA MOV DS,AX ;Hien ky tu $ MOV AH,2 MOV DL,'$' INT 21h ;Tro ve DOS MOV AH,4Ch INT 21h MAIN ENDP END MAIN Bài 3: Hiển thị một chuỗi ra đầu ra chuẩn (Màn hình) Các lệnh cần sử dụng: Lệnh MOV Ngắt 21h với chức năng 9 Đầu bài: Hiển thị một chuỗi ký tự ra màn hình (Ví dụ: “Xin chao cac ban”) .model small .stack 100h .data ;Khai bao du lieu: bien, hang so, ... Thong_bao DB 'Xin chao cac ban',13,10,'Moi nhan phim bat ky de tiep tuc!$' .code MAIN PROC ;Khoi tao dia chi doan du lieu MOV AX,@DATA MOV DS,AX ;Hien thong bao MOV AH,9 LEA DX,Thong_bao ; Lay ve dia chi cua chuoi Thong_bao INT 21h ; Hien thong bao HelloWorld MOV AH,1 INT 21h ; Cho nguoi dung bam phim bat ky ;Tro ve DOS MOV AH,4Ch INT 21h MAIN ENDP END MAIN

Các file đính kèm theo tài liệu này:

  • pdfbai_thuc_hanh_mo_dau_559_1808121.pdf
Tài liệu liên quan