Instruksi Aritmatika

download Instruksi Aritmatika

of 16

  • date post

    24-Jun-2015
  • Category

    Education

  • view

    1.831
  • download

    5

Embed Size (px)

Transcript of Instruksi Aritmatika

  • 1. Mikroprosesor Operasi Aritmetika 1

2. 7 INSTRUKSI ARITMETIKA Terdiri atas : Menambahkan Isi Akumulator dengan data 8 bit, isi register serba guna, data pada alamat memori. Menambahkan dengan carry isi Akumulator dengan data 8 bit, isi register serba guna, data pada alamat memori. Mengurangi satu isi register dan data pada alamat memori Mengurangi dengan carry isi Akumulator dengan data 8 bit, isi register serba guna, data pada alamat memori. Mengurangi Isi Akumulator dengan data 8 bit, isi register serba guna, data pada alamat memori. Menambah satu isi register dan data pada alamat memori 1. Intruksi Aritmetika 8 bit 3. INSTRUKSI ARITMETIKA 2. Intruksi Aritmetika 16 bit 8 Menambahkan isi register HL, IX, dan IY dengan data pada register 16 bit Menambahkan dengan carry isi register HL dengan data pada register 16 bit Menambahkan satu isi register HL, IX, dan IY Mengurangi satu isi register HL, IX, dan IY Mengurangi dengan carry isi register HL dengan data pada register 16 bit Note : Pada operasi penambahan dan pengurangan akan menset/mereset isi dari register bendera. 4. 9 INSTRUKSI ARITMETIKA MENAMBAH ISI AKUMULATOR DENGAN DATA DARI REGISTER 8 BIT Instruksi penambahan isi akumulator lain yaitu : ADD A,n => C6 , n => Menambahkan isi akumulator dengan data 8 bit ADD A, (HL) => 86 => Menambahkan isi akumulator dengan data (HL) ADD A, (Ix+d) => DD, 86, d => Menambahkan isi akumulator dengan data dari (Ix + d) ADD A, (Iy+d) => FD, 86, d => Menambahkan isi akumulator dengan data dari (Iy + d) 5. 10 INSTRUKSI ARITMETIKA Contoh : Isi Register A adalah 7EH. Isi Register C adalah B9. Tambahkan isi Akumulator dengan isi dari register C. START STOP LD A, 7E H LD C, B9 H ADD A, C 3E 7E 0E B9 81 A => 7EH => 0111 1110 C => B9H => 1011 1001 A => 1 37H => 1 0011 0111 6. 11 INSTRUKSI ARITMETIKA Hasil Eksekusi Dissambler File Memory Editor 7. 9 INSTRUKSI ARITMETIKA MENAMBAHKAN DENGAN CARRY ISI AKUMULATOR DENGAN DATA 8 BIT Instruksi penambahan dengan carry isi akumulator lain yaitu : ADC A, n => CE, n => Menambahkan dengan carry isi akumulator dengan data 8 bit ADC A,r => 10 001 rrr => Menambahkan dengan carry isi akumulator dengan data dari reg. 8 bit ADC A, (HL) => 8E => Menambahkan isi dengan carry isi akumulator dengan data dari (HL) ADC A, (Ix+d) => DD, 8E, d => Menambahkan dengan carry isi akumulator dengan data dari (Ix + d) ADC A, (Iy+d) => FD, 8E, d => Menambahkan dengan carry isi akumulator dengan data dari (Iy + d) 8. 10 INSTRUKSI ARITMETIKA Contoh : Isi Register A adalah BEH. Isi Register D Adela 5F. Tambahkan dengan carry isi Akumulator dengan isi dari register D. START STOP LD A, BE H LD D, 5F H ADC A, D 3E BE 16 5F 82 A => BEH => 1011 1110 C => 5FH => 0101 1111 A => 1 1DH => 1 0001 1101 1 => 1 A => 1EH => 0001 1110 9. 9 INSTRUKSI ARITMETIKA MENAMBAHKAN SATU ISI REGISTER 8 BIT Instruksi penambahan satu isi register 8 bit yaitu : INC r => 00 rrr 100 => Menambahkan satu isi register 8 bit INC (HL) => 34 => Menambahkan satu data pada (HL) INC (Ix +d) => DD, 34, d => Menambahkan satu data pada (Ix+d) INC (Iy +d) => FD, 34, d => Menambahkan satu data pada (Iy+d) 10. 9 INSTRUKSI ARITMETIKA MENGURANGI ISI AKUMULATOR DENGAN DATA DARI REGISTER 8 BIT Instruksi pengurangan isi akumulator lain yaitu : SUB n => D6 , n => Mengurangi isi akumulator dengan data 8 bit SUB r => 10 010 rrr => Mengurangi isi akumulator dengan data dari reg. 8 bit SUB (HL) => 96 => Mengurangi isi akumulator dengan data dari (HL) SUB (Ix+d) => DD, 96, d => Mengurangi isi akumulator dengan data dari (Ix + d) SUB (Iy+d) => FD, 96, d => Mengurangi isi akumulator dengan data dari (Iy + d) 11. 9 INSTRUKSI ARITMETIKA MENGURANGI DENGAN CARRY ISI AKUMULATOR DENGAN DATA DARI REGISTER 8 BIT Instruksi pengurangan dengan carry isi akumulator yaitu : SBC A, n => DE, n => Mengurangi dengan carry isi akumulator dengan data 8 bit SBC A,r => 10 011 rrr => Mengurangi dengan carry isi akumulator dengan isi reg. 8 bit SBC A, (HL) => 9E => Mengurangi dengan carry isi akumulator dengan data (HL) SBC A, (Ix+d) => DD, 9E, d => Mengurangi dengan carry isi akumulator dengan data (Ix + d) SBC A, (Iy+d) => FD, 9E, d => Mengurangi dengan carry isi akumulator dengan data (Iy + d) 12. 9 INSTRUKSI ARITMETIKA MENGURANGI SATU ISI REGISTER 8 BIT Instruksi pengurangan 1 isi register 8 bit : DEC r => 00 rrr 101 => Mengurangi satu isi register 8 bit DEC (HL) => 35 => Mengurangi satu data pada (HL) DEC (Ix +d) => DD, 35, d => Mengurangi satu data pada (Ix+d) DEC (Iy +d) => FD, 35, d => Mengurangi satu data pada (Iy+d) 13. INSTRUKSI PENAMBAHAN (8 Bit) N o Mnemonic Opcode + Operands Keterangan 1 ADD A,n C6 , n Menambahkan isi akumulator dengan data 8 bit 2 ADD A,r 10 000 rrr Menambahkan isi akumulator dengan data dari reg. 8 bit 3 ADD A, (HL) 86 Menambahkan isi akumulator dengan data (HL) 4 ADD A, (Ix+d) DD, 86, d Menambahkan isi akumulator dengan data dari (Ix + d) 5 ADD A, (Iy+d) FD, 86, d Menambahkan isi akumulator dengan data dari (Iy + d) 6 ADC A, n CE, n Menambahkan dengan carry isi akumulator dengan data 8 bit 7 ADC A,r 10 001 rrr Menambahkan dengan carry isi akumulator dengan data dari reg. 8 bit 8 ADC A, (HL) 8E Menambahkan isi dengan carry isi akumulator dengan data dari (HL) 9 ADC A, (Ix+d) DD, 8E, d Menambahkan dengan carry isi akumulator dengan data dari (Ix + d) 10 ADC A, (Iy+d) FD, 8E, d Menambahkan dengan carry isi akumulator dengan data dari (Iy + d) 11 INC r 00 rrr 100 Menambahkan satu isi register 8 bit 12 INC (HL) 34 Menambahkan satu data pada (HL) 13 INC (Ix +d) DD, 34, d Menambahkan satu data pada (Ix+d) 14 INC (Iy +d) FD, 34, d Menambahkan satu data pada (Iy+d) 12 14. INSTRUKSI PENGURANGAN (8 Bit) N o Mnemonic Opcode + Operands Keterangan 1 SUB n D6 , n Mengurangi isi akumulator dengan data 8 bit 2 SUB r 10 010 rrr Mengurangi isi akumulator dengan data dari reg. 8 bit 3 SUB (HL) 96 Mengurangi isi akumulator dengan data dari (HL) 4 SUB (Ix+d) DD, 96, d Mengurangi isi akumulator dengan data dari (Ix + d) 5 SUB (Iy+d) FD, 96, d Mengurangi isi akumulator dengan data dari (Iy + d) 6 SBC A, n DE, n Mengurangi dengan carry isi akumulator dengan data 8 bit 7 SBC A,r 10 011 rrr Mengurangi dengan carry isi akumulator dengan isi reg. 8 bit 8 SBC A, (HL) 9E Mengurangi dengan carry isi akumulator dengan data (HL) 9 SBC A, (Ix+d) DD, 9E, d Mengurangi dengan carry isi akumulator dengan data (Ix + d) 10 SBC A, (Iy+d) FD, 9E, d Mengurangi dengan carry isi akumulator dengan data (Iy + d) 11 DEC r 00 rrr 101 Mengurangi satu isi register 8 bit 12 DEC (HL) 35 Mengurangi satu data pada (HL) 13 DEC (Ix +d) DD, 35, d Mengurangi satu data pada (Ix+d) 14 DEC (Iy +d) FD, 35, d Mengurangi satu data pada (Iy+d) 13 15. INSTRUKSI PENAMBAHAN (16 Bit) N o Mnemonic Opcode + Operands Keterangan 1 ADD HL,ss 00 ss 1001 Menambahkan isi HL dengan isi reg. 16 bit. (ss bisa BC, DE, HL, SP) 2 ADD Ix, pp DD, 00 pp 1001 Menambahkan isi IX dgn isi reg. 16 bit. (pp bisa BC, DE, Ix, SP) 3 ADD Iy, rr FD, 00 rr 1001 Menambahkan isi IY dgn isi reg. 16 bit. (rr bisa BC, DE, Iy, SP) 4 INC ss 00 ss 0011 Menambahkan satu isi register 16 bit 5 INC Ix DD, 23 Menambahkan satu isi register Ix 6 INC Iy FD, 23 Menambahkan satu isi register Iy 7 ADC HL,ss ED, 01 ss 0010 Menambahkan dengan carry isi HL dengan isi reg. 16 bit 16. INSTRUKSI PENGURANGAN (16 Bit) N o Mnemonic Opcode + Operands Keterangan 1 SBC HL, ss ED, 01 ss 0010 Mengurangi isi HL dengan data dari register 16 bit. (ss bisa berupa BC, DE, HL, SP) 2 DEC ss 00 ss 1011 Mengurangi satu isi register 16 bit 3 DEC Ix DD, 2B Mengurangi satu isi Ix 4 DEC Iy FD, 2B Mengurangi satu isi Iy