Tải bản đầy đủ (.pdf) (23 trang)

Bài giảng Vi điều khiển: Chương 2 - Tập lệnh AT89C51

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (629.6 KB, 23 trang )

Chương 2 : TẬP LỆNH 89C51
2.1. CÁC CHẾ ĐỘ ĐỊA CHỈ (Addressing Mode) :cho phép 
ta xác đònh nguồn và đích của dữ liệu. Khi 1 lệnh được 
thực thi và lện này cần dữ liệu, câu hỏi đặt ra “ dữ liệu 
chứa ở đâu ? “ các chế độ đòa chỉ trả lời câu hỏi này. 
có 8 chế độ đònh đòa chỉnhư sau :
 Thanh ghi. (Register)
Ví dụ :
ADD A, R5
 Trực tiếp. (Direct)
Ví dụ :
ADD A, 25h
 Gián tiếp. (Indirect)
Ví dụ :
ADD A, @R5
 Tức thời. (Immediate) Ví dụ :
ADD A, #25h
 Tương đối. (Relative)
Ví dụ :
SJMP nhan
 Tuyệt đối. (Absolute)
Ví dụ :
AJMP nhan
 Dài.
(Long)
Ví dụ :
LJMP nhan
 Chỉsố.
(Index)Ví dụ :
MOVC A, @A +PC






Thanh ghi R0 có đòa chỉ00H. Nội dung thanh ghi R0 =12H. 12H
chính là đòa chỉô nhớ. Nội dung của ô nhớ này là 80



80H là opcode của
mã lệnh JMP; 05H
chính là giá trò offset
sẽ cộng với giá trò
trong bộ đếm chương
trình PC để tính đòa
chỉcủa lệnh tiếo
sẽhực hiện.





2.2. TẬP LỆNH 89C51
89c51 là vi xử lý 8 bit. Vì vậy
bộ lệnh gồm có 256 lệnh. Trong
thực tế chỉ có đònh nghóa 255 lệnh.
Bộ lệnh chia thành 5 nhóm :
+ Nhóm lệnh số học.
+ Nhóm lệnh logic.
+ Nhóm lệnh di chuyển dữ liệu.

+ Nhóm lệnh xử lý bit.
+ Nhóm lệnh rẽ nhánh.







2.2.3. Nhóm lệnh chuyển dữ liệu: ( Data
Transfer )
Tro n g  ra m  n o ä i 
MOV
<dest>, <Source>
  Các đòa chỉ nằm trong vùng 128 byte cao chỉ 
được truy xuất bằng kiểu đònh đòa chỉ gián 
tiếp ngọai trừ các thanh ghi chức năng đặt 
biệt.
- Giữa 2 thanh ghi
MOV A, R1
- Đưa dữ liệu tức thời vào 1 thanh ghi
MOV A,#15
- Chuyển nội dung nội nhớ vào 1
thanh ghi
MOV A,15H
- Chuyển nội dung vào thanh ghi có


Ở RAM ngoài
Dữ liệu phải được chứa trong thanh

ghi A và đòa chỉ phải chứa ở
trong Ri (i = 0,1) hoặc DPTR
Đ/ c 8 bit Dùng thanh ghi Ri=(0 , 1)
MOV R0 , # 3Eh
MOV A,# 0FFh
MOVX @R0 , A
Đ/ c 16 bit Dùng thanh ghi DPTR
MOV DPTR , # 0123h 
MOV A,# 0FFh
MOVX @DPTR, A


2.2.3.3 TRA BẢNG TÌM 
KIẾM
Dùng lệnh MOVC (Move Const) :
Truy xuất một bảng có 256 điểm (0
-255). Số của điểm muốn truy xuất
được để trong thanh ghi A (offset). Đòa
chỉ đầu bảng (nền) chứa trong
DPTR. Có 2 chế độ
MOCV A, @ A + PC
; PC ( program
counter) Bộ đếm chương trình
MOVC R1 , @A + DPTR
; DPTR
( data pointer) Con trỏ dữ liệu


2.2.4. NHOÙM CAÙC LEÄNH REÕ 
NHAÙNH





2.2.5. NHÓM LỆNH XỬ LÝ BIT
Cho phép thao tác trên từng bit. 
SETB
SETB P1.0
CLR
CLR P1.0
NOT
CPL P1.0
ANL
ANL C,#1
 ORL
ORL C,15H
 MOV
MOV C,#0



×