Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 62 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
62
Dung lượng
394 KB
Nội dung
toan82vn@gmail.com Tập lệnh 89C51 I Cách định địa ghi Định địa ghi: Ta địnhh địa trực tiếp định địa gián tiếp, ta định địa trực tiếp vào ghi hay ghi có chức đặc biệt (tham khảo tài giáo trình) Định địa trực tiếp: Định địa trực tiếp di chuyển liệu trực tiếp vào ô nhớ( tham khảo thêm giáo trình) Định địa gián tiếp: Định địa gián tiếp thay ta di chuyển vào nhớ ta di chuyển trực tiếp ta dùng địa trung gian đê làm II Tập lệnh 89C51 • Nhóm lệnh chuyển liệu : a Cú pháp: Mov A,#data Công dụng: thiết lập liệu cho ghi A b Cú pháp: Mov direct,#data Công dụng: thiết lập liệu cho ô nhớ có địa direct c Cú pháp: Mov Rn,#data Cơng dụng: thiết lập liệu cho thang ghi Rn d Cú pháp: Mov A,Rn Công dụng: Chuyển liệu ghi Rn vào ghi A, liệu ghi Rn không đổi e Cú pháp: Mov A,direct Công dụng: chuyển liệu nhớ có địa direct vào ghi A f Cú pháp: Mov A,@Ri Cơng dụng: chuyển liệu nhớ 'có địa giá trị ghi Ri vào ghi A g Cú pháp: Mov Rn,A Công dụng: chuyển liệu từ ghi A vào ghi Rn (n=0-7) h Cú pháp: Mov direct,A Công dụng: chuyển liệu từ ghi A vào nhớ có địa direct l Cú pháp: Mov direct,Rn Công dụng: chuyển liệu từ ghi Rn vào ô nhớ có địa direct m Cú pháp: Mov direct,direct Cơng dụng: chuyển liệu từ nhớ có địa direct này vào nhớ có địa direct khác n Cú pháp: Mov direct,@Ri Công dụng: Chuyển liệu nhớ có địa giá trị ghi Ri vào nhớ có địa direct o Cú pháp: Mov @Ri,A Công dụng: Chuyển liệu ghi A vào nhớ có địa giá trị ghi Ri p Cú pháp: Mov @Ri,direct Công dụng: Chuyển liệu ô nhớ có địa direct vào nhớ có địa giá trị ghi Ri q Cú pháp: Mov @Ri,#data Công dụng: Thiết đặt liệu cho ô nhớ có địa giá trị ghi Ri i Cú pháp: Mov DPTR,#data16 Công dụng: Thiết đặt liệu cho trỏ liệu với liệu 16 bit, thực chất liệu lưu hai ghi DPL (byte thấp-địa byte 82H) DPH (byte cao-địa byte 83H) j Cú pháp: Movx @Ri,A Công dụng: ghi liệu từ A nhớ ngồi k Cú pháp: Movx A, @ Ri Công dụng: đọc liệu từ nhớ ngồi A r Cú pháp: Movx @DPTR,A Công dụng: ghi liệu từ A nhớ ngồi s Cú pháp: Movx A, @ DPTR Cơng dụng: đọc liệu từ nhớ ngồi A h Cú pháp: MovC A,@A+DPTR Công dụng: Chuyển liệu từ nhớ ROM có địa giá trị A cộng với DPTR vào ghi A h Cú pháp: MovC A,@A+DPTR Công dụng: Chuyển liệu từ nhớ ROM có địa giá trị A cộng với DPTR vào ghi A bang: (ghi chu 5000h) DB 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h Mov dptr,#bang Mov a,#8 Movc a,@a+dptr A=80h *) Lệnh hoán đổi: a Cú pháp: XCH A,direct Công dụng: Trao đổi liệu ghi A với nhớ có địa direct, tức sau thực lệnh nhớ có địa direct mang liệu ghi A trước ghi A mang liệu nhớ có địa direct b Cú pháp: XCH A,Rn Công dụng: Trao đổi liệu ghi A với ghi Rn c Cú pháp: XCH A,@Ri Công dụng: Trao đổi liệu ghi A với ô nhớ có địa giá trị lưu giữ ghi Ri d Cú pháp: XCHD A,@Ri Công dụng: Trao đổi liệu bit thấp ghi A với liệu bit thấp nhớ có địa giá trị lưu giữ ghi Ri Nhóm lệnh số học Chú ý: Cờ nhớ C: C=1 phép tốn cộng xảy tràn phép trừ có mượn C=0 phép tốn cộng khơng tràn phép trừ khơng có mượn Phép cộng xảy tràn phép cộng mà kết lớn 255 (hay FFH hay 11111111b), lúc C=1 m Cú pháp: JMP @A+DPTR Công dụng: Khi lệnh thực hiện, Vi điều khiển chuyển đến thực câu lệnh chương trình có địa ROM giá trị A cộng với giá trị lưu giữ DPTR n Cú pháp: JZ rel Cơng dụng: Nếu cờ Zero có giá trị 1(tức ghi A có giá trị 0), Vi điều khiển nhảy đến thực chương trình địa mà nhãn đặt Nếu cờ Zero có giá trị 0(tức ghi A có giá trị khác 0), Vi điều khiển thực lệnh kế tiếp (không thực lệnh nhảy) o Cú pháp: JNZ rel Công dụng: Nếu cờ Zero có giá trị 0(tức ghi A có giá trị khác 0), Vi điều khiển nhảy đến thực chương trình địa mà nhãn đặt Nếu cờ Zero có giá trị 1(tức ghi A có giá trị 0), Vi điều khiển thực lệnh kế tiếp (không thực lệnh nhảy) p Cú pháp: JNZ rel Công dụng: Nếu cờ Zero có giá trị 0(tức ghi A có giá trị khác 0), Vi điều khiển nhảy đến thực chương trình địa mà nhãn đặt Nếu cờ Zero có giá trị 1(tức ghi A có giá trị 0), Vi điều khiển thực lệnh kế tiếp (không thực lệnh nhảy) q Cú pháp: JC rel Cơng dụng: Nếu cờ C có giá trị 1, Vi điều khiển nhảy đến thực chương trình địa mà nhãn đặt Nếu cờ C có giá trị 0, Vi điều khiển thực lệnh (không thực lệnh nhảy) r Cú pháp: JNC rel Công dụng: Nếu cờ C có giá trị 0, Vi điều khiển nhảy đến thực chương trình địa mà nhãn đặt Nếu cờ C có giá trị 1, Vi điều khiển thực lệnh (không thực lệnh nhảy) s Cú pháp: JB bit,rel Công dụng: Nếu bit nhớ có giá trị 1, Vi điều khiển nhảy đến thực chương trình địa mà nhãn đặt Nếu bit nhớ có giá trị 0, Vi điều khiển thực lệnh kế tiếp (không thực lệnh nhảy) i.Cú pháp: JNB bit,rel Công dụng: Nếu bit nhớ có giá trị 0, Vi điều khiển nhảy đến thực chương trình địa mà nhãn đặt Nếu bit nhớ có giá trị 1, Vi điều khiển thực lệnh (không thực lệnh nhảy) y v Cú pháp: CJNE A,direct,rel Công dụng: Vi điều khiển nhảy đến thực chương trình địa mà nhãn đặt giá trị ghi A khác giá trị nhớ có địa direct, Vi điều khiển không nhảy thực lệnh kế Ảnh hưởng lệnh đến cờ nhớ C: Nếu giá trị ghi A ≥ giá trị nhớ có địa direct bit C có giá trị Nếu giá trị ghi A < giá trị nhớ có địa direct bit C có giá trị W Cú pháp: CJNE A,#data,rel Công dụng: Vi điều khiển nhảy đến thực chương trình địa mà nhãn đặt, giá trị ghi A khác giá trị liệu cho trước, Vi điều khiển không nhảy thực lệnh kế Ảnh hưởng lệnh đến cờ nhớ C: Nếu giá trị ghi A ≥ giá trị liệu cho trước bit C có giá trị Nếu giá trị ghi A < giá trị liệu cho trước bit C có giá trị z Cú pháp: CJNE Rn,#data,rel Công dụng: Vi điều khiển nhảy đến thực chương trình địa mà nhãn đặt giá trị ghi Rn khác giá trị liệu cho trước, Vi điều khiển không nhảy thực lệnh kế *) lệnh nhảy so sánh a1 Cú pháp: CJNE @Ri,#data,rel Công dụng: Vi điều khiển nhảy đến thực chương trình địa mà nhãn đặt giá trị nhớ có địa giá trị Ri khác giá trị liệu cho trước, Vi điều khiển không nhảy thực lệnh kế b1 Cú pháp: CJNE @Ri,#data,rel Công dụng: Vi điều khiển nhảy đến thực chương trình địa mà nhãn đặt giá trị nhớ có địa giá trị Ri khác giá trị liệu cho trước, Vi điều khiển không nhảy thực lệnh kế c1 Cú pháp: DJNZ Rn,rel Công dụng: Giảm giá trị ghi Rn xuống đơn vị, -Nếu giá trị ghi Rn khác 0, Vi điều khiển nhảy đến thực chương trình địa mà nhãn đặt -Nếu giá trị ghi Rn 0, Vi điều khiển thực lệnh d1 Cú pháp: DJNZ direct,rel Công dụng: Giảm giá trị ô nhớ có địa direct xuống đơn vị Nếu giá trị nhớ có địa direct khác 0, Vi điều khiển nhảy đến thực chương trình địa mà nhãn đặt Nếu giá trị nhớ có địa direct 0, Vi điều khiển thực lệnh e1 Cú pháp: NOP Cơng dụng: delay chu kì máy ...Tập lệnh 89C51 I Cách định địa ghi Định địa ghi: Ta địnhh địa trực tiếp định địa gián tiếp, ta định địa trực... tiếp thay ta di chuyển vào nhớ ta di chuyển trực tiếp ta dùng địa trung gian đê làm II Tập lệnh 89C51 • Nhóm lệnh chuyển liệu : a Cú pháp: Mov A,#data Công dụng: thiết lập liệu cho ghi