Bài giảng lý thuyết vi xử lý - Chương 3: Lập trình hợp ngữ cho 8051
lượt xem 74
download
Download
Vui lòng tải xuống để xem tài liệu đầy đủ
Tham khảo bài thuyết trình 'bài giảng lý thuyết vi xử lý - chương 3: lập trình hợp ngữ cho 8051', 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ả
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng lý thuyết vi xử lý - Chương 3: Lập trình hợp ngữ cho 8051
- Ð I H C CÔNG NGHI P TP. H CHÍ MINH KHOA CÔNG NGH ðI N T B MÔN ðI N T CÔNG NGHI P BÀI GI NG LÝ THUY T VI X LÝ Giáo viên: PH M QUANG TRÍ TP. H CHÍ MINH THÁNG 09-2009 09-
- Ð I H C CÔNG NGHI P TP. H CHÍ MINH KHOA CÔNG NGH ðI N T B MÔN ðI N T CÔNG NGHI P CHƯƠNG 3 L P TRÌNH H P NG CHO 8051
- CÁC CÁC KI U ð NH ð A CH
- CÁC CÁC KI U ð NH ð A CH ð nh ñ a ch thanh ghi (Register Addressing) ðư ðư c dùng ñ truy xu t d li u trong các thanh ghi t R0 ñ n R7. S byte c a l nh: 1 byte. nh: C u trúc l nh: nh: Ví d : ADD A, R5 ⇒ L nh c ng n i dung thanh ghi A v i n i dung thanh Ví ghi R5. (Gi s : (A)=05H, (R5)=9AH). ⇒ Mã l nh: nh: ⇒ Mô t l nh: nh:
- CÁC CÁC KI U ð NH ð A CH ð nh ñ a ch tr c ti p (Direct Addressing) ðư ðư c dùng ñ truy xu t d li u trong các ô nh RAM n i (00H - 7FH) và 00H trong các SFR (A, B, P0, P1, P2, P3, DPH, DPL, …) hay (80H - FFH). 80H S byte c a l nh: 2 byte. nh: C u trúc l nh: nh: Ví d : ADD A, P1 ho c ADD A, 90H ⇒ L nh c ng n i dung thanh ghi A Ví 90H v i n i dung Port 1 hay ô nh 90H. (Gi s : (A) = 05H, (P1) = (90H) = 9AH). AH). ⇒ Mã l nh: nh: ⇒ Mô t l nh: nh:
- CÁC CÁC KI U ð NH ð A CH ð nh ñ a ch gián ti p (Indirect Addressing) ðư ðư c dùng ñ truy xu t d li u trong các ô nh RAM n i có ñ a ch thay ñ i liên t c khi chương trình ñang ch y. R0 và R1 ho t ñ ng như các y. con tr và n i dung c a chúng ch ra ñ a ch ô nh RAM c n truy xu t. t. S byte c a l nh: 1 byte. nh: C u trúc l nh: nh: Ví d : ADD A, @R0 ⇒ L nh c ng n i dung thanh ghi A v i n i dung ô Ví nh có ñ a ch ch a trong thanh ghi R0. (Gi s : (A) = 05H, (R0) = 3BH, 05H, (R0 (3BH) = 9AH). ⇒ Mã l nh: nh: ⇒ Mô t l nh: nh:
- CÁC CÁC KI U ð NH ð A CH ð nh ñ a ch t c th i (Immediate Addressing) ðư ðư c dùng ñ truy xu t m t h ng s (giá tr bi t tr c) thay vì là m t bi n (giá tr không bi t tr c) như các ki u ñ nh ñ a ch trên. Có th trên. dùng ñ n p d li u vào m i ô nh và thanh ghi b t kỳ (ñ i v i thanh ghi 8 bit: #00H - #0FFH, ñ i v i thanh ghi 16 bit: #0000H - #0FFFFH). bit: 00H bit: 0000H S byte c a l nh: 2 byte. nh: C u trúc l nh: nh: Ví d : ADD A, #9AH ⇒ L nh c ng n i dung thanh ghi A v i giá tr 9AH. AH. Ví (Gi s : (A) = 05H). 05H ⇒ Mã l nh: nh: ⇒ Mô t l nh: nh:
- CÁC CÁC KI U ð NH ð A CH ð nh ñ a ch tương ñ i (Relative Addressing) ðư ðư c s d ng cho các l nh nh y (r nhánh). ð a ch tương ñ i (hay offset) là m t giá tr 8 bit có d u. bit T m nh y gi i h n là: -128 byte … 127 byte t v trí c a l nh ti p theo sau l nh nh y. S byte c a l nh: 2 byte. byte C u trúc l nh:
- CÁC CÁC KI U ð NH ð A CH ð nh ñ a ch tương ñ i (Relative Addressing) Ví d 1: SJMP AAA ⇒ L nh nh y ñ n nhãn AAA (Gi s : nhãn AAA ñ t Ví trư c l nh ñ a ch 0107H, l nh SJMP n m trong b nh t i ñ a ch 0100H và 0101H). ⇒ Mã l nh: nh: ⇒ Mô t l nh:
- CÁC CÁC KI U ð NH ð A CH ð nh ñ a ch tương ñ i (Relative Addressing) Ví d 2: SJMP AAA ⇒ L nh nh y ñ n nhãn AAA (Gi s : nhãn AAA ñ t Ví trư c l nh ñ a ch 203BH, l nh SJMP n m trong b nh t i ñ a ch 2040H và 2041H). ⇒ Mã l nh: nh: ⇒ Mô t l nh:
- CÁC CÁC KI U ð NH ð A CH ð nh ñ a ch tuy t ñ i (Absolute Addressing) ðư ðư c s d ng cho các l nh nh y (r nhánh): ACALL và AJMP. ACALL AJMP ð a ch tuy t ñ i là m t giá tr 11 bit. 11 T m nh y gi i h n là: trong cùng trang 2KB hi n hành. trong S byte c a l nh: 2 byte. byte C u trúc l nh:
- CÁC CÁC KI U ð NH ð A CH ð nh ñ a ch tuy t ñ i (Absolute Addressing) Ví d : AJMP AAA ⇒ L nh nh y ñ n nhãn AAA (Gi s : nhãn AAA ñ t Ví trư c l nh ñ a ch 0F46H, l nh AJMP n m trong b nh t i ñ a ch 0900H và 0901H). ⇒ Mã l nh: nh:
- CÁC CÁC KI U ð NH ð A CH ð nh ñ a ch tuy t ñ i (Absolute Addressing) ⇒ Mô t l nh: nh:
- CÁC CÁC KI U ð NH ð A CH ð nh ñ a ch dài (Long Addressing) ðư ðư c s d ng cho các l nh nh y (r nhánh): LCALL và LJMP. LCALL LJMP ð a ch dài là m t giá tr 16 bit. 16 T m nh y gi i h n là: toàn b không gian nh 64KB. toàn S byte c a l nh: 3 byte. byte C u trúc l nh:
- CÁC CÁC KI U ð NH ð A CH ð nh ñ a ch dài (Long Addressing) Ví d : LJMP AAA ⇒ L nh nh y ñ n nhãn AAA (Gi s : nhãn AAA ñ t Ví trư c l nh ñ a ch A209H, l nh LJMP n m trong b nh t i ñ a ch 0100H, 0101H và 0102H). ⇒ Mã l nh: nh: ⇒ Mô t l nh: nh:
- CÁC CÁC KI U ð NH ð A CH ð nh ñ a ch ch s (Indexed Addressing) ðư ðư c dùng trong các ng d ng c n t o b ng nh y hay b ng tìm ki m. m. Ki u ñ nh ñ a ch này dùng m t thanh ghi n n (PC hay DPTR) k t h p v i m t offset (A) ñ t o thành d ng ñ a ch cho l nh: JMP và MOVC. nh: S byte c a l nh: 1 byte. nh: C u trúc l nh: nh: Ví d : JMP @A+DPTR ⇒ L nh nh y gián ti p (Gi s : (A) = 25H và Ví 25H (DPTR) = 1234H). 1234H (A) + (DPTR) = 25H + 1234H = 1259H ⇒ V y chương trình s nh y ñ n th c thi l nh t i ñ a ch 1259H
- CÁC CÁC KI U ð NH ð A CH ð nh ñ a ch thanh ghi (Register Addressing) ð nh ñ a ch tr c ti p (Direct Addressing) ð nh ñ a ch gián ti p (Indirect Addressing) ð nh ñ a ch t c th i (Immediate Addressing) ð nh ñ a ch tương ñ i (Relative Addressing) ð nh ñ a ch tuy t ñ i (Absolute Addressing) ð nh ñ a ch dài (Long Addressing) ð nh ñ a ch ch s (Indexed Addressing)
- T P L NH C A 8051 Gi Gi i thi u t p l nh c a 8051: 8051: T i ưu hóa cho các ng d ng ñi u khi n 8 bit. bit. Có nhi u ki u ñ nh ñ a ch ñ truy xu t d li u. Có u. H tr các ng d ng ñi u khi n 1 bit. bit. T p l nh g m 255 l nh: nh: • 139 l nh có ñ dài 1 byte. byte. • 92 l nh có ñ dài 2 byte. byte. • 24 l nh có ñ dài 3 byte. byte. T p l nh ñư c chia làm 5 nhóm: nhóm: • Nhóm l nh s h c (Arithmetic Operations). Operations). • Nhóm l nh logic (Logical Operations). Operations). • Nhóm l nh di chuy n d li u (Data Transfer). Transfer). • Nhóm l nh x lý bit (Boolean Variable Manipulation). Manipulation). • Nhóm l nh r nhánh (Program Branching). Branching).
- T P L NH C A 8051 M t s ký hi u dùng trong l nh : ð a ch thanh ghi s d ng (R0 – R7). Rn Rn ð a ch tr c ti p c a m t byte trong RAM n i. direct direct ð a ch gián ti p s d ng (R0 ho c R1). @Ri @Ri Toán h ng ngu n (Rn, direct ho c @Ri). source source Toán h ng ñích (Rn, direct ho c @Ri). dest dest H ng s 8 bit . #data #data H ng s 16 bit. #data16 #data16 ð a ch tr c ti p c a m t bit (ñ a ch bit). bit bit Offset 8 bit có d u. rel rel ð a ch 11 bit. addr11 addr11 ð a ch 16 bit. addr16 addr16 ðư c thay th b i … ←… N i dung c a … (…) (…) N i dung ñư c ch a b i … ((…)) ((…)) Thanh ghi c a dãy thanh ghi (R0 - R7). rrr rrr ð a ch gián ti p s d ng (R0 ho c R1). i Các bit d li u. dddddddd dddddddd Các bit ñ a ch . aaaaaaaa aaaaaaaa ð a ch tương ñ i. eeeeeeee eeeeeeee
- T P L NH C A 8051 NHÓM L NH S HC 1. L nh c ng (Add): (Add): ADD A,
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Các bộ vi xử lý trên thực tế
121 p |
274
|
151
-
Bài giảng lý thuyết vi xử lý - Chương 3: Lập trình hợp ngữ cho 8051(tiếp theo)
69 p |
273
|
77
-
Bài giảng Kỹ thuật đo lường (Trương Thị Bích Thanh) - Chương 6 Mạch đo lường và xử lý kết quả đo
48 p |
242
|
70
-
BÀI 4 Tên bài: BỘ ĐỊNH THỜI
18 p |
273
|
59
-
Bài giảng môn lý thuyết ôtômát và ngôn ngữ hình thức - Chương 3
0 p |
207
|
57
-
BÀI GIẢNG LÝ THUYÊT VI XỬ LÝ - GIỚI THIỆU MÔN HỌC
11 p |
229
|
56
-
Bài giảng môn lý thuyết ôtômát và ngôn ngữ hình thức - Chương 2
0 p |
189
|
53
-
Bài giảng lý thuyết vi xử lý - Chương 2: Phần cứng vi điểu khiển 8051
0 p |
194
|
51
-
Bài giảng lý thuyết vi xử lý-Chương 6: Hoạt động ngắt
19 p |
181
|
48
-
Bài giảng lý thuyết vi xử lý-Chương 5: Hoạt động của Port nối tiếp
29 p |
204
|
46
-
Bài giảng lý thuyết vi xử lý-Chương 1: Giới thiệu chung vè xi xử lý
0 p |
176
|
36
-
Bài giảng lý thuyết vi xử lý -Chương 4: Hoạt động của bộ định thời
39 p |
146
|
30
-
Bài giảng môn lý thuyết ôtômát và ngôn ngữ hình thức - Chương 6
0 p |
173
|
29
-
Bài giảng môn lý thuyết ôtômát và ngôn ngữ hình thức - Chương 5
0 p |
150
|
27
-
Bài giảng ý thuyết kỹ thuật vi xử lý
0 p |
116
|
21
-
Bài giảng Các phương pháp xử lý số liệu đo đạc
118 p |
41
|
6
-
Bài giảng Cơ học đá: Giới thiệu môn học - GV. Kiều Lê Thủy Chung
7 p |
46
|
1
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn