: 1. Menguasai
Prosedur
Algoritma Pemrograman
Penyusunan
Pengertian
Pemograman : Proses menulis, menguji dan menyelesaikan
suatu masalah dalam bentuk program
Bahasa Pemograman : Bahasa yang digunakan oleh seorang
pemogram/programmer
agar
dapat
berkomunikasi
dengan
komputer
Program : Adalah kumpulan instruksi-instruksi tersendiri yang
biasanya disebut source code yang dibuat oleh programmer
(pembuat program)
Atau instruksi atau perintah yang disusun sedemikian rupa
sehingga mempunyai urutan nalar yang tepat untuk menyelesaikan
suatu persoalan/masalah.
Algoritma : Penggambaran secara sistematis terhadap suatu
masalah yang akan diprogram
Flowchart : Aliran diagram gambaran terhadap suatu masalah
dari awal sampai akhir agar memudahkan dalam pembacaan
tehadap suatu masalah
Tujuan Belajar pemograman agar memudahkan seorang
programmer menyelesaikan masalah/persoalan
B.
Bahasa Pemograman
Ada 2 bahasa pemograman :
1.
Bahasa tingkat rendah
Bahasa rakitan (bahasa Inggris: assembly language) adalah bahasa
pemrograman komputer tingkat rendah. Bahasa rakitan merupakan
notasi untuk bahasa mesin yang dapat dibaca oleh manusia dan
berbeda-beda tergantung dari arsitektur komputer yang digunakan.
Bahasa mesin adalah pola bit-bit (serangkaian nomor-nomor biner)
tertentu yang merupakan kode operasi mesin. Bahasa mesin dibuat
lebih mudah dibaca dan ditulis dengan cara mengganti pola bit-bit
menjadi julukan-julukan yang disebut mnemonics.
2.
Disusun oleh
Yuniawati, S.Pd
C.
Notasi Algoritma
Disusun oleh
Yuniawati, S.Pd
D.
Disusun oleh
Yuniawati, S.Pd
E.
Pemograman Pascal
b) Char
Type variabel yang berguna untuk pengolahan character ASCII, type
character ini penulisannya ditandai dengan dua buah petik tunggal
seperti : 'A', '3','*',#7 untuk menyatakan ' harus ditulis ''''
c) Boolean
Type varibale yang berguna untuk pengolahan hal yang hanya
mempunyai dua ketentuan yaitu benar(TRUE) dan salah(FALSE) saja.
2.Real types
Type variable yang beguna untuk pengolahan data yang tidak bulat,
untuk type real ini juga terbagi atas beberapa :
Disusun oleh
Yuniawati, S.Pd
Read/Readln [prosedur].
Perintah ini digunakan untuk memasukkan [input] data lewat
keyboard ke dalam suatu variabel. Sintaks: Read/Readln(x); (ingat,
selalu diakhiri dengan titik koma [;])
Keterangan : x = variabel.
Read = pada statemen ini posisi kursor tidak pindah ke baris
selanjutnya.
Readln = pada statemen ini posisi kursor akan pindah ke baris
selanjutnya setelah di input.
ReadKey [fungsi].
Untuk pembacaan sebuah karakter dari keyboard. Tipe data yang
dihasilkan adalah char.
Write/Writeln [prosedur].
Digunakan untuk menampilkan isi dari suatu nilai variable di layar.
Sintaks: Write/Writeln(x);
Keterangan : x = variabel.
Write/Writeln= statement ini digunakan untuk mencetak variable ke
dalam monitor
Contoh : Writeln(Masukkan nilai alas segitigA=)
ClrScr [prosedur].
Perintah ini digunakan untuk membersihkan layar.
Disusun oleh
Yuniawati, S.Pd
10
Textcolor
Mengatur warna tulisan yang dicetak dengan perintah Write dan
Writeln, yang pertama adalah perintah : TextColor(nomor warna);
TextColor(4 + 128);
Writeln('Merah dan berkedip-kedip');
Atau :
TextColor(Red + Blink);
Writeln('Merah dan berkedip-kedip');
2. Instruksi Percabangan
Salah satu perintah struktur pengambilan keputusan adalah :
Disusun oleh
Yuniawati, S.Pd
11
Begin
Clrscr;
Write(Masukan Bilangan ? ); Readln(Bilangan);
If (Bilangan Mod 2) = 0 Then
Writeln (Genap)
Else
Writeln (Ganjil);
Readln;
End.
If condition1 Then
Statement1
Else
If condition2 Then
Statement2
Else
If condition3 Then
Statement3
Else
Statement4;
Contoh kita akan membuat nilai huruf dari angka dengan kriteria 80
keatas mendapat A, 70 s/d 79 mendapat B, 60 s/d 69 mendapat C, 50
s/d 59 mendapat D, dan dibawah 49 mendapat E, maka dapat ditulis
menjadi :
if mark>=80 then
grade:='A'
else { 79 or below goes here }
if mark>=70 then
grade:='B'
else { 69 or below goes here }
if mark>=60 then
grade:='C'
else { 59 or below goes here }
if mark>=50 then
grade:='D'
else { 49 or below goes here }
grade:='E';
Case Of
Disusun oleh
Yuniawati, S.Pd
12
End;
Case mark of
80..100: grade:='A';
70..79 : grade:='B';
60..69 : grade:='C';
50..59 : grade:='D';
End;
3. Instruksi Perulangan
Looping diartikan sebagai proses berulang terhadap statement
maupun serangkaian statement lebih dari satu kali.
a. For...........Do
Disusun oleh
Yuniawati, S.Pd
13
Until condition;
Contoh
I := 11;
Repeat
Writeln( Elektronika Industri);
DEC(I);
Until I=0;
3. Instruksi Array
Array adalah variabel yang dapat menampung sejumlah data yang
ditandai dengan suatu index pada masing-masing elemennya.
Contoh :
Var
Nilai : Array [1..10] of Integer;
Dalam hal ini variabel Nilai adalah suatu array yang memiliki 10
element, yaitu Nilai[1], Nilai[2], Nilai[3], , Nilai[10]. Pada masingmasing elemennya dapat menampung satu nilai Integer.
Contoh :
Nilai[1] := 60;
Nilai[2] := 75;
Nilai[10] := 90;
Writeln(Nilai[1]);
Writeln(Nilai[2]);
Writeln(Nilai[10]);
Var
Matrix : Array [1..3,1..3] Of Integer;
Adalah contoh array 2 dimensi, yang terdiri dari elemen
Matrix
[1,2],
Matrix[1,3],
Matrix[2,1],
Matrix[2,2],
Matrix[3,1], Matrix[3,2], dan Matrix[3,3].
Jadi jumlah elemennya adalah 3 x 3 = 9 elemen.
Var
Matrix : Array [1..3,1..3] Of Integer;
Adalah contoh array 2 dimensi, yang terdiri dari elemen
Matrix
[1,2],
Matrix[1,3],
Matrix[2,1],
Matrix[2,2],
Matrix[3,1], Matrix[3,2], dan Matrix[3,3].
Jadi jumlah elemennya adalah 3 x 3 = 9 elemen.
Matrix[1,1],
Matrix[2,3],
Matrix[1,1],
Matrix[2,3],
Disusun oleh
Yuniawati, S.Pd
14
writeln('ABC');
writeln('Press any key when ready ...')
Var
I : Byte;
Akar,Bagi : Word;
Begin
Writeln(Upper('Bilangan Prima dari 1 s/d 100');
Writeln(Replicate('-',30);
For I := 1 To 100 do
If (Bil > 1 And Bil < 4) Then
Write(I : 4)
Else
Begin
Akar := Round(Sqrt(Bil));
Bagi := 3;
While (Bagi <= Akar) And (Bil Mod Bagi <> 0) Do
Bagi := Bagi + 1;
If Bagi > Akar Then
Write(I : 4);
End;
End.
F.
Pemecahan Masalah
Buatlah algoritma program dan flow chart dari permasalahan mengisi
gelas dengan air dari keran.
Algoritma Program
Step 1 : Letakkan gelasdi bawah keran
Step 2 : Hidupkan air
Step 3 : lihat gelas
Step 4 : Apakah sudah penuh?
Step 5 : Jika tidak kembali ke step 3 (Untuk keadaan lain teruskan ke
Step 6)
Step 6 : Matikan air
Step 7 : Pindahkan gelas dari bawah keran
Disusun oleh
Yuniawati, S.Pd
15
Flow Chart
Sekuen atau formula kerja yang digunakan untuk memecahkan
masalah pemrograman disebut Algoritma program. Programmer harus
menggunakan daftar urutan pekerjaan. Dalam kasus permasalahan
menyeberang jalan step.
perintah-perintah sederhana dapat dinyatakan sebagai berikut:
Step 1 : Berjalanlah ke sudut jalan dan berhenti
Step 2 : Lihat dan cermati lampu pengatur lalu lintas
Step 3 : Apakah pada arah anda lampu menyala hijau?
Step 4 : Jika lampu pada arah anda menyala merah, kembali ke Step 2
(Untuk keadaan lain teruskan ke Step 5)
Step
Step
Step
Step
Step
Step
Step
5:
6:
7:
8:
9:
10
11
Disusun oleh
Yuniawati, S.Pd
16
Disusun oleh
Yuniawati, S.Pd
17
TES FORMATIF
1.
2.
Algoritma
b.
Flowchart
c.
Program
3.
x2 = 16
b.
Nilai = 20 mA
c.
4.
5.
7.
8.
9.
10.
Disusun oleh
Yuniawati, S.Pd
18
NO
JOBSHEET
1
JUDUL
INSTRUKSI INPUT OUTPUT
MENGUASAI
PROSEDUR
PENYUSUNAN Tanggal :
ALGORITMA PEMROGRAMAN PASCAL
ELEKTRONIKA INDUSTRI SMKN 29
I. Tujuan Praktek
START
INPUT
Masukan alas
INPUT
Masukan Tinggi
PROSES
L = (a*t)/2
OUTPUT
Cetak Luas
Disusun oleh
Yuniawati, S.Pd
END
19
5.
Disusun oleh
Yuniawati, S.Pd
20
GOTOXY(2,8);WRITE
(MASUKAN TINGGI =);READLN(t);
L:=(a*t)/2;
GOTOXY(2,8);WRITELN(LUAS SEGITIGA =,L:5:2);
END.
6.
Jalankan program Ctrl+F9. Jika program
masih salah
diperbaiki, jika sudah success berhasil.
7.
Untuk melihat hasil ALT+F5
VI. Hasil Pengujian dan Pengamatan
Tulis hasil pengamatan di layar monitor
VII. Pertanyaan dan Tugas
Buat algoritma, flowchart dan program serta hasil program
1.
Menghitung luas dan keliling lingkaran
2.
Menghitung luas trapesium
3.
Menghitung volume kerucut
VIII. Kesimpulan
Buat kesimpulan
Disusun oleh
Yuniawati, S.Pd
21
NO
JOBSHEET
2
JUDUL
INSTRUKSI PERCABANGAN
Statemen IF
MENGUASAI
PROSEDUR
PENYUSUNAN
ALGORITMA PEMROGRAMAN PASCAL
ELEKTRONIKA INDUSTRI SMKN 29
Tanggal :
I. Tujuan Praktek
START
INPUT
Masukan
nilai
Nilai
>60
Disusun oleh
Yuniawati, S.Pd
22
OUTPUT
Cetak LULUS
OUTPUT
Cetak GAGAL
Y
END
V. Langkah Kerja
1. Siapkan computer dalam posisi ON
2. Instal computer dengan program PASCAL, Copy folder BORLAND
TURBO PASCAL ke C atau D. Buka folder tesebut, Instalisasi enter
4 kali.
3. Buka ditempat kita install missal C, TP, BIN, TURBO.EXE
4. Atau
Melalui : Start / Program / Turbo Pascal 7 / *
PROGRAM SELEKSI_IF_1;
USES CRT;
VAR
nilai : Real;
Ket : String[5];
Begin
CLRSCR;
TEXTCOLOR(9);
TEXTBACKGROUND(10);
GOTOXY(5,6); WRITELN(LAPORAN NILAI SISWA);
GOTOXY(5,7); WRITELN(=====================);
GOTOXY(2,8);WRITE
(MASUKAN NILAI =);READLN(nilai);
If nilai > 60 Then Ket:= Lulus Else Ket :=Gagal;
GOTOXY(2,10);WRITELN(Keterangannya =,Ket);
END.
PROGRAM SELEKSI_IF_2;
USES CRT;
VAR
nilai : Real;
Grade : Char;
BEGIN
CLRSCR;
Disusun oleh
Yuniawati, S.Pd
23
TEXTCOLOR(9);
TEXTBACKGROUND(10);
GOTOXY(5,6); WRITELN(LAPORAN NILAI SISWA);
GOTOXY(5,7); WRITELN(=====================);
GOTOXY(2,8);WRITE
(MASUKAN NILAI =);READLN(nilai);
If nilai > 90 Then Grade :=A
Else If nilai > 75 Then Grade :=B
Else If nilai > 60 Then Grade :=C
Else If nilai > 40 Then Grade :=D
Else Grade:=E;
GOTOXY(2,10);WRITELN(Keterangannya =,Grade);
END.
6. Jalankan program Ctrl+F9. Jika program masih salah diperbaiki,
jika sudah success berhasil.
7. Untuk melihat hasil ALT+F5
VI. Hasil Pengujian dan Pengamatan
Tulis hasil pengamatan di layar monitor
VII. Pertanyaan dan Tugas
Buat algoritma, flowchart dan program serta hasil program
1. Menentukan besar harga yang harus dibayar jika toko tersebut
memberi diskon 12% untuk harga lebih dari 180.000
2. Menentukan bilangan biner dari suatu bilangan desimal
3. Menghitung nilai siswa berdasarkan
a. Kehadiran 10%
c. UTS 30%
b. UAS 40%
d. Tugas 20%
Untuk nilai lebih dari atau sama dengan 80 = A
Untuk nilai lebih dari atau samadengan 60 = B
Untuk nilai lebih dari atau samadengan 50 = C
Untuk nilai lebih dari atau samadengan 40 = D
Untuk nilai lebih dari atau samadengan 30 = E
4. Menentukan akar persamaan kuadrat y = ax 2 + bx + c jika a, b
dan c diketahui,INPUT. OUTPUT D.Jika akar persamaan berbeda
D>0, Jika akar persamaan sama D=0, Jika akar persamaan tidak
real D<0.
5. Menentukan keterangan umur/usia
age < 2 ==> "You are a baby !"
* 2 to age < 12 ==> "You are a kid !"
* 12 to age < 18 ==> "You are a teenager !"
* 18 to age < 24 ==> "You are a young adult !"
* 24 to age < 40 ==> "You are an adult !"
* 40 to age < 55 ==> "You are middle aged !"
* 55 to age < 65 ==> (OLD OR Give comments yourself)
* age to 65 ==> LANJUT USIA/MANULA
VIII. Kesimpulan
Buat kesimpulan
Disusun oleh
Yuniawati, S.Pd
24
NO
JOBSHEET
3
JUDUL
INSTRUKSI PERCABANGAN
Statemen Case-Of
MENGUASAI
PROSEDUR
PENYUSUNAN
ALGORITMA PEMROGRAMAN PASCAL
ELEKTRONIKA INDUSTRI SMKN 29
Tanggal :
I. Tujuan Praktek
1 set
1 buah
START
INPUT
INPUT
Masukan
jaket
Disusun oleh
Yuniawati, S.Pd
banyak
25
Ukuran
Jaket
OUTPUT
Cetak GAGAL
END
V. Langkah Kerja
1. Siapkan computer dalam posisi ON
2. Instal computer dengan program PASCAL, Copy folder BORLAND
TURBO PASCAL ke C atau D. Buka folder tesebut, Instalisasi enter
4 kali.
3. Buka ditempat kita install missal C, TP, BIN, TURBO.EXE
4. Atau
Melalui : Start / Program / Turbo Pascal 7 / *
PROGRAM CASE_1;
USES CRT;
VAR
UKURAN :CHAR;
BANYAK:INTEGER;
HARGA, JUMLAH :REAL;
BEGIN
CLRSCR;
TEXTCOLOR(9);
TEXTBACKGROUND(10);
GOTOXY(5,6); WRITELN(JUMLAH HARGA SEPATU);
GOTOXY(5,7); WRITELN(=====================);
GOTOXY(2,8);WRITE(UKURANJAKET(S/M/L:);
READLN(UKURAN);
GOTOXY(2,9);WRITE(BANYAK JAKET:);READLN(BANYAK);
Disusun oleh
Yuniawati, S.Pd
26
CASE UKURAN OF
S:HARGA:= 50000;
M:HARGA:= 60000;
L:HARGA:= 70000;
END;
JUMLAH:=BANYAK*HARGA;
GOTOXY(2,10);WRITELN(JUMLAH DIBAYAR:Rp.,JUMLAH:8:0);
END.
6. Jalankan program Ctrl+F9. Jika program masih salah diperbaiki,
jika sudah success berhasil.
7. Untuk melihat hasil ALT+F5
VI. Hasil Pengujian dan Pengamatan
Tulis hasil pengamatan di layar monitor
VII. Pertanyaan dan Tugas
Buat algoritma, flowchart dan program serta hasil program
1. Menghitung Jumlah harga blouse berdasarkan ukuran dan
banyak
a. S harga Rp. 45.000
b. M harga Rp. 75.000
c. L harga Rp. 100.000
2. Menentukan grade siswa dengan ketentuan Case mark of
80..100: grade:='A';
70..79 : grade:='B';
60..69 : grade:='C';
50..59 : grade:='D';
Else grade:='E';
End;
VIII. Kesimpulan
Buat kesimpulan
Disusun oleh
Yuniawati, S.Pd
27
NO
JOBSHEET
4
JUDUL
INSTRUKSI PERULANGAN
LOOPING
MENGUASAI
PROSEDUR
PENYUSUNAN
ALGORITMA PEMROGRAMAN PASCAL
ELEKTRONIKA INDUSTRI SMKN 29
Tanggal :
I. Tujuan Praktek
1 set
1 buah
START
INPUT
Masukan I
I <=5
Disusun oleh
Yuniawati, S.Pd
28
OUTPUT
Cetak PASCAL
END
V. Langkah Kerja
1.
Siapkan computer dalam posisi ON
2.
Instal computer dengan program PASCAL, Copy
folder BORLAND TURBO PASCAL ke C atau D. Buka folder tesebut,
Instalisasi enter 4 kali.
3.
Buka ditempat kita install missal C, TP, BIN,
TURBO.EXE
4.
Atau
Melalui : Start / Program / Turbo Pascal 7 / *
5.
Disusun oleh
Yuniawati, S.Pd
29
BEGIN
CLRSCR;
TEXTCOLOR(9);
TEXTBACKGROUND(10);
FOR I:= 5 TO 1 DO WRITELN (PASCAL);
END.
Uses Crt;
Var
a,b,c : Integer;
bagi : Real;
Begin
Writeln('----------------------------------------------');
Writeln(' a a*a a*a*a 1/a ');
Writeln('----------------------------------------------');
For a := 1 To 10 Do
Begin
b:= a*a;
c:=a*a*a;
bagi := 1/a;
Writeln(a:4,c:10,d:10,bagi:12:3);
End;
Writeln ('----------------------------------------------');
Repeat Until
PROGRAM PERULANGAN_REPEAT ;
USES CRT;
VAR
I :INTEGER;
BEGIN
CLRSCR;
TEXTCOLOR(9);
TEXTBACKGROUND(10);
I:=0;
REPEAT
Disusun oleh
Yuniawati, S.Pd
30
I :=I +1;
WRITELN (I);
UNTIL I:= 5;
END.
8. Jalankan program Ctrl+F9. Jika program masih salah diperbaiki,
jika sudah success berhasil.
9. Untuk melihat hasil ALT+F5
VI. Hasil Pengujian dan Pengamatan
Tulis hasil pengamatan di layar monitor
VII. Pertanyaan dan Tugas
1. Buat algoritma, flowchart dan program serta hasil program
Mencetak tulisan 1. Jurusan Elektronika Industri sebanyak 5 baris
6. SMKN 29 Jakarta sebanyak 6 baris
2. Untuk menghitung konversi suhu.dari Celcius menjadi Reamur dan
Farenheit Untuk input mulai 10 - 100.
Input: suhu dalam Celcius
Proses: R = 4/5 * C dan F = 9/5 * C + 32
Output: suhu dalam Reamur dan Farenheit
3.
Untuk menghitung pangkat
4.
Untuk menghitung deret aritmatika 2+4+6+....+N
5.
Untuk menghitung faktorial
VIII. Kesimpulan
Buat kesimpulan
NO
JOBSHEET
5
Disusun oleh
Yuniawati, S.Pd
JUDUL
INSTRUKSI ARRAY
31
MENGUASAI
PROSEDUR
PENYUSUNAN
ALGORITMA PEMROGRAMAN PASCAL
ELEKTRONIKA INDUSTRI SMKN 29
Tanggal :
I. Tujuan Praktek
1 set
1 buah
START
INPUT
Masukan I
I <=20
OUTPUT
Cetak NILAI KE I
OUTPUT
Cetak NILAI PRAKTIK
END
Disusun oleh
Yuniawati, S.Pd
32
V. Langkah Kerja
1.
Siapkan computer dalam posisi ON
2.
Instal computer dengan program PASCAL, Copy
folder BORLAND TURBO PASCAL ke C atau D. Buka folder tesebut,
Instalisasi enter 4 kali.
3.
Buka ditempat kita install missal C, TP, BIN,
TURBO.EXE
4.
Atau
Melalui : Start / Program / Turbo Pascal 7 / *
5.
Disusun oleh
Yuniawati, S.Pd
33
MATRIK[2,1]:= -76;
MATRIK[3,1]:= 8;
MATRIK[1,2]:= -1;
MATRIK[2,2]:= 11;
MATRIK[3,3]:= 18;
FOR I:=1 TO3 DO
BEGIN
FOR J:=1 TO 2 DO
WRITE (MATRIK[I,J] :5);
WRITELN;
END;
READLN;
END.
10.Jalankan program Ctrl+F9. Jika program masih salah diperbaiki,
jika sudah success berhasil.
11.Untuk melihat hasil ALT+F5
VI. Hasil Pengujian dan Pengamatan
Tulis hasil pengamatan di layar monitor
VII. Pertanyaan dan Tugas
Buat algoritma, flowchart dan program serta hasil program
Mencetak tulisan 1.
Siswa ke 1 :
Nama siswa :
Nilai
:
Data siswa sebanyak 10, Nama siswa, Nilai diisi
6. Matrik
32
-15
-1/5
-27
20
38
18
26
-29
VIII. Kesimpulan
Buat kesimpulan
NO
JOBSHEET
6
JUDUL
INSTRUKSI
PROSEDUR DAN FUNGSI
MENGUASAI
PROSEDUR
PENYUSUNAN
ALGORITMA PEMROGRAMAN PASCAL
ELEKTRONIKA INDUSTRI SMKN 29
Disusun oleh
Yuniawati, S.Pd
Tanggal :
34
I. Tujuan Praktek
1 set
1 buah
START
INPUT
A
PROSES
B := A * A
OUTPUT
Cetak B
Disusun oleh
Yuniawati, S.Pd
35
END
V. Langkah Kerja
1.
Pemanggilan secara nilai (by value)
2.
Siapkan computer dalam posisi ON
3.
Instal computer dengan program PASCAL, Copy folder
BORLAND TURBO PASCAL ke C atau D. Buka folder tesebut,
Instalisasi enter 4 kali.
4.
Atau
Melalui : Start / Program / Turbo Pascal 7 / *
5.
6.
Program Prosedur
Prosedure Kali;
USES CRT;
VAR
A, B : Byte
BEGIN
CLRSCR;
TEXTCOLOR(9);
TEXTBACKGROUND(10);
WRITE (isi nilainya :); READLN(A);
B :=A * A
END;
BEGIN
KALI;
WRITELN (NILAI B=,B);
END.
Disusun oleh
Yuniawati, S.Pd
36
A, B, C : BYTE;
BEGIN
A:=5; B:=7; C:= 3;
HITUNG (A, B, C);
WRITELN (NILAI A=,A,NILAI B=,B,NILAI C=,C);
READLN;
END.
Program fungsi
Function Kali : Byte;
USES CRT;
VAR
A, B : Byte
BEGIN
CLRSCR;
TEXTCOLOR(9);
TEXTBACKGROUND(10);
WRITE (isi nilainya :); READLN(A);
B :=A * A
END;
BEGIN
KALI;
WRITELN (NILAI B=,B);
END.
Program Pemanggilan Fungsi
Function Hitung (Var X, Y, Z : Byte): Byte;
USES CRT;
BEGIN
CLRSCR;
Z:= X + Y
WRITELN (NILAI X =, X);
WRITELN (NILAI Y =, Y);
WRITELN (NILAI Z =, Z);
END;
VAR
A, B, C : BYTE;
BEGIN
A:=5; B:=7; C:= 3;
HITUNG (A, B, C);
WRITELN (NILAI A=,A,NILAI B=,B,NILAI C=,C);
READLN;
END.
Disusun oleh
Yuniawati, S.Pd
37
Disusun oleh
Yuniawati, S.Pd
38
2.
3.
4.
5.
Menghitung phitagoras
Menghitung Konsumsi daya listrik
Konversi bilangan
Menentukan hari dan tanggal
VIII. Kesimpulan
Buat kesimpulan
Disusun oleh
Yuniawati, S.Pd
39
Disusun oleh
Yuniawati, S.Pd
40
Disusun oleh
Yuniawati, S.Pd
41
Disusun oleh
Yuniawati, S.Pd
42
Disusun oleh
Yuniawati, S.Pd
43
Disusun oleh
Yuniawati, S.Pd
44
Disusun oleh
Yuniawati, S.Pd
45
Disusun oleh
Yuniawati, S.Pd
46
TES FORMATIF
Buat algoritma, flowchart dan program pascal untuk :
1.
2.
Menghitung y = x2 x 6?
3.
4.
5.
6.
7.
8.
9.
Menentukan tampilan
*
**
***
****
*****
******
Menentukan tampilan
#######
######
#####
####
###
##
#
10.
BAB III
Disusun oleh
Yuniawati, S.Pd
47
MIKROPROSESSOR DAN
MIKROKONTROLLER
Kompetensi Dasar
A.
: 1. Mengidentifikasi
Arsitektur
Mikroprosessor dan Mikrokontroller
PENGERTIAN
MIKROPROSESSOR
DAN
MIKROKONTROLLER
1.
Mikroprosesor
Adalah suatu chip (IC=Integrated Circuits) yang di dalamnya
terkandung rangkaian ALU (Arithmetic-Logic Unit), rangkaian CU
(Control Unit) dan register-register. Mikroprosesor disebut juga
dengan CPU (Central Processing Unit).ALU: menyediakan fungsi
pengolahan.
CU: mengontrol fungsi prosesor.
Register: tempat penyimpanan sementara dalam mikroprosesor.
Suatu sistem yang menggunakan mikroprosesor sebagai
komponen utama disebut sistem mikroprosesor. Pada umumnya,
sistem mikroprosesor terdiri dari Central Processing Unit (CPU),
memori (ROM dan RAM) dan unit Unit Input Output I/O termasuk
interface.
Sifat mikroprosesor yang dapat diprogram dan sangat
fleksibel untuk pemakai dalam suatu sistem. Karena pemakaiannya
yang memberikan banyak keuntungan, maka tidaklah heran jika
saat ini aplikasi Mikroprosesor telah dipakai dalam berbagai bidang
seperti :
Informatika : Personal computer, Main Frame, Periperal I/O dll
Industri : berbagai system control industri, perangkat bantu
mesin-mesin industri/proses.
Transportasi : Traffic light, system pengatur perjalanan KA
Pendidikan : teaching aids, microprosesor
evaluation and
development systems.
Kedokteran : peralatan bantu jenis diagnosa, terapi &
rehabilitasi
Telekomunikasi : berbagai jenis produk telekomunikasi seperti
macam-macam pesawat telepon, mesin fax, modem, telepon
genggam, auto dialer.
Peralatan kantor : kalkulator, organizer, mesin foto copy, mesinmesin ATM, berbagai jenis memori card & smart card
Hiburan : pemilih channel televise terprogram rumah tangga.
2.
Mikrokontroller
Adalah chip yang di dalamnya terkandung sistim interkoneksi
antara mikroprosesor, RAM, ROM, I/O interface dan beberapa
Disusun oleh
Yuniawati, S.Pd
48
B.
PERBEDAAN
MIKROPROSESSOR
DAN
MIKROKONTROLLER
Sekilas mikrokontroler hampir sama dengan mikroprosesor,
namun terdapat perbedaan di antara keduanya yakni :
1. Ditinjau dari segi arsitekturnya, mikroprosesor hanya merupakan
single chip CPU, sedangkan mikrokontroler merupakan complete
chip di mana di dalam IC-nya terdapat ROM, RAM, EPROM,
serial/paralel interface, timer, interrupt, dalan lainnya.
2. Pada sistem komputer perbandingan RAM dan ROM-nya besar,
artinya program-program pengguna disimpan dalam RAM yang
relatif besar, sedangkan rutin-rutin antarmuka perangkat keras
disimpan dalam ruang ROM yang kecil. Sebaliknya pada
mikrokontroler, perbandingan ROM dan RAM-nya yang besar,
artinya program kontrol disimpan dalam ROM yang ukurannya
relatif lebih besar, sedangkan RAM digunakan sebagai tempat
penyimpanan sementara.
3. Pada aplikasinya, mikroprosesor hanya berfungsi sebagai CPU
(central processing unit) yang menjadi otak komputer, sedangkan
mikrokontroler pada umumnya digunakan untuk melaksanakan
tugas-tugas yang berorientasi kontrol pada rangkaian yang
membutuhkan jumlah komponen minimum dan biaya rendah.
C.
JENIS
MIKROKONTROLLER
JENIS
MIKROPROSESSOR
DAN
Disusun oleh
Yuniawati, S.Pd
49
Disusun oleh
Yuniawati, S.Pd
50
Disusun oleh
Yuniawati, S.Pd
51
menggunakan port paralel atau serial. Selain itu, mikrokontroler ini dapat
beroperasi hanya dengan satu chip dan beberapa komponen dasar,
seperti resistor, kapasitor dan kristal. Berikut ini diberikan contoh
beberapa tipe mikrokontroler ATMEL beserta fitur dan kelengkapannya..
Tabel 1.2. Tipe-tipe Mikrokontroler ATMEL
b. Mikrokontroler PIC
Mikrokontroler PIC (Peripheral Interface Controller) merupakan
keluarga mikrokontroler tipe RISC (Reduce Instruction Set Programs) yang
diproduksi oleh Microchip (www.microchip.com). Mikrokontroler PIC dibuat
pertama kali pada tahun 1975 untuk meningkatkan kinerja sistem pada
I/O. Masing-masing mikrokontroler memiliki kekhasan yang berbeda dalam
hal jenis memori yang digunakan, ada yang menggunakan EEPROM, ada
yang menggunakan Flash memori, bahkan ada yang menggunakan OTP
(One Time Programmable) atau memori sekali program.
c. Mikrokontroler Maxim
Mikrokontroler Maxim diproduksi oleh Maxim corp yang merupakan
salah satu produsen chip yang fokus pada komponen digital dan
komunikasi (www.maximic. com). Produknya adalah chip mikrokontroler,
akuisisi data dan komponen radio frekuensi. Maxim merupakan produsen
yang cukup inovatif dalam melahirkan produk-produk berteknologi tinggi,
misalnya mikrokontroler 80C400 kecepatan tinggi yang mendukung
jaringan komputer (computer networking). Beberapa chip mikrokontroler
Maxim juga mendukung penggunaan perangkat lunak compiler berbasis
bahasa C, diantaranya : Keil-C sebagai compiler C, macro assemblers, real
time kernels, debuggers dan simulator di lingkungan IDE (Interface Design
Environmet).
d. Mikrokontroler Renesas
Renesas merupakan produsen semikonduktor gabungan antara
Mitsubishi dan Hitachi. Salah satu produk mikrokontroler Renesas yang
dikenal adalah R8C/Tiny Series yang termasuk keluarga M16C dan
mempunyai beberapa seri antara lain R8C/10, R8C/12, yang berbeda
kapasitas flash ROM dan jumlah pin I/O.
Disusun oleh
Yuniawati, S.Pd
52
D.
ARISTEKTUR MIKROPROSESSOR
Blok sistem mikroprosesor
Data Bus
motor
sensor
Clock
Generator
CPU
Z 80
ROM
RAM
PPI
PIO
monitor
dll
Adress Bus
fgy
Control Bus
Gambar 3 Blok Sistem Mikroprosessor
Fungsi dari masing-masing blok tersebut
Clock Generator
Berfungsi sebagai master timer bagi sistem mikroprosesor
CPU
Disusun oleh
Yuniawati, S.Pd
53
Spesial
Purpose
Register
Alternate
Register
A
A
F
Accumulat
Flag
or
B
C
B
D
E
D
Interupt
Memory
H
L
H
Vektor
Refresh
I
R
Index Register (IX)
Index Register (IY)
Stack Pointer (SP)
Program Counter (PC)
F
C
E
L
Disusun oleh
Yuniawati, S.Pd
54
Disusun oleh
Yuniawati, S.Pd
55
Disusun oleh
Yuniawati, S.Pd
56
Disusun oleh
Yuniawati, S.Pd
57
Disusun oleh
Yuniawati, S.Pd
58
Disusun oleh
Yuniawati, S.Pd
59
Disusun oleh
Yuniawati, S.Pd
60
Disusun oleh
Yuniawati, S.Pd
61
Disusun oleh
Yuniawati, S.Pd
62
Disusun oleh
Yuniawati, S.Pd
63
ARSITEKTUR MIKROKONTROLLER
Disusun oleh
Yuniawati, S.Pd
64
Port 0
Merupakan port yang memiliki dua kegunaan (dual-purpose port). Pada
desain yang minimum (sederhana) digunakan sebagai port I/O
(Input/Output). Pada desain yang lebih lanjut pada perancangan
dengan memori eksternal digunakan sebagai data dan alamat yang dimultiplex. Port 0 terdapat pada pin 32-39
Port 1
Disusun oleh
Yuniawati, S.Pd
65
Merupakan port yang hanya berfungsi sebagai port I/O, kecuali pada IC
8032/8052 yang menggunakan P1.0 dan P1.1 sebagai input eksternal
untuk timer ketiga (T3). Port 1 terdapat pada pin 1 8.
Port 2
Merupakan dual-purpose port. Pada desain minimum digunakan
sebagai port I/O. pada desain lebih lanjut digunakan sebagai high byte
dari alamat (address). Port 2 terdapat pada pin 21-28.
Port 3
Merupakan dual-purpose port. Selain sebagai port I/O juga
mempunyai fungsi khusus yang ditunjukkan pada tabel 1 di bawah ini.
ALTERNATE FUNCTIONS
RXD (serial input port)
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7
Disusun oleh
Yuniawati, S.Pd
66
On-Chip Oscillator
AT89C51 memiliki on-chip oscillator yang dapat bekerja jika di-drive
menggunakan
kristal.
Tambahan
kapasitor
diperlukan
untuk
menstabilkan sistem. Nilai kristal yang biasa digunakan pada keluarga
AT89C51 adalah 12 MHz walaupun pada jenis 80C31BH-1 dapat
menggunakan kristal dengan menggunakan frekuensi sampai dengan
16 MHz.
Koneksi Power
AT89C51 beroperasi pada tegangan 5 Volt. Pin Vcc terdapat pada pin
40 sedangkan Vss (GND) terdapat pada pin 20.
Disusun oleh
Yuniawati, S.Pd
67
TES FORMATIF
1.
2.
3.
4.
Disusun oleh
Yuniawati, S.Pd
68
BAB III
PEMOGRAMAN SISTEM
MIKROPROSESSOR
Kompetensi Dasar
Mikroprosessor
: 3. Mampu
Memprogram
Sistem
A.
Z 80 SIMULATOR
Cara Aplikasi Mikroprosessor Z 80
File Menu:
Clear Memory, meng-clear isi memori, seluruh lokasi memori diisi
dengan NOP (00H)
Load Program, memasukan program ke dalam memori. Program
harus dalam format file HEX intel atau binary (OBJ) dengan panjang
maksimum 64Kbyte.
Tampilan Z 80 simulator
Disusun oleh
Yuniawati, S.Pd
69
Disusun oleh
Yuniawati, S.Pd
70
Disusun oleh
Yuniawati, S.Pd
71
NO
JOBSHEET
7
JUDUL
PENGOPERASIAN MPF-I
Tanggal :
I. Tujuan Praktek
Langkah Kerja
Setelah power di-on-kan maka pada display akan terlihat P F-I
1.
Tekan ADDR
2.
Tekan 1800H karena RAM mulai address pada lokasi 1800H,
angka akan muncul pada address field (empat digit dari kiri)
atau tekan key PC.
Format display untuk address
1
3.
4.
0 0
Disusun oleh
Yuniawati, S.Pd
72
5.
Disusun oleh
Yuniawati, S.Pd
73
NO
JOBSHEET
8
JUDUL
PENGOPERASIAN Z 80
SIMULATOR
Tanggal :
I. Tujuan Praktek
Disusun oleh
Yuniawati, S.Pd
74
W.
1.
2.
Bari
s
001
002
003
004
005
Langkah Kerja
Buka program Z80 simulator.
Pada menu utama Z80 simulator, buka di Tools,
Assembler. Mulai pada baris 001 ketik program di bawah ini
dengan menggunakan tab. Masukkan program dibawah ini :
Label
Alamat Kode Program Mnemo
Keterangan
(Hex)
Op-Code (Hex)
nik
LD A, 20
LD B, 2F
LD C, 37
LD D, 34
LD E, 4C
3.
Disusun oleh
Yuniawati, S.Pd
75
B.
SISTEM PENGALAMATAN
Kejelasan yang sistimatik tentang cara pengalamatan sangat
penting pada pengolahan data dalam jenis prosesor yang baru, sebab
program yang disusun tanpa penggunaan pengalamatan yang pasti,
maka
program
tersebut
menjadi
kurang
efektif
dalam
penganalisaannya. Semakin panjang kode operasi sebuah perintah,
maka dapat juga dikombinasikan banyak cara pengalamatan. Ada 4
cara yaitu :
1)
Immediate (Segera)
Kode mesin mengandung konstanta untuk segera/langsung diakses.
Kode operasi hanya dapat mengandung satu petunjuk tentang
panjang dari operan yang mengikutinya. Selain itu bagian alamat
masih harus mengandung sebuah keterangan tentang tujuan
dimana konstanta harus dihubungkan kepadanya.
Contoh :
LD HL, 1234H
ADD A, 12H
LD (HL), 12H
JP, 0916H
2)
Direct (Langsung)
Disini kode mesin mengandung sebuah atau lebih alamat-alamat
yang kemudian isi dari alamat-alamat ini akan diakses lebih lanjut.
Panjang alamat-alamat ini berbeda menurut keadaan, apakah itu
mengenai sebuah register, alamat penyimpan atau alamat
masukan/keluaran, perintah dapat mengandung sebuah petunjuk,
apakah bagian pertama diberikan sebagai alamat tujuan atau
sumber.
Contoh :
LD A, (1234)
LD E, C
OUT (20H), A
JP, (IX)
3)
Indirect (Tidak langsung)
Kode mesin mengandung sebuah petunjuk, dimana cara untuk
mendapatkan alamat dari operan yang akan diakses. Petunjuk
Disusun oleh
Yuniawati, S.Pd
76
dapat terjadi pada sebuah Register CPU atau pada sebuah lokasi
penyimpan dan disana alamat efektif akan didapatkan untuk semua
pengalamatan secara tidak langsung dengan Register, memberikan
kode mesin yang pendek.
Contoh :
PUSH dan POP menaikkan atau menurunkan Register alamat yang
dipkai secara otomatis dan terjadi apakah sebelum atau sesudah
pelaksanaan perintahnya.
Pengalamatan tidak langsung dibagi menjadi :
Pengalamatan tidak langsung dengan register
Auto Increment
Auto Decrement
4)
Terindeks
C.
Pembentukan
alamat
melalui
penyusunan
Disini alamat efektif disusun dari beberapa bagian yang mana
bagian-bagian ini dapat berasal dari register-register CPU,
Regsiter masukan/keluaran atau dari lokasi penyimpan
Contoh : RST 5
Pembentukan alamat
melalui
pennambahan
Disini alamat efektif disusun dari beberapa bagian yang mana
bagian-bagian dapat berasal dari Register-register CPU, Register
register masukan/keluaran dari lokasi penyimpan
Contoh :
LD E, (IX+12)
JR 12H
INSTRUKSI TRANSFER DATA
Disusun oleh
Yuniawati, S.Pd
Kode
1
0
0
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
77
Format instruksi
Op Code
Operand tujuan
,
1. Register
register
LD R, R
Contoh LD A, B
2. Register
LD B, A
Operand asal
0
N
N
.
LD (HL), R
register
Menyalin isi register
beralamat HL
ke
memori
yang
LD (HL), B= 01110000 = 70
Disusun oleh
Yuniawati, S.Pd
78
ke
memori
yang
ke
memori
yang
LD (IX+4H), A = DD 77 04
LD (IY+d), RMenyalin isi register
beralamat IY+d
LD (IY+60), A = FF 77 60
5. Memori
memori
LD A,(BC) OA
Transfer data dari akumulator ke memori
LD (BC), A
JOBSHEET
9
02
JUDUL
INSTRUKSI TRANSFER DATA Z80
DENGAN Z80 SIMULATOR
Tanggal :
I. Tujuan Praktek
Op Code
Operand tujuan
Operand asal
,
Disusun oleh
Yuniawati, S.Pd
79
B
C
D
E
H
L
0
0
0
0
1
1
0
0
1
1
0
0
0
1
0
1
0
1
Format instruksi
Op Code
,
Operand tujuan
1. Register
register
2. Register
memori
3. Register
data
4. Memori
register
5. Memori
memori
6. Memori
data
III.
Operand asal
Disusun oleh
Yuniawati, S.Pd
80
6.
b. Program
Baris
Label
Alama
t
(Hex)
Kode
Program
Op-Code
(Hex)
Mnemonik
Keterangan
Masalah 2
Menyalin isi register D dan E ke alamat penyimpan data (RAM) alamat
1A00H dan 1A01H.
Register D = 0E H
Register E = 54 H
Penyelesaian :
a. Algoritma
Mengisi Register D dengan data 0EH =
Mengisi Register E dengan data 54H =
Mengisi Register HL dengan data 1A00H =
Memindahkan D ke isi alamat 1A00H=
Mengisi Register HL dengan data 1A01H =
Memindahkan E ke isi alamat 1A01H=
b. Program
Baris
Label
Alama
Kode
Mnemonik
Keterangan
t
Program
(Hex)
Op-Code
(Hex)
Disusun oleh
Yuniawati, S.Pd
81
c. Hasil
Register
B=..........................C=.........................
Alamat 1A00 H=..........................
Alamat 1A01 H=...........................
Masalah 3
Mengisi lokasi penyimpan data (RAM) yang alamatnya 1910 dengan
data 56H dan 1911H dengan data 78H. Menyalin isi lokasi RAM alamat
1910H dan 1911H ke register B dan C.
Program dimulai pada alamat 1C00H
Penyelesaian :
a. Algoritma
b. Program
Baris
Label
Alamat Kode Program
Mnemonik
Keterangan
(Hex)
Op-Code (Hex)
c. Hasil
Alamat RAM 1910 H=..........................
Alamat RAM 1911 H=...........................
Register D=..........................
E=........................................
Masalah 4
Mengisi alamat penyimpan data RAM 1B00H dengan data AAH.
Menyalin isi penyimpan
data RAM alamat 1B00H ke alamat 1BFFH melalui akumulator.
Program dimulai pada alamat 1C00H
Penyelesaian :
a. ALgoritma
b. Program
Label
Alamat
Kode Program
Mnemonik
Keterangan
(Hex)
Op-Code (Hex)
c. Hasil
Alamat RAM 1B00 H=..........................
Alamat RAM 1BFF H=...........................
Isi akumulator = ........................................
Masalah 5
Mengisi lokasi RAM alamat 1E05H, 1E06H, 1E07H, masing-masing
dengan data 01H, 02H, dan 03H. Pengisian diatas memepergunakan
pengalamatan terindeks dengan alamat offset 1E00H.
Program dimulai pada alamat 1D00H
Disusun oleh
Yuniawati, S.Pd
82
Penyelesaian :
a. Algoritma
b. Program
Label
Alamat
(Hex)
Kode Program
Op-Code (Hex)
Mnemonik
Keterangan
c. Hasil
Alamat RAM 1E05 H=..........................
Alamat RAM 1E06 H=...........................
Alamat RAM 1E07 H= ..........................
VIII. Kesimpulan
Buat kesimpulan
D.
INSTRUKSI ARITMATIKA
Operasi ini mempunyai form seperti di bawah ini :
1.
Register dengan register CPU A, B, C, D, E, H, L
ADD A,r
Tambahkan isi r dengan A lalu simpan di A (A=A+ r )
1
0
0
0
0
.
.
.
ADC A,r
Tambahkan isi r dengan A lalu simpan di A (A=A+ r+ C )
1
0
0
0
1
.
.
.
SUB r
Tambahkan isi r dengan A lalu simpan di A (A=A- r )
1
0
0
1
0
.
.
.
SBC A,r
Tambahkan isi r dengan A lalu simpan di A (A=A- r - C )
1
0
0
1
1
.
.
.
2.
Konstanta 8 bit
ADD A, n (A = A + n)
1
1
0
0
0
1
1
0
SUB n
(A =A n)
1
1
0
1
0
1
1
0
ADC A, n ( A = A + n + C)
1
1
0
0
1
1
1
0
SBC A, n (A = A n C)
Disusun oleh
Yuniawati, S.Pd
83
1
1
0
1
1
1
3.
Register tidak langsung
ADD A, (HL)
SUB (HL)
ADC A, (HL)
SBC A, (HL)
4.
Indeks Offset
ADD A, (IX+e)
ADD A, (IY+e)
SUB (IX + e)
SUB (IY+e)
ADC A, (IX + e)
ADC A, (IY+e)
SBC A, (IX + e)
SBC A, (IY+e)
Disusun oleh
Yuniawati, S.Pd
84
NO
JOBSHEET
10
JUDUL
INSTRUKSI ARITMATIKA
DENGAN Z80 SIMULATOR
Tanggal :
I. Tujuan Praktek
ADD A, n (A = A + n)
SUB n
(A =A n)
ADC A, n ( A = A + n + C)
SBC A, n (A = A n C)
3.
Register tidak langsung
ADD A, (HL)
Disusun oleh
Yuniawati, S.Pd
85
SUB (HL)
ADC A, (HL)
SBC A, (HL)
4.
Indeks Offset
ADD A, (IX+e)
SUB (IX + e)
ADC A, (IX + e)
SBC A, (IX + e)
ADD A, (IY+e)
SUB (IY+e)
ADC A, (IY+e)
SBC A, (IY+e)
1 set
1 buah
Label
Alamat
(Hex)
Kode Program
Op-Code (Hex)
Mnemonik
Keterangan
LD B, 09H
LD A,B
LD E, 2AH
ADD A,E
LD C,A
3.
Disusun oleh
Yuniawati, S.Pd
86
c. Hasil
Register
A=.................C=...................
B=.........................
D=..................
Alamat 100C H=..........................
Alamat 100E H=...........................
Masalah2
Sama seperti masalah 1 tetapi kurangkan
Masalah 3
Mengisi data pada alamat 1503H dengan data 4AH.
Mengisi data pada alamat 1705H dengan data 2CH.
Mengisi data pada alamat 171BH dengan data 1EH
Tambahkan data pada alamat 1503 dengan data pada alamat 1705
simpan di register C
Tambahkan data pada alamat 1705H dengan data pada alamat
171BH simpan di alamat 140EH
Penyelesaian :
a. Algoritma
Mengisi register HL dengan data 1503H=
Mengisi data pada alamat 1503H dengan data 4AH.=
Mengisi register HL dengan data 1705H=
Mengisi data pada alamat 1705H dengan data 2CH. =
Mengsi register HL dengan data 171BH=
Mengisi data pada alamat 171BH dengan data 1EH=
Tambahkan data pada alamat 1503 dengan data pada alamat 1705
=
Hasil penjumlahan di akumulator simpan di register C=
Disusun oleh
Yuniawati, S.Pd
87
c. Hasil
Register
A=..........................C=.........................
Alamat 1503 H=..........................
Alamat 1705 H=...........................
Alamat 171B H=...........................
Masalah4
Sama seperti masalah 3 tetapi kurangkan
VIII. Kesimpulan
Buat kesimpulan
E.
INSTRUKSI LOGIKA
Operasi ini mempunyai form seperti di bawah ini :
1. Logika AND
Register
AND AA7
AND BA0
AND H
A4
Bilangan n (00 FF)
AND n EG
n
Memori (beralamat HL)
AND HL
A6
Memori beralamat indeks register)
AND (Ix+d)
DD
A6
d
AND (Iy+d)
FD
A6
d
2. Logika OR
Register
OR A
B7
OR B
B0
OR H
B4
Bilangan n (00 FF)
OR n
FG
n
Memori (beralamat HL)
Disusun oleh
Yuniawati, S.Pd
88
OR HL
B6
Memori beralamat indeks
OR (Ix+d)
DD
OR (Iy+d)
FD
3. Logika XOR
Register
XOR A AF
XOR B
A8
XOR HAC
Bilangan n (00 FF)
XOR n
EE
n
Memori (beralamat HL)
XOR HL
AE
Memori beralamat indeks
XOR (Ix+d)
DD
XOR (Iy+d)
FD
NO
JOBSHEET
11
register)
B6
d
B6
d
register)
AE
d
AE
d
JUDUL
INSTRUKSI LOGIKA
DENGAN Z80 SIMULATOR
Tanggal :
I. Tujuan Praktek
Disusun oleh
Yuniawati, S.Pd
89
AND HL
A6
Memori beralamat indeks
AND (Ix+d)
DD
AND (Iy+d)
FD
2. Logika OR
Register
OR A
B7
OR B
B0
OR H
B4
Bilangan n (00 FF)
OR n
FG
n
Memori (beralamat HL)
OR HL
B6
Memori beralamat indeks
OR (Ix+d)
DD
OR (Iy+d)
FD
3. Logika XOR
Register
XOR A AF
XOR B
A8
XOR HAC
Bilangan n (00 FF)
XOR n
EE
n
Memori (beralamat HL)
XOR HL
AE
Memori beralamat indeks
XOR (Ix+d)
DD
XOR (Iy+d)
FD
register)
A6
d
A6
d
register)
B6
d
B6
d
register)
AE
d
AE
d
1 set
1 buah
Disusun oleh
Yuniawati, S.Pd
90
3.
Keterangan
c. Hasil
Register
A=.................C=................
B=..................
D=................ E=.........
Alamat 1405 H=..........................
Masalah2
Sama seperti masalah 1 tetapi AND-kan register B dan D simpan di
alamat 1300CH. OR-kan C dengan D simpan di register E.
Masalah 3
Disusun oleh
Yuniawati, S.Pd
91
c. Hasil
Register
A=..........................D=.........................
Alamat 1803 H=..........................
Alamat 1805 H=...........................
Alamat 1711 H=...........................
Alamat 190EH=...........................
Masalah4
Sama seperti masalah 3 tetapi AND-kan data pada alamat 1803
dengan data pada alamat 1711H simpan di alamat 160DH. OR-kan
data pada alamat 1711H dengandata pada alamat 1805H simpan di
register E
VIII. Kesimpulan
Buat kesimpulan
Disusun oleh
Yuniawati, S.Pd
92
F.
Disusun oleh
Yuniawati, S.Pd
93
5.
Program Looping/perulangan
LD A,93H
OUT (10H),A
CALL DELAY
LD A,56H
OUT (20H),A
JP 0003H
RST 38H
DELAY:
LD B,00H
LOOP1:
LD C,00H
LOOP2:
DEC C
JP NZ,LOOP2
DEC B
JP NZ,LOOP1
NOP
NO
JOBSHEET
12
JUDUL
INSTRUKSI LOOPING DENGAN
Z80 SIMULATOR
Tanggal :
I. Tujuan Praktek
Disusun oleh
Yuniawati, S.Pd
94
1 set
1 buah
Disusun oleh
Yuniawati, S.Pd
95
G.
IMPLEMENTASI
MIKROPROSESSOR
OTOMASI ELEKTRONIK
NO
JOBSHEET
13
JUDUL
MENYALAKAN LAMPU
LED/TRAFFIC LIGHT DENGAN
Z80 SIMULATOR
MEMPROGRAM SISTEM MIKROPROSESSOR
ELEKTRONIKA INDUSTRI SMKN 29
DALAM
SISTEM
Tanggal :
I. Tujuan Praktek
Disusun oleh
Yuniawati, S.Pd
96
1 set
1 buah
Disusun oleh
Yuniawati, S.Pd
97
Keterangan
Masalah 2
Buat program dengan kreasi sendiri
VIII. Kesimpulan
Buat kesimpulan
TES FORMATIF
1.
Jelaskan
macam-macam
pengalamatan
pada mikroprosessor Z-80?
2.
Ubah menjadi bilangan Heksa dan jelaskan
maksud instruksi transfer data berikut:
a.
LD A, 08H
b.
LD D,A
c.
LD B, (1980)
3.
Ubah menjadi bilangan Heksa dan jelaskan
maksud instruksi aritmatika berikut:
Disusun oleh
Yuniawati, S.Pd
98
a.
b.
c.
4.
ADD A,B
INC B
SUB A,D
Jelaskan tentang macam macam intruksi
transfer data?
5.
DATA MENEMONIC
Disusun oleh
Yuniawati, S.Pd
99
1
2
3
4
5
6
7
8
9
10
11
12
21
22
23
24
25
26
27
28
29
30
31
32
41
42
43
44
45
46
47
48
49
50
51
52
91
92
93
94
95
96
97
98
99
100
61
62
Disusun oleh
Yuniawati, S.Pd
71
72
73
74
75
76
77
78
79
80
81
82
100
13
14
15
16
17
18
19
20
33
34
35
36
37
38
29
40
53
54
55
56
57
58
59
60
63
64
65
66
67
68
69
70
Disusun oleh
Yuniawati, S.Pd
83
84
85
86
87
88
89
90
101