1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Tệp lênh 8051

10 155 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Table – Data Transfer Instructions Mnemonic MOV A, Rn MOV A, direct MOV A, @Ri MOV A, #data MOV Rn, A MOV Rn, direct MOV Rn, #data MOV direct, A MOV direct, Rn MOV direct1, direct2 MOV direct, @Ri MOV direct, #data MOV @Ri, A MOV @Ri, direct MOV @Ri, #data Mnemonic Instruction code D7 D6 1 1 a7 a6 1 d7 d6 1 a7 a6 d7 d6 1 a7 a6 a7 a6 a7 a6 a7 a6 a7 a7 d7 1 a7 d7 a6 a6 d6 a6 d6 D5 D4 1 a5 a4 1 d5 d4 1 a5 a4 1 d5 d4 1 a5 a4 0 a5 a4 0 a5 a4 a5 a4 D3 a3 0 d3 1 a3 d3 a3 a3 a3 a3 Hexa - D2 D1 n2 n1 a2 a1 1 d2 d1 n2 n1 n2 n1 a2 a1 n2 n1 d2 d1 a2 a1 n2 n1 a2 a1 a2 a1 a2 a1 0 a5 a4 a3 a2 1 a5 a4 a3 a2 d5 d4 d3 d2 1 1 n2 a5 a4 a3 a2 1 d5 d4 d3 d2 Instruction code a1 a1 d1 n1 a1 d1 D0 n0 a0 i d0 n0 n0 a0 n0 d0 a0 n0 a0 a0 a0 decimal E8 ÷ EF E5 Byte E6 ÷ E7 74 Byte F8 ÷ FF A8 ÷ AF Byte 78 ÷ 7F Byte F5 Byte 88 ÷ 8F Byte 85 Byte Byte i a0 a0 d0 i n0 a0 i d0 86 ÷ 87 Byte 75 Byte Byte F6 ÷ F7 A6 ÷ A7 Byte 76 ÷ 77 Byte Hexa - Explanation A ← Rn A ← (direct) No of MC 1 A ← (Ri) A ← data 1 Rn ← A Rn ← (direct) Rn ← data (direct) ← A (direct) ← Rn (direct1) ← (direct2) Source Destination (direct) ← (Ri) 2 (direct) ← data (Ri) ← A (Ri) ← (direct) (Ri) ← data Explanation No of MOV DPTR, #data16 MOVC A, @A + DPTR MOVC A, @A + PC MOVX A, @Ri MOVX A, @DPTR MOVX @Ri, A MOVX @DPTR, A PUSH direct POP direct XCH A, Rn XCH A, direct XCH A, @Ri XCHD A, @Ri D7 D6 D5 D4 D3 D2 D1 0 0 d15 d14 d13 d12 d11 d10 d9 d7 d6 d5 d4 d3 d2 d1 0 0 D0 d8 d0 decimal 90 Byte Byte 93 1 1 1 d7 d7 1 d7 1 i i 0 d0 d0 n0 d0 i i 83 E2 ÷ E3 E0 F2 ÷ F3 F0 C0 Byte D0 Byte C8 ÷ CF C5 Byte C6 ÷ C7 D6 ÷ D7 1 1 d6 d6 1 d6 1 1 1 d5 d5 0 d5 0 0 1 d4 d4 0 d4 0 0 0 d3 d3 d3 0 0 0 0 d2 d2 n2 d2 1 1 0 d1 d1 n1 d1 1 DPTR ← data16 MC A ← (A + DPTR) A ← (A + PC) A ← (Ri) A ← (DPTR) (Ri) ← A (DPTR) ← A SP ← SP + (SP) ← (direct) (direct) ←(SP) SP ← SP - A ↔ Rn A ↔ (direct) 2 2 2 A ↔ (Ri) A ÷ ↔ (Ri) 1 3÷0 1 Table – Mathematical (Arithmetic) Instructions Mnemonic Instruction code Hexa - Explanation No D7 D6 0 0 a7 a6 0 0 d7 d6 0 0 a7 a6 0 0 d7 d6 1 a7 a6 1 d7 d6 ADD A, Rn ADD A, direct ADD A, @Ri ADD A, #data ADDC A, Rn ADDC A, direct ADDC A, @Ri ADDC A, #data SUBB A, Rn SUBB A, direct SUBB A, @Ri SUBB A, #data Mnemonic INC A INC Rn INC direct D7 D6 0 0 0 a7 a6 D5 D4 1 a5 a4 1 d5 d4 1 1 a5 a4 1 1 d5 d4 1 a5 a4 1 d5 d4 D3 a3 0 d3 a3 0 d3 a3 0 d3 Instruction code D5 D4 D3 D2 D1 0 0 n2 n1 0 a5 a4 a3 a2 a1 D2 D1 n2 n1 a2 a1 1 d2 d1 n2 n1 a2 a1 1 d2 d1 n2 n1 a2 a1 1 d2 d1 D0 n0 a0 D0 n0 a0 i d0 n0 a0 i d0 n0 a0 i d0 Hexa decimal 04 08 ÷ 0F 05 Byte decimal 28 ÷ 2F 25 Byte 26 ÷ 27 24 Byte 38 ÷ 3F 35 Byte 36 ÷ 37 34 Byte 98 ÷ 9F 95 Byte 96 ÷ 97 94 Byte A ← A + Rn A ← A + (direct) A ← A + (Ri) A ← A + data A ←A A ←A + CY A ←A A ←A CY A ←A A ←A CY A ←A A ←A of MC 1 1 + Rn + CY + (direct) 1 + (Ri) + CY + data + 1 - Rn - CY - (direct) - 1 - (Ri) - CY - data - CY 1 Explanation A ←A + Rn ← Rn + (direct) ← (direct) + No of MC 1 INC @Ri INC DPTR DEC A DEC Rn DEC direct DEC @Ri MUL AB 0 a7 0 0 a6 0 0 a5 0 1 a4 0 0 a3 0 1 n2 a2 1 1 n1 a1 i n0 a0 i 06 ÷ 07 A3 14 18 ÷ 1F 15 Byte 16 ÷ 17 A4 DIV AB 0 0 0 84 DA A 1 1 0 D4 (Ri) ← (Ri) + DPTR ← DPTR + A ←A - Rn ← Rn - (direct) ← (direct) - (Ri) ← (Ri) - A ← (A x B) ÷ B ← (A x B) 15 ÷ A ← Quotient (A / B) B ← Remainder (A / B) Contents of Accumulator are BCD IF A ÷ > OR AC = THEN A ÷ ← A ÷ + IF A THEN 7÷4 A 1 1 4 AND > OR 7÷4 CY = ← A 7÷4 + Table – Logic Instructions Mnemonic ANL A, Rn Instruction code D7 D6 D5 D4 D3 D2 D1 n2 n1 Hexa D0 n0 decimal 58 ÷ 5F Explanation A ←A AND Rn No of MC ANL A, direct ANL A, @Ri ANL A, #data ANL direct, A ANL direct, #data ORL A, Rn ORL A, direct ORL A, @Ri ORL A, #data ORL direct, A ORL direct, #data a7 0 d7 a7 a7 d7 a6 1 d6 a6 a6 d6 a5 0 d5 a5 a5 d5 a4 1 d4 a4 a4 d4 a3 0 d3 a3 a3 d3 a2 1 d2 a2 a2 d2 a1 d1 a1 a1 d1 a0 i d0 a0 a0 d0 55 Byte 56 ÷ 57 54 Byte 52 Byte 53 Byte Byte 0 a7 0 d7 a7 a7 d7 1 a6 1 d6 a6 a6 d6 0 a5 0 d5 a5 a5 d5 0 a4 0 d4 a4 a4 d4 a3 0 d3 a3 a3 d3 n2 a2 1 d2 a2 a2 d2 n1 a1 d1 a1 a1 d1 n0 a0 i d0 a0 a0 d0 48 ÷ 4F 45 Byte 46 ÷ 47 44 Byte 42 Byte 43 Byte Byte Mnemonic XRL A, Rn XRL A, direct XRL A, @Ri XRL A, #data XRL direct, A XRL direct, #data D7 D6 1 a7 a6 1 d7 d6 a7 a6 Instruction code D5 D4 D3 D2 1 n2 0 a5 a4 a3 a2 0 1 0 d5 d4 d3 d2 0 a5 a4 a3 a2 0 D1 n1 a1 d1 a1 D0 n0 a0 i d0 a0 Hexa decimal 68 ÷ 6F 65 Byte 66 ÷ 67 64 Byte 62 Byte 63 A ←A AND (direct) A ←A A ←A AND (Ri) data 1 AND (direct) ← (direct) A (direct) ← (direct) AND data AND A ←A A ←A OR A ←A A ←A OR OR OR Rn (direct) 1 (Ri) data 1 (direct) ← (direct) A (direct) ← (direct) data OR OR Explanation A ←A A ←A XOR A ←A A ←A XOR XOR XOR No of MC 1 Rn (direct) (Ri) data (direct) ← (direct) A (direct) ← (direct) 1 XOR XOR CLR A CPL A a7 d7 1 a6 d6 1 a5 d5 1 a4 d4 a3 d3 0 a2 d2 1 a1 d1 0 a0 d0 0 Byte Byte E4 F4 RL A 0 0 1 23 RLC A 0 1 0 1 33 RR A 0 0 0 1 03 RRC A 0 0 1 13 SWAP A 1 0 0 C4 data A ←0 A ←A 1 A7 A6 A5 A4 A3 A2 A1 A0 A7 A6 A5 A4 A3 A2 A1 A0 CY A7 A6 A5 A4 A3 A2 A1 A0 A7 A6 A5 A4 A3 A2 A1 A0 CY A 7÷4 ↔ A 3÷0 1 1 Table – Control Transfer Instructions Mnemonic ACALL addr11 LCALL addr16 Instruction code D7 D6 a10 a9 a7 a6 D5 D4 a8 a5 a4 D3 a3 Hexa - D2 a2 D1 a1 D0 a0 decimal Byte Byte 0 0 a15 a14 a13 a12 a11 a10 a7 a6 a5 a4 a3 a2 a9 a1 a8 a0 12 Byte Byte Explanation PC ← PC + SP ← SP + (SP) ← PC7 ÷ SP ← SP + (SP) ← PC15 ÷ PC ← page address _ addr11 PC ← PC + SP ← SP + (SP) ← PC7 ÷ SP ← SP + No of MC 2 RET 0 0 22 RETI 0 1 0 32 AJMP addr11 a10 a9 a7 a6 a8 a5 a4 a3 a2 a1 a0 Byte Byte LJMP addr16 0 0 0 a15 a14 a13 a12 a11 a10 a9 a7 a6 a5 a4 a3 a2 a1 0 0 0 a7 a6 a5 a4 a3 a2 a1 1 0 Instruction code a8 a0 a0 02 Byte Byte 80 Byte 73 Hexa - D7 D6 r7 r6 D5 D4 r5 r4 D3 r3 D2 r2 D1 r1 D0 r0 decimal 60 Byte JNZ rel r7 r6 r5 r4 r3 r2 r1 r0 70 Byte JC rel r7 r6 r5 r4 r3 r2 r1 r0 40 Byte JNC rel r7 r6 r5 r4 r3 r2 r1 r0 50 Byte SJMP rel JMP @A + DPTR Mnemonic JZ rel (SP) ← PC15 ÷ PC ← addr16 PC15 ÷ ← (SP) SP ← SP - PC7 ÷ ← (SP) SP ← SP - PC15 ÷ ← (SP) SP ← SP - PC7 ÷ ← (SP) SP ← SP - PC ← PC + PC ← page address _ addr11 PC ← addr16 PC ← PC + PC ← PC + rel PC ← A + DPTR Explanation PC ← PC + IF A = THEN PC ← PC + rel PC ← PC + IF A ≠ THEN PC ← PC + rel PC ← PC + IF CY = THEN PC ← PC + rel PC ← PC + IF CY = THEN PC ← PC + rel 2 2 2 No of MC 2 2 JB bit, rel JNB bit, rel JBC bit, rel b7 r7 b7 r7 b7 r7 b6 r6 b6 r6 b6 r6 Mnemonic CJNE A, direct, rel CJNE A, #data, rel b5 r5 b5 r5 b5 r5 b4 r4 b4 r4 b4 r4 b3 r3 b3 r3 b3 r3 b2 r2 b2 r2 b2 r2 b1 r1 b1 r1 b1 r1 b0 r0 b0 r0 b0 r0 Instruction code 20 Byte Byte 30 Byte Byte 10 Byte Byte 3 Hexa - D7 D6 a7 a6 r7 r6 D5 D4 1 a5 a4 r5 r4 D3 a3 r3 D2 a2 r2 D1 a1 r1 D0 a0 r0 decimal B5 Byte Byte d7 r7 d5 r5 d3 r3 d2 r2 d1 r1 d0 r0 B4 Byte Byte d6 r6 d4 r4 PC ← PC + IF (bit) = THEN PC ← PC + rel PC ← PC + IF (bit) = THEN PC ← PC + rel PC ← PC + IF (bit) = THEN Explanation No of MC PC ← PC + IF A < (direct) THEN PC ← PC + rel AND CY ←1 OR IF A > (direct) THEN PC ← PC + rel AND CY ←0 PC ← PC + IF A < data THEN PC ← PC + rel AND CY ←1 2 OR IF A > data THEN CJNE Rn, #data, rel d7 r7 d6 r6 d5 r5 d4 r4 d3 r3 n2 d2 r2 n1 d1 r1 n0 d0 r0 B8 ÷ BF Byte Byte CJNE @Ri, #data, rel d7 r7 d6 r6 d5 r5 d4 r4 d3 r3 d2 r2 d1 r1 i d0 r0 B6 ÷ B7 Byte Byte DJNZ Rn, rel r7 r6 r5 r4 r3 n2 r2 n1 r1 n0 r0 D8 ÷ DF Byte DJNZ direct, rel a7 r7 a6 r6 a5 r5 a4 r4 a3 r3 a2 r2 a1 r1 a0 r0 D5 Byte Byte NOP 0 0 0 0 00 PC ← PC + rel AND CY ←0 PC ← PC + IF Rn < data THEN PC ← PC + rel AND CY ←1 OR IF Rn > data THEN PC ← PC + rel AND CY ←0 PC ← PC + IF (Ri) < data THEN PC ← PC + rel AND CY ←1 OR IF (Ri) > data THEN PC ← PC + rel AND CY ←0 PC ← PC + Rn ← Rn - IF Rn ≠ THEN PC ← PC + rel PC ← PC + (direct) ← (direct) - IF (direct) ≠ THEN PC ← PC + rel PC ← PC + 2 2 Table – Bit Oriented Instructions Mnemonic CLR C Instruction code D7 D6 1 D5 D4 0 D3 D2 Hexa D1 D0 decimal C3 Explanation CY ← No of MC CLR bit SETB C SETB bit CPL C CPL bit ANL C, bit ANL C, /bit ORL C, bit ORL C, /bit MOV C, bit MOV bit, C b7 1 b7 1 b7 b7 b7 b7 b7 b7 b7 b6 1 b6 0 b6 b6 b6 b6 b6 b6 b6 b5 0 b5 1 b5 b5 b5 b5 b5 b5 b5 b4 1 b4 1 b4 b4 b4 b4 b4 b4 b4 b3 0 b3 0 b3 b3 b3 b3 b3 b3 b3 b2 0 b2 0 b2 b2 b2 b2 b2 b2 b2 b1 1 b1 1 b1 b1 b1 b1 b1 b1 b1 b0 b0 b0 b0 b0 b0 b0 b0 b0 C2 Byte D3 D2 Byte B3 B2 Byte 82 Byte B0 Byte 72 Byte A0 Byte A2 Byte 92 Byte 2 2 2 2 (bit) ← CY ← 1 (bit) ← 1 CY ← CY (bit) ← (bit) CY ← CY AND (bit) CY ← CY AND (bit) CY ← CY OR (bit) CY ← CY OR (bit) CY ← (bit) (bit) ← CY 10

Ngày đăng: 26/08/2017, 09:40

Xem thêm: Tệp lênh 8051

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w