Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 61 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
61
Dung lượng
1,48 MB
Nội dung
0361- Kỹ thuật lập trình nhúng Lập trình hợp ngữ Vi xử lý 80x86 Phạm Quốc Thịnh Advanced Topics in Software Engineering Department of Electronics & Telecommunications Spring 2006 Nội dung Cơ hợp ngữ Trạng thái vi xử lý ghi cờ Các lệnh điều khiển(lập rẽ nhánh) Các lệnh logic, dịch quay Ngăn xếp thủ tục Các lệnh nhân chia Mảng chế độ định địa Nội dung Cơ hợp ngữ Trạng thái vi xử lý ghi cờ Các lệnh điều khiển(lập rẽ nhánh) Các lệnh logic, dịch quay Ngăn xếp thủ tục Các lệnh nhân chia Mảng chế độ định địa Cơ hợp ngữ Tổng quan Cú pháp lệnh hợp ngữ Các lệnh Cấu trúc chương trình hợp ngữ Các lệnh vào Chương trình Tổng quan Ngơn ngữ cấp thấp Macro Assembler ( MASM) - CPU 8086 Tập tin hợp ngữ nguồn (.ASM) • Các phát biểu lệnh hợp ngữ (assembly statement) – Assembly Language Instruction » Xác định hành động CPU thực » Dịch sang lệnh mã máy tương ứng – Assembler directive » Khai báo hướng dẫn biên dịch Tổng quan (2) Các thành phần – Bộ ký tự: • 26 chữ thường hoa a-z, A-Z • 10 kí tự số 0-9 • Các kí tự dấu: –?@_$:.[](){}+-*/&%!‘~“|\=#^;, • Kí tự ngăn cách – Khoảng trắng – Tab • Kí tự xuống dịng: kết thúc lệnh • Khơng phân biệt hoa thường Tổng quan (3) Từ vựng: – Tên: A-Z a-z 0-9 ? @ _ $ • Duy Qui tắc đặt tên?? – Từ khóa • Bắt buộc Kiểu số liệu: – Số: • Thập phân 110d (mặc định) • Nhị phân 01111b • Hexa 0FF01h – Kí tự: • Giữa hai dấu ngoặc đơn kép • Mã ASCII ‘A’ == 41h Tổng quan (4) Các toán hạng giả dùng để định nghĩa loại số liệu Biến byte, biến từ: dẫn asm định nghĩa biến byte có dạng sau: Name DB initial_value Name DW initial_value Ví dụ: ALPHA1 DB 4; ALPHA2 DW -2; Tổng quan (5) Mảng (Arrays): ASM mảng loạt byte nhớ từ nhớ liên tiếp Ví dụ: Nếu asm gán địa offset 0200h cho mảng B_ARRAY nội dung nhớ sau Tổng quan (6) Chuỗi ký tự (character strings) Bên chuỗi asm phân biệt chữ hoa chữ thường Cũng định nghĩa 10 Ngăn xếp thủ tục Ngăn xếp Thủ tục 47 Ngăn xếp Là cấu trúc liệu chiều Số liệu đưa vào lấy theo nguyên tắc LIFO stack 100h SP chứa địa đỉnh ngăn xếp 48 Ngăn xếp (2) 49 50 51 Nội dung Cơ hợp ngữ Trạng thái vi xử lý ghi cờ Các lệnh điều khiển (lập rẽ nhánh) Các lệnh logic, dịch quay Ngăn xếp thủ tục Các lệnh nhân chia Mảng chế độ định địa 52 Các lệnh nhân chia Lệnh MUL IMUL Lệnh DIV IDIV 53 54 55 Nội dung Cơ hợp ngữ Trạng thái vi xử lý ghi cờ Các lệnh điều khiển (lập rẽ nhánh) Các lệnh logic, dịch quay Ngăn xếp thủ tục Các lệnh nhân chia Mảng chế độ định địa 56 Mảng chế độ định địa Mảng chiều Các chế độ địa 57 Mảng chiều Mảng chiều danh sách phần tử loại có trật tự Ví dụ: msg DB ‘abcde’ W DW 10,20,30,40,50,60 58 Mảng chiều (2) Dùng toán tử DUP để định nghĩa mảng có giá trị ban đầu 59 Các chế độ địa Cách thức toán hạng lệnh gọi chế độ địa 60 Thanks For Listening Questions? Advanced Topics in Software Engineering Spring 2006 61 ... Cấu trúc chương trình hợp ngữ Các lệnh vào Chương trình Tổng quan Ngôn ngữ cấp thấp Macro Assembler ( MASM) - CPU 8086 Tập tin hợp ngữ nguồn (.ASM) • Các phát biểu lệnh hợp ngữ (assembly... thái vi xử lý ghi cờ Các lệnh điều khiển (lập rẽ nhánh) Các lệnh logic, dịch quay Ngăn xếp thủ tục Các lệnh nhân chia Mảng chế độ định địa Cơ hợp ngữ Tổng quan Cú pháp lệnh hợp ngữ. .. Cơ hợp ngữ Trạng thái vi xử lý ghi cờ Các lệnh điều khiển (lập rẽ nhánh) Các lệnh logic, dịch quay Ngăn xếp thủ tục Các lệnh nhân chia Mảng chế độ định địa Nội dung Cơ hợp ngữ Trạng