Xem mẫu

  1. Chương 8: NHOÙM LEÄNH GOÏI 1. Leänh goïi khoâng ñieàu kieän: + Cuù phaùp: CAAL ADDR 1 1 0 0 1 1 0 1 + Maõ ñoái 8 bit thaáp töôïng: 8 bit cao + YÙ nghóa: vi xöû lyù seõ thöïc hieän chöông trình taïi ñòa chæ ADDR sau ñoù seõ trôû veà chöông trình chính khi gaëp leänh trôû veà. + Leänh naøy chieám 3 byte, soá chu kyø clock =18. + Leänh naøy khoâng aûnh höôûng ñeán thanh ghi traïng thaùi. 2. Leänh goïi khi Z=0: + Cuù phaùp: CNZ ADDR 1 1 0 0 1 1 0 1 8 bit thaáp + Maõ ñoái 8 bit cao töôïng: + YÙ nghóa: vi xöû lyù seõ thöïc hieän chöông trình taïi ADDR khi bit Z=0, ngay sau khi thöïc hieän leänh aûnh höôûng ñeán bit Z cuûa thanh ghi traïng thaùi. Sau ñoù seõ trôû veà chöông trình chính khi gaëp leänh trôû veà. + Leänh naøy chieám 3 byte, soá chu kyø clock =9/18. + Leänh naøy khoâng aûnh höôûng ñeán thanh ghi traïng thaùi. ( Töông töï cho caùc leänh khaùc). 3. Leänh goïi khi bit Z=1: + Cuù phaùp: CZ ADDR 4. Leänh goïi khi bit C=0: + Cuù phaùp: CNC ADDR
  2. 5. Leänh goïi khi bit C=1: + Cuù phaùp: CC ADDR 6. Leänh goïi khi bit P=0: + Cuù phaùp: CPO ADDR 7. Leänh goïi khi bit P=1: + Cuù phaùp: CPE ADDR 8. Leänh goïi khi bit S=0: + Cuù phaùp: CP ADDR 9. Leänh goïi khi bit S=1: + Cuù phaùp: CM ADDR XVII. NHOÙM LEÄNH TRÔÛ VEÀ TÖØ CHÖÔNG TRÌNH CON: 1. Leänh RET khoâng ñieàu kieän: + Cuù phaùp: RET + Maõ ñoái töôïng: 1 0 0 1 0 0 1 1 + YÙ nghóa: leänh naøy seû keát thuùc chöông trình con, vi xöû lyù seõ trôû laïi chöông trình chính tieáp tuïc phaàn chöông trình coøn laïi. + Leänh naøy chieám 1 byte, soá chu kyø xung clock=10. + Thanh ghi traïng thaùi khoâng ñoåi. 2. Leänh trôû veà khi Z=0: + Cuù phaùp: RNZ 1 1 0 0 0 0 0 0 + Maõ ñoái töôïng: + YÙ nghóa: leänh naøy seõ keát thuùc chöông trình con khi bit Z=0, vi xöû lyù seõ trôû laïi chöông trình chính tieáp tuïc phaàn chöông trình coøn laïi, neáu khoâng thoûa ñieàu kieân chöông trình con seõ thöïc hieän caùc leänh tieáp theo. + Leänh naøy chieám 1 byte, soá chu kyø clock=6/12.
  3. + Thanh ghi traïng thaùi khoâng thay ñoåi. ( Töông töï cho caùc leänh khaùc). 3. Leänh trôû veà khi Z=1: + Cuù phaùp: RZ 4. Leänh trôû veà khi C=0: + Cuù phaùp: RNC 5. Leänh trôû veà khi C=1: + Cuù phaùp: RC 6. Leänh trôû veà khi P=0: + Cuù phaùp: RPO 7. Leänh trôû veà khi P=1: + Cuù phaùp: RPE 8. Leänh trôû veà khi S=0: + Cuù phaùp: RP 9. Leänh trôû veà khi S=1: + Cuù phaùp: RM XVIII. NHOÙM LEÄNH DI CHUYEÅN CAËP THANH GHI 1. Leänh trao ñoåi noäi dung 2 caëp thanh ghi: + Cuù phaùp : XCHG + Maõ ñoái töôïn1 1 1 0 1 0 1 1 g: + YÙ nghóa: noäi dung caëp thanh ghi HL vaø DE ñöôïc trao ñoåi cho nhau. Thanh ghi H trao ñoåi vôùi D thanh ghi L trao ñoåi vôùi E. + Leänh naøy chieám 1 byte, soá chu kyø xung clock = 4. + Thanh ghi traïng thaùi khoâng thay ñoåi. ( Töông töï cho caùc leänh khaùc ). 2. Leänh trao ñoåi noäi dung caëp thanh ghi vôùi oâ nhôù: + Cuù phaùp : XTHG
  4. 3. Leänh di chuyeån noäi dung caëp thanh ghi: + Cuù phaùp : SPHL 4. Leänh naïp caëp thanh ghi PC : + Cuù phaùp : PCHL XIX. NHOÙM LEÄNH XUAÁT NHAÄP 1. Leänh nhaäp döõ lieäu töø port: + Cuù phaùp:IN port-addr 1 1 0 1 1 0 1 1 + Maõ ñoái töôïng: port-addr + YÙ nghóa: nhaäp noäi dung cuûa coù ñòa chæ port-addr vaøo thanh ghi A. Ñòa chæ port-addr coù ñoä daøi 1 byte. + Leänh naøy chieám 2 byte, soá chu kyø xung clock = 10. + Thanh ghi trang thaùi khoâng thay ñoåi. (Töông töï cho caùc leänh khaùc). 2. Leänh xuaát döõ lieäu ra port: + Cuù phaùp: OUT port-addr 3. Leänh cho pheùp ngaét: + Cuù phaùp: EI 4. Leänh khoâng cho pheùp ngaét: + Cuù phaùp: DI 5. Leänh read interrupt mask: + Cuù phaùp: RIM 6. Leänh set interrupt mask: Baûng tra caùc thanh ghi: + Cuù phaùp: SIM Register ddd or sss B 000 XX. NHOÙM LEÄNH ÑAËC BIEÄT: C 001 1. Leänh nghòch ñaûo noäi dung thanh D 010 ghi A: E 011 H 100 L 101 M 110 A 111 Baûng 2.1
  5. + Cuù phaùp:CMA 2. Leänh ñaët bit carry: + Cuù phaùp:STC 3. Leänh nghòch ñaûo bit carry: + Cuù phaùp:CMC 4. Leänh ñieàu chænh thaäp phaân: + Cuù phaùp:DAA 5. Leänh nop: + Cuù phaùp:NOP 6. Leänh döøng: + Cuù phaùp:HLT XXI. VÍ DUÏ MINH HOÏA TAÄP LEÄNH: Chöông trình nhaáp nhaùy chuoãi "-HAØ-NOÄI-" treân 8 led: Org 7108h ;ñòa chæ baét ñaàu nhaäp maõ chuoåi Db, 40h, 76h, 77h, 40h, 37h, 3fh, 30h, 40, ;khai baùo maõ cuûa chuoãi Org 6200h Vd1: lxi h, 7108h ;naïp ñòa chæ quaûn lyù döõ lieäu vaøo thanh ghiHL Mvi c, 08h ;laøm bieán ñeám cho chöông trình hieån thò Vd2: mov a, m ;laáy döõ lieäu Sta 0a000h ;gôûi ra led hieån thò Inr l ;taêng leân 1 ñeå laáy byte tieáp theo Dcr c ;giaûm bieán ñeám Jnz vd2 ;nhaûy veà vd2 khi chöa gôûi ñuû 8 byte Mvi a, 01h ;naïp thôøi haèng delay1 giaây Call 0310h ;goïi chöông trình con delay
  6. Mvi c, 08h ;laøm bieán ñieám cho chöông trình xoùa Mvi a, 00h ;naïp 00 vaøo A Vd3 sta 0a000h ;gôûi ra led ñeå xoùa Dcr c ;giaûm bieán ñeám Jnz vd3 ;quay laïi vd3 neáu chöa xoùa ñuû 8 led Mvi 0, 01h ;naïp thôøi haèng delay Call 0310h ;goïi chöông trình delay Jmp vd1 ;quay laïi laøm laïi chu kyø keá.