Danh mục

6. Tập lệnh

Số trang: 17      Loại file: pdf      Dung lượng: 142.66 KB      Lượt xem: 11      Lượt tải: 0    
Hoai.2512

Hỗ trợ phí lưu trữ khi tải xuống: 17,000 VND Tải xuống file đầy đủ (17 trang) 0
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

1. Giới thiệu 2. Sơ đồ khối và chân 3. Tổ chức bộ nhớ 4. Các thanh ghi chức năng đặc biệt 5. Dao động và hoạt động reset 6. Tập lệnh (Instruction Set) 7. Các mode định địa chỉ 8. Lập trình IO 9. Tạo trễ 10.Lập trình Timer/Counter 11.Lập trình giao tiếp nối tiếp 12.Lập trình ngắt 13.Lập trình hợp ngữXung & Hoi 1MOV dest, source MOV MOV MOV MOV MOV Chú ý 1: MOV 8086 MOV MOV MOV Chú ý 2: MOV; dest = source MOV MOV MOV MOV MOV DPTR, #7634H DPL, #34H DPH, #76H DPTR,...
Nội dung trích xuất từ tài liệu:
6. Tập lệnh1. Giới thiệu2. Sơ đồ khối và chân3. Tổ chức bộ nhớ4. Các thanh ghi chức năng đặc biệt5. Dao động và hoạt động reset6. Tập lệnh (Instruction Set)7. Các mode định địa chỉ8. Lập trình IO9. Tạo trễ10.Lập trình Timer/Counter11.Lập trình giao tiếp nối tiếp12.Lập trình ngắt13.Lập trình hợp ngữ Xung & Hoi 1MOV dest, source ; dest = source MOV A, #72H ;A=72H MOV DPTR, #7634H MOV R4, #62H ;R4=62H MOV DPL, #34H MOV A, R4 ;A=62H MOV DPH, #76H MOV B, 7EH MOV P1, A ;mov A to port 1 MOV DPTR, A MOV Rm, RnChú ý 1: MOV A,#72H MOV A,72H ≠ 8086 8051 MOV AL,72H MOV A,#72H MOV BX,72H MOV AL,[BX] MOV A,72HChú ý 2: MOV A,R3 ≡ MOVHoiA,3 Xung & 2ADD A, Source ;A=A+Source ADD A,#6 ;A=A+6 ADD A,R6 ;A=A+R6 ADD A,6 ;A=A+[6] or A=A+R6ADDC A, source ;A=A+source+CY SETB C ;CY=1 ADDC A,R5 ;A=A+R5+1SUBB A, source ;A=A-source-CYSETB C ;CY=1SUBB A,R5 ;A=A-R5-1 Xung & Hoi 3SETB bit ; bit=1CLR bit ; bit=0SETB C ; CY=1SETB P0.0 ;bit 0 from port 0 =1SETB P3.7 ;bit 7 from port 3 =1SETB ACC.2 ;bit 2 from Accumulator =1SETB 05 ;set bit địa chỉ 05h (tại RAM có địa chỉ byte 20h)Chú ý:Lệnh xóa bit CLR tương tự lệnh set bit SETB CLR C ;CY=0Song tồn tại 1 ngoại lệ câu lệnh sau đây chỉ cho CLR CLR A ;A=0 Xung & Hoi 4DEC byte ;byte=byte-1INC byte ;byte=byte+1 INC R7 DEC A DEC 40H ; [40]=[40]-1CPL A ;1’s complement MOV A,#55H ;A=01010101 BL01: CPL A MOV P1,A ACALL DELAY SJMP L01 Xung & Hoi 5ANL - ORL – XRL dest, sourcevd: MOV R5,#89H ANL R5,#08HRR ARL ARRC ARLC ANOP & RET & RETIGiống như các lệnh của 8086 Xung & Hoi 6MUL AB ;B|A = A*B MOV A,#25H MOV B,#65H MUL AB ;25H*65H=0E99 ;B=0EH, A=99HDIV AB ;A = A/B, B = A mod B MOV A,#25 MOV B,#10 DIV AB ;A=2, B=5 Xung & Hoi 7 Các lệnh nhảy có điều kiện:JZ rel Jump if A=0 Jump if A¹0JNZ rel Decrement & jump if byte¹0DJNZ byte, rel Jump if dest ¹ sourceCJNE dest, source, relJC rel Jump if CY=1JNC rel Jump if CY=0JB bit, rel Jump if bit=1JNB bit, rel Jump if bit=0JBC bit, rel Jump if bit=1 & clear bit Xung & Hoi 8Ø DJNZ byte, rel-addr Viết chương trình xóa thanh ghi A, sau đó cộng 3 vào A mười lần?à ORG 0000H MOV A, #0; MOV R2, #10AGAIN: ADD A, #03 DJNZ R2, AGAIN ;repeat until R2=0 (10 lần) MOV P1, A Xung & Hoi 9CJNE , , rel• So sánh và nhảy nếu không bằng. CJNE so sánh 2 giá trị đầu tiên và rẽ nhánh nếu các giá trị của 2 toán hạng không bằng nhau• C được set bằng 1 nếu giá trị nguyên không dấu của nhỏ hơn của . Ngược lại, C = 0• Cả 2 toán hạng không bị ảnh hưởng sau khi thực thi lệnh Xung & Hoi 10VD:Viết 1 chương trình so sánh R0, R1:Nếu R0>R1: gửi 1 ra port 2Else if R0R1R0_NHO_HON: … ;R0VD: MOV A, 79HPort 1 là ngõ vào có giá trị thay đổi liên tục. ….WAIT: CJNE A,P1,WAIT …tác dụng gì?Trả lời: Chương trình lặp lại tại điểm này cho tới khi nhận giá trị79H tại đầu vào P1. Xung & Hoi 12• SJMP rel-addr Là lệnh nhảy không điều kiện. Là lệnh nhảy ngắn (2-byte). Byte đầu tiên là opcode, byte thứ 2 là địa chỉ tương đối của đích. Địa chỉ tương đối trong khoảng 00àFFH nhưng chia thành 2 hướng: tới, lui (forward, backward) nên tầm nhảy cho phép là -128 đến +127 bytes trước lệnh và sau lệnh.• VD: PC 0100H: SJMP RelativeAddress … 0123H: RelativeAddress à Byte độ dời của lệnh: 0123H-0102H=21H là độ d ...

Tài liệu được xem nhiều:

Tài liệu liên quan: