Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

By Kustanto.  MOV :digunakan untuk menyalin data antara 2 operand.  MOVC :Untuk menyalin data yang terdapat pada memory program internal.  MOVX :Untuk.

Presentasi serupa


Presentasi berjudul: "By Kustanto.  MOV :digunakan untuk menyalin data antara 2 operand.  MOVC :Untuk menyalin data yang terdapat pada memory program internal.  MOVX :Untuk."— Transcript presentasi:

1 By Kustanto

2  MOV :digunakan untuk menyalin data antara 2 operand.  MOVC :Untuk menyalin data yang terdapat pada memory program internal.  MOVX :Untuk menyalin data yang terdapat pada memory program eksternal

3 Contoh SyntaxKeterangan MOV A,R1Salin nilai R1 ke akumulator MOV A,@R1Salin isi lokasi yang ditunjuk R1 ke A MOV A,P1Salin data pada port 1 ke Akumulator MOV P1,ASalin data pada Akumulator ke Port 1 MOVC A,@X+DPTRSalin data int. Yang di tunjuk DPTR ke A MOVX A,@DPTRSalin data eks. Yang ditunjuk DPTR ke A MOVX @DPTR,ASalin data Akumulator ke lokasi yang ditunjuk DPTR

4  ADD : Digunakan untuk melakukan operasi penjumlahan Akumulator dengan suatu operand dan hasilnya disimpan dalam akumulator.  SUBB :Untuk melakukan operasi pengurangan akumulator dengan suatu operand dan hasilnya disimpan dalam akumulator.

5 Contoh SyntaxKeterangan ADD A,#20A=A + 20 ADD A,@R0A=A + [R0] SUBB A,BA=A-B SUBB A,#10A=A-10

6  MUL AB : Digunakan untuk melakukan operasi perkalian antara Akumulator dengan register B. Hasilnya berupa data 16 bit dengan low byte pada A dan high byte pada B.  Contoh: A=50hB=A0h MUL A,B hasilnya=3200h maka: A=00hB=32h

7  DIV AB :digunakan untuk melakukan operasi pembagian antara Akumulator dengan regiser B. Hasilnya pembagian disimpan pada Akumulator dan sisa pembagian disimpan pada register B.  Contoh: A=FBh B=12h DIV A,B Hasilnya= 0Dh maka: A=0DhB=11h

8  DEC :digunakan untuk melakukan pengurangan sebesar satu pada suatu operand.  INC :digunakan untuk melakukan penambahan sebesar satu pada suatu operand.

9 SyntaxKeterangan DEC AA=A-1 DEC @R0[R0]=[R0] – 1 INC AA=A + 1 INC DPTRDPTR= DPTR + 1

10  ORL :Untuk melakukan operasi OR antara dua operand.  ANL :Untuk melakukan operasi AND antara dua operand.  CPL :Untuk melakukan operasi komplemen suatu operand.

11 SyntaxAkumulatorRegister BHasil ORL A,B0011 10101111 00001111 1010 ANL A,B0011 10101111 00000011 0000 CPL A0011 10101111 00001100 0101

12  RR :Untuk melakukan operasi pergeseran ke kanan sebanyak 1 bit.  RL :Untuk melakukan operasi pergeseran ke kiri sebanyak 1 bit.  SWAP :Untuk melakukan operasi pertukaran data low nible dan high nible

13 SyntaxAkumulatorHasil RR A0011 10100001 1101 RL A0011 10100111 0100 SWAP A0011 10101010 0011

14  SETB : digunakan untuk memberikan logik 1 pada bit operand.  CLR :Untuk memberikan logik 0 pada bit operand.  Contoh: SETB P2.0 SETB P0.0 CLR P2.1

15  PUSH :Untuk menyimpan operand ke dalam stack.  POP :Untuk mengembalikan nilai operand dari stack.  DJNZ : Melakukan lompatan jika nilainya di kurangi 1 dan hasilnya tidak nol.

16 push 7 push 6 push 5 mov R7,#04h loopa: mov R6,#0ffh loopb: mov R5,#0ffh djnz R5,$ djnz R6,loopb djnz R7,loopa pop 5 pop 6 pop 7

17  JMP (jump) :Melakukan lompatan ke suatu blok program. Contoh: org 00h start: jmp loop org 300h loop: setb p0.0 clr p0.1 sjmp loop end

18  JB (Jump if bit) dan JNB (Jump if not bit) :digunakan untuk melakukan lompatan ke suatu blok program jika nilai operand 1 (bit) atau 0 (not bit).  Contoh: org 00h start: mov p0,#00h jb p0.0, nyala sjmp start nyala: setb p2.0 sjmp start end

19 org 00h start: mov p0,#0ffh jnb p0.0,nyala sjmp start nyala: setb p2.0 sjmp start end

20  JZ (Jump if zero) :Untuk melakukan lompatan ke suatu blok program jika nilai operand 0 (zero).  JNZ (Jump if not zero) : Untuk melakukan lompatan ke suatu blok program jika nilai operand 1 (not zero).

21 org00h utama: mov R1,#10 start: dec R1 jz R1,nyala sjmp start nyala: setb p2.0 jmp utama end

22  CJNE (Compare and Jump if Not Equal) :Digunakan untuk melakukan pembandingan dua operand dan lompat ke blok program lain jika tidak sama.  Contoh: org 00h utama: mov a,#10 tambah: inc a cjne a,#20,tambah setb p2.0 sjmp utama end

23  CALL :dignakan untuk memanggil prosedur tertentu dalam program (subprogram).  RET :digunakan untuk mengembalikan ke baris program yang melakukan CALL.

24 org 00h kedip: setb p2.0 call tunda clr p2.0 call tunda sjmp kedip tunda: mov r7,#20 la: mov r6,#0ffh lb: mov r5,#0ffh djnz r5,$ djnz r6,lb djnz r7,la ret end

25  TERIMA KASIH


Download ppt "By Kustanto.  MOV :digunakan untuk menyalin data antara 2 operand.  MOVC :Untuk menyalin data yang terdapat pada memory program internal.  MOVX :Untuk."

Presentasi serupa


Iklan oleh Google