OPERASI PERCABANGAN DAN SUBRUTINE 1. Tujuan Praktikum a. Mengerti dan memahami prinsip dasar operasi Percabangan dan Subritine dari suatu mikrontroler b. Mengerti dan memahami setiap instruksi yang digunakan dalam operasi Percabangan dan mampu menganalalisa setiap data yang dihasilkan,\ 2. Peralatan yang digunakan a. Seperangkat Komputer b. Software Ts Control Emulator, Asembly HB2000 dan TOP View Simulator c. Intruksi yang digunakan : SJMP, LJMP, ACALL, LCALL, DJNZ, CJNE dan RET 3. Dasar Teori Terdapat dua jenis instruksi percabangan berdasarkan penyebabnya yaitu, a. Percabangan Bersyarat suatu kelompok instruksi tertentu yang melakukan lompatan kesuatu alamat memori jika memenuhi syarat tertentu. Contoh : JNZ Loop : Lompat ke Loop jika accumulator tidak = 00h MOV A,#06H : Jika A = 00H, maka isi A dengan data 06H Loop : MOV B,#00H : Isi register B dengan data 00 Kelompok instruksi ini adalah JZ, JNZ, CJNE dan DJNZ b. Percabangan Tanpa Syarat adalah suatu kelompok instruksi tertentu yang melakukan suatu lompatan langsung tanpa harus memenuhi syarat tertentu, contoh : SJMP mulai Mulai: MOV A,#35H 4. Prosedure Praktikum 1. Salinlah program latihan 2. Amatilah data yang diperoleh 3. Buat Algoritma Program 4. Buat Flowchart Program 5. Analisis program 6. Buat Kesimpulan 7. Analisislah Program tersebt : Lompat ke Mulai : Isi Accumulator dengan data 35H Latihan 5 p1 equ org sjmp mulai: mov mov acall lcall stop1: ljmp 90h 00h mulai a,#0fh p1,a delay lagi stop delay: ; subroutine delay mov djnz ret r0,#03h r0,$ mov inc cjne mov dec jnz ret r1,#00h r1 r1,#03h,lag a,#0fh a lag1 ljmp end stop1 lagi: lag: lag1: stop: ; Percabangan tanpa syarat ; percabangan bersyarat