GIÁO TRÌNH VI XỬ LÝ_LẬP TRÌNH ASSEMBLY CHO MCS-51
Số trang: 0
Loại file: pdf
Dung lượng: 239.54 KB
Lượt xem: 9
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Tham khảo tài liệu giáo trình vi xử lý_lập trình assembly cho mcs-51, kỹ thuật - công nghệ, điện - điện tử phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Nội dung trích xuất từ tài liệu:
GIÁO TRÌNH VI XỬ LÝ_LẬP TRÌNH ASSEMBLY CHO MCS-51 Lập trình Assembly cho MCS-51 MCS-51 & Assembly language 1Plan Tập lệnh MCS-51 Ngôn ngữ Assembly sử dụng phần mềm Keil Giới thiệu Phần mềm mô phỏng mạch điện Proteus Ví dụ MCS-51 & Assembly language 2Tập lệnh Vi xử lý đều có một tập lệnh Các lệnh được được cất trong bộ nhớ chương trình dưới dạng các mã lệnh nhị phân Để thuận tiện cho việc lập trình: Các mã lệnh được quy ước viết ở dạng “gợi nhớ” (mnemonic) Cần chương trình dịch các mnemonic qua mã máy (Assembler): Hợp ngữ MCS-51 & Assembly language 3Chương trình sử dụng hợp ngữ EDITOR PROGRAM Myfile.asm ASSEMBLER PROGRAM Myfile.lst Other obj file Myfile.obj LINKER PROGRAM Myfile.abs OH PROGRAM MCS-51 & Assembly language 4 Myfile.hexMột số thuật ngữ Assembly: là một cách thể hiện các code lệnh của một CPU dưới dạng các ký hiệu mà con người có thể dễ dàng đọc Assembler: phần mềm chạy trên máy tính có khả năng dịch các file viết bằng Assembly sang dạng object file Object code: Chứa các mã lệnh ở dạng binary Object file: Object code Thông tin về “relocation” phục vụ cho linhker MCS-51 & Assembly language 5 Linhker Chương trình có khả năng tập hợp các object file để tạo thành một chương trình duy nhất có thể “executable” Segment Là một đơn vị bộ nhớ code hoặc data. Có nhiều kiểu segment trong một chương trình Assembly Absolute segment: cố định không thể thay đổi Relocatable segment: có các thuộc tính đi kèm cho phép linker ghép nhiều segments lại với nhau trước khi tạo ra một chương trình executable MCS-51 & Assembly language 6Tập lệnh MCS-51 Gồm 255 lệnh: 139 lệnh 1 byte 92 lệnh 2 byte 24 lệnh 3 byte Được chia thành các nhóm lệnh Số học Logic Chuyển data Kiểm tra điều kiện (Boolean Instructions) Điều khiển chương trình MCS-51 & Assembly language 7Assembly cho MCS-51 (Standard) Keil cung cấp 4 tools A51 Macro Assembly (KeilC51BinA51.EXE) BL51 Linker/Locator (KeilC51BinBL51.EXE) LIB51 Library Manager (KeilC51BinLIB51.EXE) OH51 Object-Hex Converter (KeilC51BinOH51.EXE) MCS-51 & Assembly language 8 Các bước tạo một chương trình sử dụng Keil ASM PL/M – 51: là ngôn ngữ bậc cao được Intel MCS-51 & Assembly language ển vào những năm 1980 phát tri 9Cấu trúc một chương trình ASM Các lệnh (statements) ASM gồm Các từ khóa điều khiển chương trình assembler (assembler control) Các từ khóa định hướng cho chương trình dịch (assembler directive) Các lệnh máy (instruction) Mỗi dòng chỉ có thể chứa duy nhất một lệnh assembler control hoặc assembler directive hoặc mnemonic Mỗi lệnh phải viết trên một dòng Các tham biến hoặc các toán hạng của các lệnh được phân biệt với các lệnh ít nhất bởi một space Chương trình assembly phải được kết thúc bởi asm directive END, các statements sau từ khóa END sẽ bị bỏ qua MCS-51 & Assembly language 10 $TITLE (Demo Program #1) CSEG AT 0000h JMP $ END TITLE assembler control JMP instruction mnemonic CSEG, END assembler derective MCS-51 & Assembly language 11Lệnh máy mnemonic[label:] [operand] [, operand] [, operand] [;comment] có nghĩa rằng trường đó là optional [] nhãn được dùng để đánh dấu địa chỉ mà tại đó lệnh được đặt label: mnemonic dạng gợi nhớ của lệnh máy toán hạng operand ...
Nội dung trích xuất từ tài liệu:
GIÁO TRÌNH VI XỬ LÝ_LẬP TRÌNH ASSEMBLY CHO MCS-51 Lập trình Assembly cho MCS-51 MCS-51 & Assembly language 1Plan Tập lệnh MCS-51 Ngôn ngữ Assembly sử dụng phần mềm Keil Giới thiệu Phần mềm mô phỏng mạch điện Proteus Ví dụ MCS-51 & Assembly language 2Tập lệnh Vi xử lý đều có một tập lệnh Các lệnh được được cất trong bộ nhớ chương trình dưới dạng các mã lệnh nhị phân Để thuận tiện cho việc lập trình: Các mã lệnh được quy ước viết ở dạng “gợi nhớ” (mnemonic) Cần chương trình dịch các mnemonic qua mã máy (Assembler): Hợp ngữ MCS-51 & Assembly language 3Chương trình sử dụng hợp ngữ EDITOR PROGRAM Myfile.asm ASSEMBLER PROGRAM Myfile.lst Other obj file Myfile.obj LINKER PROGRAM Myfile.abs OH PROGRAM MCS-51 & Assembly language 4 Myfile.hexMột số thuật ngữ Assembly: là một cách thể hiện các code lệnh của một CPU dưới dạng các ký hiệu mà con người có thể dễ dàng đọc Assembler: phần mềm chạy trên máy tính có khả năng dịch các file viết bằng Assembly sang dạng object file Object code: Chứa các mã lệnh ở dạng binary Object file: Object code Thông tin về “relocation” phục vụ cho linhker MCS-51 & Assembly language 5 Linhker Chương trình có khả năng tập hợp các object file để tạo thành một chương trình duy nhất có thể “executable” Segment Là một đơn vị bộ nhớ code hoặc data. Có nhiều kiểu segment trong một chương trình Assembly Absolute segment: cố định không thể thay đổi Relocatable segment: có các thuộc tính đi kèm cho phép linker ghép nhiều segments lại với nhau trước khi tạo ra một chương trình executable MCS-51 & Assembly language 6Tập lệnh MCS-51 Gồm 255 lệnh: 139 lệnh 1 byte 92 lệnh 2 byte 24 lệnh 3 byte Được chia thành các nhóm lệnh Số học Logic Chuyển data Kiểm tra điều kiện (Boolean Instructions) Điều khiển chương trình MCS-51 & Assembly language 7Assembly cho MCS-51 (Standard) Keil cung cấp 4 tools A51 Macro Assembly (KeilC51BinA51.EXE) BL51 Linker/Locator (KeilC51BinBL51.EXE) LIB51 Library Manager (KeilC51BinLIB51.EXE) OH51 Object-Hex Converter (KeilC51BinOH51.EXE) MCS-51 & Assembly language 8 Các bước tạo một chương trình sử dụng Keil ASM PL/M – 51: là ngôn ngữ bậc cao được Intel MCS-51 & Assembly language ển vào những năm 1980 phát tri 9Cấu trúc một chương trình ASM Các lệnh (statements) ASM gồm Các từ khóa điều khiển chương trình assembler (assembler control) Các từ khóa định hướng cho chương trình dịch (assembler directive) Các lệnh máy (instruction) Mỗi dòng chỉ có thể chứa duy nhất một lệnh assembler control hoặc assembler directive hoặc mnemonic Mỗi lệnh phải viết trên một dòng Các tham biến hoặc các toán hạng của các lệnh được phân biệt với các lệnh ít nhất bởi một space Chương trình assembly phải được kết thúc bởi asm directive END, các statements sau từ khóa END sẽ bị bỏ qua MCS-51 & Assembly language 10 $TITLE (Demo Program #1) CSEG AT 0000h JMP $ END TITLE assembler control JMP instruction mnemonic CSEG, END assembler derective MCS-51 & Assembly language 11Lệnh máy mnemonic[label:] [operand] [, operand] [, operand] [;comment] có nghĩa rằng trường đó là optional [] nhãn được dùng để đánh dấu địa chỉ mà tại đó lệnh được đặt label: mnemonic dạng gợi nhớ của lệnh máy toán hạng operand ...
Tìm kiếm theo từ khóa liên quan:
vi xử lý kỹ thuật vi xử lý tài liệu vi xử lý bải giảng vi xử lý giáo trình vi xử lýTài liệu liên quan:
-
Đề cương chi tiết học phần Vi xử lý
12 trang 297 0 0 -
Báo cáo môn học vi xử lý: Khai thác phần mềm Proteus trong mô phỏng điều khiển
33 trang 185 0 0 -
Báo cáo môn Vi xử lý - TÌM HIỂU VỀ CÁC BỘ VI XỬ LÝ XEON CỦA INTEL
85 trang 154 0 0 -
Báo cáo bài tập lớn môn Kỹ thuật vi xử lý: Thiết kế mạch quang báo - ĐH Bách khoa Hà Nội
31 trang 133 0 0 -
Bài tập lớn Vi xử lý: Thiết kế môn học Đèn LED đơn ghép thành đèn quảng cáo
15 trang 117 0 0 -
Bài tập lớn môn Vi xử lý, vi điều khiển: Thiết kế bộ điều khiển tốc độ của động cơ điện một chiều
27 trang 117 0 0 -
Báo cáo thực tập ngành: Máy điện, khí cụ điện, truyền động điện, kỹ thuật vi xử lý
95 trang 113 0 0 -
Giáo trình Vi xử lý: Phần 1 - Phạm Quang Trí
122 trang 85 0 0 -
Giáo trình Hệ vi điều khiển: Phần 1
129 trang 73 0 0 -
Đề tài : ĐIỀU KHIỂN CHUYỂN ĐỘNG RÔBÔT BẰNG ĐỘNG CƠ BƯỚC
23 trang 68 0 0