intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Chương 2 Tập lệnh 8951

Chia sẻ: Nguyen Van Van | Ngày: | Loại File: PPT | Số trang:15

95
lượt xem
13
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tập lệnh 8951 là tài liệu hay giúp sinh viên tìm hiểu thêm về môn vi điều khiển. Thông qua tài liệu, hi vọng các bạn học tốt hơn môn này.

Chủ đề:
Lưu

Nội dung Text: Chương 2 Tập lệnh 8951

  1. CHƯƠNG II: TẬP LỆNH 8951 I. NHÓM LỆNH DI CHUYỂN DỮ LiỆU: 1. Lệnh di chuyển dữ liệu trực tiếp: - Cú pháp: MOV , Trong đó: . : có thể là thanh ghi, địa chỉ ô nhớ trong vùng RAM n ội . : có thể là thanh ghi, địa chỉ ô nhớ trong vùng RAM nội hoặc # - Thực hiện: di chuyển nội dung vào - Ví dụ: MOV A, 120 MOV B, #24 MOV 120,#10110010B MOV R3, A MOV P3,#3EH
  2. 2. Nhóm lệnh di chuyển dữ liệu gián tiếp: a. Liên quan đến vùng nhớ RAM nội: + Lệnh đọc bộ nhớ: - Cú pháp: MOV , @Rp Trong đó: . : thanh ghi, ô nhớ . Rp: là thanh ghi R0 hoặc R1 - Thực hiện: lấy nội dung ô nhớ trong vùng RAM nội có địa chỉ là nội dung thanh ghi Rp đặt vào - Ví dụ: MOV 120,#47 MOV R1,#120 MOV A,@R1 ; sau khi thực hiện xong đoạn lệnh nội dung thanh ghi A chứa giá trị 47
  3. + Lệnh ghi bộ nhớ: - Cú pháp: MOV @Rp, Trong đó: . : thanh ghi, ô nhớ hoặc # . Rp: là thanh ghi R0 hoặc R1 - Thực hiện: đặt nội dung vào ô nhớ trong vùng RAM nội có địa chỉ là nội dung thanh ghi Rp. - Ví dụ 1: MOV R0,#100 MOV @R0, #0E3H ; sau khi thực hiện xong đoạn lệnh nội dung ô nhớ 100 chứa giá trị E3H - Ví dụ 2: MOV A, #49 MOV R1,#127 MOV @R1, A ; (127) = 49
  4. b. Liên quan đến vùng nhớ dữ liệu ngoài: + Lệnh đọc bộ nhớ: - Cú pháp: MOVX A, @DPTR - Thực hiện: lấy nội dung ô nhớ trong vùng dữ liệu ngoài có địa chỉ là nội dung thanh ghi DPTR đặt vào thanh ghi A - Ví dụ: MOV DPTR,#1000 MOVX A, @DPTR ; A  (1000) + Lệnh đọc bộ nhớ: - Cú pháp: MOVX @DPTR, A - Thực hiện: lấy nội dung A đặt vào ô nhớ trong vùng dữ liệu ngoài có địa chỉ là nội dung thanh ghi DPTR. - Ví dụ: MOV DPTR,#1000
  5. MOV A, #4EH MOVX @DPTR, A ; ghi giá trị 4EH vào ô nhớ ngoài có địa chỉ 1000 c. Lệnh liên quan đến vùng nhớ chương trình (đọc mã lệnh): - Cú pháp: MOVC A,@A+DPTR - Thực hiện: lấy nội dung ô nhớ trong vùng nhớ chương trình có địa chỉ là nội dung thanh ghi A + DPTR đặt vào thanh ghi A. - Ví dụ 1: MOV A,#2 MOV DPTR,#500 MOVC A,@A+DPTR ; A  (502) - Ví dụ 2: MOV A, #4 MOV DPTR,#TABLE MOVC A, @A+DPTR TABLE: DB 12H, 4EH, 0C7H, 084H, 055H,……
  6. 3. Nhóm lệnh liên quan đến ngăn xếp: + Ghi vào ngăn xếp: - Cú pháp: PUSH Thanh ghi/ địa chỉ - Thực hiện: cất nội dung thanh ghi hoặc ô nhớ vào đỉnh ngăn xếp + Đọc ngăn xếp: - Cú pháp: POP Thanh ghi/ địa chỉ - Thực hiện: lấy nội dung ở đỉnh ngăn xếp gán vào thanh ghi, ô nhớ + ví dụ: MOV A,#100 MOV 100,#3EH PUSH ACC PUSH 100 MOV A, #21H MOV 100, #40 POP 100 POP ACC
  7. 4. Lệnh trao đổi dữ liệu: - Cú pháp: XCH A, Trong đó: có thể là thanh ghi, ô nhớ hoặc @Rp - Thực hiện: trao đổi nội dung thanh ghi A và II. NHÓM LỆNH SỐ HỌC 1. Lệnh cộng: a. Cộng không nhớ: - Cú pháp: ADD A, Trong đó: có thể là thanh ghi, ô nhớ, # hoặc @Rp - Thực hiện: A  A + b. Cộng có nhớ: - Cú pháp: ADDC A, Trong đó: có thể là thanh ghi, ô nhớ, # hoặc @Rp - Thực hiện: A  A + + C
  8. 2. Lênh trừ: ̣ - Cú pháp: SUBB A, Trong đó: có thể là thanh ghi, ô nhớ, # hoặc @Rp - Thực hiện: A  A - - C (carry bit) ̣ 3. Lênh nhân: - Cú pháp: MUL AB - Thực hiện: A * B = BA (B: byte cao cua kêt qua; A: byte thâp cua kêt qua) ̉ ́ ̉ ́ ̉ ́ ̉ ̣ 4. Lênh chia: - Cú pháp: DIV AB - Thực hiện: A : B = A dư B (A: chứa phân nguyên; B: chứa phân dư) ̀ ̀ 5. Lênh tăng môt đơn vị: ̣ ̣ - Cú phap: ́ INC ́ Trong đo: có thể là thanh ghi, ô nhớ ́ ́ - Thực hiên: = + 1 ̣ ́ ́
  9. 6. Lênh giam môt đơn vị: ̣ ̉ ̣ - Cú phap: ́ DEC ́ Trong đo: có thể là thanh ghi, ô nhớ ́ ́ - Thực hiên: = - 1 ̣ ́ ́ ́ ̣ ̉ III. NHOM LÊNH NHAY: ̣ ̉ ̀ ̣ 1. Lênh nhay không điêu kiên: ̉ ̀ a. Nhay gân: - Cú phap: ́ ̃ SJMP Trong đo: là môt từ, hay nhom từ viêt liên nhau, theo sau băng dâu ”:” ́ ̃ ̣ ́ ́ ̀ ̀ ́ dung để đanh dâu vị trí chương trinh. ̀ ́ ́ ̀ - Thực hiên: nhay không điêu kiên đên vị trí chương trinh được chỉ đinh bởi ̣ ̀ ̀ ̣ ́ ̀ ̣ , khoang cach từ lênh đên không vượt quá 128 byte mã ̃ ̉ ́ ̣ ́ ̃ ̣ lênh. ̉ b. Nhay xa: - Cú phap: ́ ̃ LJMP
  10. - Thực hiên: nhay đên vị trí được chỉ đinh bởi , có thể năm ở ̣ ̉ ́ ̣ ̃ ̃ ̀ bât kì vị trí nao trong chương trinh. ́ ̀ ̀ 2. Lênh nhay có điêu kiên: ̣ ̉ ̀ ̣ a. Lênh so sanh và nhay nêu không băng (compare and jump if not equal) ̣ ́ ̉ ́ ̀ - Cú phap: ́ CJNE ́ ̣ ̃ A, , Trong đó có thể là thanh ghi, ô nhớ hoăc # ́ ̣ ̣ ̣ - Thực hiên: So sanh A và , nêu: ̣ ́ ́ ̣ ́ + A ≠ : nhay đên và nêu: ́ ̣ ̉ ́ ̃ ́ ́ ̣ . A > : bit C = 0 ́ ̣ . A < : bit C = 1 + A = : thực hiên lênh kế tiêp ́ ̣ ̣ ̣ ́ ̣ ̣ ́ ̉ ̣ - Môt dang khac cua lênh: CJNE Ri/@Rp, #, ̣ ̃
  11. b. Lênh giam nôi dung Ri môt đơn vị và nhay nêu băng zero (decrement Ri by 1 ̣ ̉ ̣ ̣ ̉ ́ ̀ and jump if not zero): - Cú phap: ́ ̃ DJNZ Ri, - Thực hiên: Ri = Ri - 1, nêu: ̣ ́ ̉ ́ ̃ + Ri > 0: nhay đên + Ri =0: thực hiên lênh kế tiêp ̣ ̣ ́ c. Lênh nhay phụ thuôc vao trang thai bit kiêm tra: ̣ ̉ ̣ ̀ ̣ ́ ̉ - Cú phap: ́ JB/ JNB ̃ BIT, Trong đo: BIT có thể là cac bit cua môt thanh ghi hoăc cac chân I/O cua vi điêu ́ ́ ̉ ̣ ̣ ́ ̉ ̀ ̉ khiên - Thực hiên: nhay đên vị trí chương trinh được chỉ đinh bởi nêu BIT ̣ ̉ ́ ̀ ̣ ̃ ́ ̀ ̣ ̀ băng 1 hoăc băng 0 d. Lênh nhay thông qua viêc kiêm tra cờ CARRY: ̣ ̉ ̣ ̉ - Cú phap: JC/ JNC ́ ̃ - Thực hiên: nhay đên vị trí chương trinh được chỉ đinh bởi nêu C ̣ ̉ ́ ̀ ̣ ̃ ́ ̀ ̣ ̀ băng 1 hoăc băng 0
  12. e. Lênh nhay thông qua viêc kiêm tra cờ ZERO: ̣ ̉ ̣ ̉ - Cú phap: JZ/ JNZ ́ ̃ - Thực hiên: nhay đên vị trí chương trinh được chỉ đinh bởi nêu Z băng ̣ ̉ ́ ̀ ̣ ̃ ́ ̀ ̣ ̀ 1 hoăc băng 0 ́ ̣ IV. NHOM LÊNH LOGIC: 1. ANL ̀ A, 2. ORL ̀ A, 3. XRL ̀ A, 4. CLR A ́ ̣ ; xoa nôi dung thanh ghi A 5. CPL A ̉ ́ ; đao cac BIT trong thanh ghi A 6. NOP ; lênh không thực hiên, bỏ qua khi găp lênh nay ̣ ̣ ̣ ̣ ̀ 7. SWAP A ; đao vị trí 4 bit cao và 4 bit thâp trong thanh ghi A ̉ ́ ́ ̣ ̀ 8 Nhom lênh quay vong: ̉ a. Quay phai thanh ghi A - Cú phap: ́ RR A
  13. - Thực hiên: ̣ Bit 7 ------------------>- bit 0 ̣ ́ b. Lênh quay trai thanh ghi A: - Cú phap: ́ RL A - Thực hiên: ̣ Bit 7 --
  14. d. Lênh quay phai thanh ghi A với cờ C: ̣ ̉ - Cú phap: ́ RRC A - Thực hiên: ̣ C Bit 7 -->----------------- bit 0 ́ ̣ ́ V. NHOM LÊNH THAO TAC BIT: 1. CLR BIT ́ ; xoa BIT = 0 2. SETB BIT ̣ ; đăt BIT = 1 3. CPL BIT ̉ ̣ ̣ ̣ ̉ ; đao nôi dung hiên tai cua BIT ̣ ̉ 4. Lênh di chuyên BIT - MOV C, BIT ; C  BIT - MOV BIT, C ; BIT  C
  15. VI. NHOM LÊNH LIÊN QUAN ĐÊN CHƯƠNG TRINH CON: ́ ̣ ́ ̀ 1. CALL ; goi chương trinh con ̀ ̣ ̀ 2. RET ; kêt thuc chương trinh con ́ ́ ̀ 3. RETI ; kêt thuc chương trinh ngăt ́ ́ ̀ ́
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
3=>0