Tài liệu Tập lệnh MCS-51 docx

33 293 1
Tài liệu Tập lệnh MCS-51 docx

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Tp lnh MCS-51 1 Tp lnh MCS-51 Tp lnh MCS-51 2 Gii thiu • Lnh ca 8051 đc thit k vi opcode 8 bit å có kh nng mã hóa 256 lnh khác nhau • Thc t có 255 lnh (vi mt t hp không đc đnh ngha): • Ngoài opcode mt lnh có th có thêm 1 hoc 2 byte đ mã hóa ch đ đa ch: – 139 lnh 1 byte – 92 lnh 2 byte – 24 lnh 3 byte Tp lnh MCS-51 3 Các ch đ đa ch • Cho phép xác đnh ni ct gi “data” ca lnh • Co 6 ch đ đa ch trong MCS-51 – Trc tip – Gián tip – Tc thì – Thanh ghi – Thanh ghi đnh trc – Ch s Tp lnh MCS-51 4 Ch đ đa ch trc tip • Direct addressing • a ch ca toán hng đc ch ra bi 8 bit trong trng đa ch ca code lnh • Áp dng cho – Internal RAM – SFRs Tp lnh MCS-51 5 Ch đ đa ch gián tip • Indirect addressing • Lnh ch ra mt thanh ghi có cha đa ch ca toán hng • Các thanh ghi s dng trong ch đ đa ch gián tip: – R0 và R1 – SP – DPTR • Áp dng cho: – Internal RAM – External data memory Tp lnh MCS-51 6 Ch đ thanh ghi • Register addressing • Mt s lnh có toán hng là các thanh ghi • Các thanh ghi R0 và R7 đc mã hóa bi 3 bit trong trng opcode (thay vì phi mã hóa 8 bit trong trng đa ch) Tp lnh MCS-51 7 Ch đ thanh ghi đnh trc • Mt s lnh đc thit k ch hot đng vi mt thanh ghi đnh trc å không cn trng đa ch đ mã hóa toán hng Tp lnh MCS-51 8 Ch đ đa ch tc thì • Immediate addressing • Giá tr ca toán hng là mt hng s và đc ch ngay trong trng đa ch Tp lnh MCS-51 9 Ch đ đa ch ch s • Indexed addressing • a ch ca toán hng đc ch ra nh s dng mt thanh ghi làm đa ch gc và mt thanh ghi đ ch đ lch • Các thanh ghi s dng – DPTR – PC – A • Ch áp dng cho các lnh thao tác trên vùng nh code Tp lnh MCS-51 10 Tp lnh MCS-51 • Có các kiu lnh – S hc – Logic – Thao tác trên bit – Truyn s liu – R nhánh chng trình Tp lnh MCS-51 11 Các lnh s hc • Cng: ADD và ADDC • Tr : SUBB • Nhân : MUL • Chia : DIV • Tng : INC • Gim : DEC Tp lnh MCS-51 12 ADD • Cng A vi mt toán hng, kt qu ct tr li A • Có tác đng đn c: CY, AC, OV • Lnh cng s dng 4 ch đ đa ch cho toán hng – Thanh ghi – Trc tip – Gián tip – Tc thì • Syntax ADD A, <src-byte> Tp lnh MCS-51 13 Ví d: ADD A, R2 ;cng A vi thanh ghi R2, kt qu ct tr li A ADD A, 3Fh ;cng A vi ô nh có đa ch 3Fh, kt qu ct tr li A Tp lnh MCS-51 14 Ví d: ADD A, @R2 ;cng A vi ô nh có đa ch bng giá tr ct trong thanh ; ghi R2, kt qu ct tr li A ADD A, # 3Fh ;cng A vi hng s 3Fh, kt qu ct tr li A Tp lnh MCS-51 15 ADDC • Cng có nh: Cng A vi mt toán hng và vi c c nh Carry, kt qu ct vào A • Có tác đng đn c: CY, AC, OV • Lnh cng s dng 4 ch đ đa ch cho toán hng – Thanh ghi – Trc tip – Gián tip – Tc thì • Syntax ADDC A, <src-byte> Tp lnh MCS-51 16 Tp lnh MCS-51 17 Tp lnh MCS-51 18 MUL AB • Nhân A vi B • Kt qu ct vào 2 thanh ghi A và B – A cha byte trng s thp – B cha byte có trng s cao • Tác đng đn c OV và CY (=0) Tp lnh MCS-51 19 DIV AB • Chia 2 s không du 8 bit • Ly A chia cho B • Kt qu: – Thng s ct  A – S d ct  B • Syntax: DIV AB Tp lnh MCS-51 20 INC • Lnh tng toán hng lên 1 • Nu giá tr trc khi tng là FF thì sau khi tng s là 00 • Không tác đng đn c • Ch đ đa ch ca toán hng: – Thanh ghi đnh ngha trc (thanh ghi A) – Thanh ghi (R0 – R7) – Trc tip – Gián tip • Syntax: INC <byte> [...]... nh MCS-51 57 T p l nh MCS-51 L nh nh y có i u ki n • N p PC m t giá tr • Các ngu n cs a ch khi th a mãn m t i u ki n d ng làm các i u ki n: – Bit c a các thanh ghi ho c vùng nh – ánh a ch theo bit C Carry 58 T p l nh MCS-51 CJNE • Compare-Jump-Not-Equal • Tác • Syntax ng CJNE n c Carry ,,rel 59 T p l nh MCS-51 60 T p l nh MCS-51 61 T p l nh MCS-51 62 T p l nh MCS-51 63 T p l nh MCS-51. .. t b nh ch ng trình:MOVC Truy c p ng n x p: PUSH, POP 30 T p l nh MCS-51 MOV • S li u c a toán h ng ngu n • N i dung c a toán h ng ngu n không thay • Không tác • Syntax: ng c copy vào toán h ng ích i nc MOV , 31 T p l nh MCS-51 32 T p l nh MCS-51 33 T p l nh MCS-51 34 T p l nh MCS-51 35 T p l nh MCS-51 36 T p l nh MCS-51 MOVX • Chuy n s li u gi a thanh ghi A và m t ô nh extarnal... , 37 T p l nh MCS-51 38 T p l nh MCS-51 39 T p l nh MCS-51 MOVC • c m t byte t • Không tác • ng b nh code vào thanh ghi A nc Syntax: MOVC A,@A+ 40 T p l nh MCS-51 41 T p l nh MCS-51 PUSH • C t m t byte vào ô nh ng n x p • Không tác • Syntax: ng nc PUSH direct 42 T p l nh MCS-51 POP • L y m t byte t • Không tác • Syntax: ng ng n x p nc POP direct 43 T p l nh MCS-51 Các l nh thao tác... T p l nh MCS-51 22 T p l nh MCS-51 INC DPTR • T ng n i dung c a thanh ghi 16 bit DPTR lên 1 • Không tác • Syntax: ng nc INC DPTR 23 T p l nh MCS-51 Các l nh logic • AND, OR, Exclusive-OR (XOR), Bù • Quay trái, ph i 24 T p l nh MCS-51 ANL • Th c hi n phép AND logic • Không tác • Syntax: ng nc AND , 25 T p l nh MCS-51 26 T p l nh MCS-51 (direct) ä (direct) (A) 27 T p l nh MCS-51 RL... l nh MCS-51 CLR • Xóa m t bit (=0) – – • trong các thanh ghi có th truy c p ho c các ô nh internal RAM) ánh n t ng bit a ch theo bit (ô nh 20h n 2fh c a Syntax CLR bit 45 T p l nh MCS-51 46 T p l nh MCS-51 SET • Thi t l p bit (=1): – – • trong các thanh ghi có th truy c p ho c các ô nh internal RAM) ánh n t ng bit a ch theo bit (ô nh 20h n 2fh c a Syntax SET bit 47 T p l nh MCS-51 48 T p l nh MCS-51. .. c a l nh sau l nh g i ch ng trình con cn pl i 52 T p l nh MCS-51 ACALL • G i ch ng trình con s d ng h p v i 5 bit cao c a PC • Syntax ACALL a ch có dài 11 bit k t addr11 53 T p l nh MCS-51 LCALL • G i ch owng trình con s d ng • a ch có dài 16 bit Syntax LCALL addr16 54 T p l nh MCS-51 RET • L nh tr v t • ch ng trình con Syntax RET 55 T p l nh MCS-51 L nh nh y tuy t • N p giá tr c a PC • Syntax LJMP... ho vùng nh có th truy c p n bit • Syntax • MOV , 49 T p l nh MCS-51 Ví d : MOV MOV P1.3,C C, P0.1 50 T p l nh MCS-51 L nh r nhánh ch ng trình • Ch ng trình con: ACALL, LCALL, RET • L nh nh y không i u ki n: SJMP, LJIMP, AJMP, JMP • L nh nh y có i u ki n: JNB, JB, JNC, JC, JNZ, JZ, CJNE, DJNZ 51 T p l nh MCS-51 L nh g i ch • Ch – – • – cs L p trình có c u trúc Các o n ch ng trình m... l nh MCS-51 60 T p l nh MCS-51 61 T p l nh MCS-51 62 T p l nh MCS-51 63 T p l nh MCS-51 DJNZ • Decrement and Jump if Not zero • Không tác • Syntax ng nc DJNZ ,rel 64 T p l nh MCS-51 65 T p l nh MCS-51 66 T p l nh MCS-51 ... Các bit d ch qua trái 1 bit – Bit 7 s • Không tác • c ng a v bit 0 nc Syntax RL A 28 T p l nh MCS-51 RLC A • Quay trái thanh ghi A qua Carry: – N i dung các bit t – C Carry s chuy n vào v trí bit 0 – Bit 7 d ch vào Carry • Không tác • ng 0 n 6 s d ch qua trái n c (ngo i tr Carry) Syntax: RLC A 29 T p l nh MCS-51 Các l nh chuy n s li u • Chuy n s li u v i internal RAM: MOV, XCH, XCHD • Chuy n s li u . <dest-byte>,<src-byte> Tp lnh MCS-51 32 Tp lnh MCS-51 33 Tp lnh MCS-51 34 Tp lnh MCS-51 35 Tp lnh MCS-51 36 Tp lnh MCS-51 37 MOVX • Chuyn s liu. code Tp lnh MCS-51 10 Tp lnh MCS-51 • Có các kiu lnh – S hc – Logic – Thao tác trên bit – Truyn s liu – R nhánh chng trình Tp lnh MCS-51 11 Các

Ngày đăng: 17/02/2014, 23:20

Tài liệu cùng người dùng

Tài liệu liên quan