Senin, 20 Juli 2020

ALGORITMA & PROGRAM


Algoritma yaitu urutan langkah-langkah sistematis dan logis untuk menyelesaikan sebuah masalah.
Program yaitu kumpulan instruksi/perintah komputer dengan bahasa tertentu yang berfungsi menghubungan user dengan komputer.
Atau bisa juga disebut implementasi dari bahasa pemrograman.
Kriteria Program :
  1. Setiap langkah/step harus jelas dan pasti
  2. Boleh tidak ada inputan tetapi harus memiliki output minimal 1 output, output ini merupakan solusi akhir dari penyelesaian masalah
  3. Efektif/tepat guna dan efisien/membutuhkan waktu singkat dan memori sedikit
  4. Jumlah langkah/step harus ada batasannya, baik ada solusi ataupun tidak
  5. Terstruktur/runtun, jelas.
Langkah-langkah membuat program :
  1. Mendefinisaikan masalah
  2. Menentukan solusi
  3. Memilih algoritma
  4. Menulis program
  5. Menguji program
  6. Menulis dokumentasi
  7. Merawat program
Penulisan algoritma
  1. Kalimat Deskriptif
  2. Flow Chart (diagram alir)
  3. Pseudo Code (kode semu)
Kalimat deskriptif
- Menggunakan untaian kalimat untuk menjelaskan langkah – langkah
- Contoh
PROGRAM GanjilGenap :
Diberikan sebuah bilangan bulat positif X untuk dicek apakah termasuk ganjil atau genap
ALGORITMA :
Jika X habis dibagi 2 maka tulis “Genap”, jika tidak maka tulis “Ganjil”

Flowchart
-  Menggunakan simbol – simbol untuk menggambarkan aliran atau langkah – langkah
-  Contoh

 







   Pseudo code
- Menggunakan kode – kode untuk menyatakan langkah – langkah
-  Mirip bahasa pemrograman
-  Contoh
DEKLARASI :
X : integer
ALGORITMA :
read(X)
if X mod 2 = 0 then {apakah X habis dibagi 2}
write(“Genap”)    {jika ya}
else
write(“Ganjil)    {jika tidak}

Lambang-lambang flowchart




CONTOH :
Permasalahan : menghitung luas segitiga
Algoritma :
a.       Masukkan alas (a)
b.      Masukkan tinggi (t)
c.       Hitung luas (L), yaitu 0.5 * alas * tinggi
d.      Cetak luas (L)







Sumber :
ALGORITMA & LOGIKA PEMROGRAMAN : YULI ASTUTI, S.KOM, 2019
ALGORITMA PEMROGRAMAN DASAR : DAHLAN ABDULLAH, 2019


Selasa, 14 April 2020

Instruksi pada Mikroprosesor Z80

·         Transfer Data
·         Aritmatika
·         Logika
·         Branch
·         Stac, I/O dan kontrol mesin
Pada pertemuan kali ini hanya 3 jenis perintah yang dibahas, yaitu Transfer Data, Aritmatika, dan Stac, I/O. Perintah lainnya akan dibahas pada pertemuan berikutnya.

1.      Perintah Transfer Data
a.       Mengisi data 8 bit ke register
Bentuk dasar perintah :
LD r1,nn
Penjelasan
– Instruksi mengisi data dari keyboard (nn) ke destination operand (r1).
– Isi r1 berubah menjadi data nn
– Register yang dipakai : A,B,C,D,E,H dan L

Contoh :
LD A, 01H
Penjelasan
– Instruksi mengisi data 8 bit dari keyboard nilainya 01 ke destination operand (Register A).
– Isi r1 berubah menjadi data 01H
– Register yang dipakai : A
– Secara singkat perintah ini maksudnya adalah : Mengisi Register A dengan data 01H

b.      Memindahkan data 8 bit dari register ke register
Bentuk dasar perintah :
LD r1,r2
Penjelasan
– Instruksi mentransfer data dari source operand (r2) ke destination operand (r1).
– Isi r2 tetap
– Isi r1 berubah menjadi isi r2
– Register yang dipakai : A,B,C,D,E,H dan L

Contoh :
LD A, B
Penjelasan
– Instruksi memindahkan data 8 bit dari source operand (register B) ke destination
   operand (register A)
– Isi register A berubah menjadi isi register B
– Register yang dipakai : A dan B
– Secara singkat perintah ini maksudnya adalah : Memindahkan isi Register B ke
   register A, sehingga isi register B sama denga nisi register A
2.      Perintah Aritmatika
Perintah aritmatika terdiri dari :
a.       ADD : menjumlahkan isi register
b.      SUB : mengurangkan isi register

a.       Bentuk dasar perintah ADD:
ADD r1,r2
Penjelasan
– Instruksi menjumlahkan data dari source operand (r2) dengan data dari
   destination operand (r1) dan menyimpan hasilnya di destination operand (r1)
– Isi r2 tetap
– Isi r1 berubah menjadi isi r2 ditambah isi r1 (r1=r2+r1)
– Register yang dipakai : A,B,C,D,E,H dan L

Contoh :
ADD A, B
Penjelasan
– Instruksi menjumlahkan data 8 bit isi dari source operand (register B) dengan isi
   data  destination operand (register A) dan menyimpan hasilnya di destination
   operand (register A)
– Isi register A berubah menjadi penjumlahan isi register B dan isi register A
   (A=A+B)
– Register yang dipakai : A dan B
– Secara singkat perintah ini maksudnya adalah : Menjumlahkan isi Register B
   dan isi register A, dan menyimpan hasilnya di register A.

b.      Bentuk dasar perintah SUB :
SUB r2
Penjelasan
– Instruksi mengurangkan data dari destination operand (r1) dengan data dari
   Source operand (r2) dan menyimpan hasilnya di destination operand (r1)
– Isi r2 tetap
– Isi r1 berubah menjadi isi r1 dikurangi isi r2 (r1=r1-r2)
– Register yang dipakai : A,B,C,D,E,H dan L

Contoh :
SUB, B
Penjelasan
– Instruksi mengurangkan data 8 bit isi dari destination operand (register A) 
   dengan isi data source operand (register B) dan menyimpan hasilnya di
   destination operand (register A)
– Isi register A berubah menjadi pengurangan isi register A dan isi register B
   (A=A-B)
– Register yang dipakai : A dan B
– Secara singkat perintah ini maksudnya adalah : Mengurangkan isi Register A
   dan isi register B, dan menyimpan hasilnya di register A.
3.      Perintah Stac, I/O
Perintah Stac, I/O terdiri dari :
a.       Perintah Input (Membaca dari port input)
b.      Perintah Output (Mengirim data ke port output)
c.       Perintah Membandingkan isi register dengan data 8 bit

a.       Bentuk dasar perintah Input
IN A,(addr)
Penjelasan
– Instruksi membaca/memasukkan data dari alamat port (addr) dan menyimpan
   data tersebut di register A
– Isi register A berubah menjadi data yang dibaca dari alamat port (addr)
– Register yang dipakai : A
–  Port yang dipakai : A dan B

Contoh :
IN A,(Port A)
Penjelasan
– Instruksi membaca/memasukkan data dari alamat port (Port A) dan menyimpan
   data tersebut di register A
– Isi register A berubah menjadi data yang dibaca dari alamat port A
– Secara singkat perintah ini maksudnya adalah : Membaca/memasukkan data dari
   port A dan menyimpan data tersebut di register A.

b.      Bentuk dasar perintah Output
OUT (addr), A
Penjelasan
– Instruksi mengirim/mengeluarkan data dari register A ke alamat port (addr)
– Isi alamat port (addr) berubah menjadi isi data yang ada dalam register A
– Register yang dipakai : A
–  Port yang dipakai : A dan B

Contoh :
OUT (Port A), A
Penjelasan
– Instruksi mengirim/mengeluarkan data dari register A ke alamat port (Port A)
– Isi alamat port A berubah menjadi isi data yang ada dalam register A
– Secara singkat perintah ini maksudnya adalah : Mengirim/mengeluarkan data
   dari register A ke port A.

c.       Bentuk dasar perintah membandingkan isi register dengan data 8 bit
CP n
Penjelasan
– Instruksi membandingkan isi dari register A dengan data 8 bit
– Isi yang ada dalam register A tidak berubah
– Register yang dipakai : A
–  Data untuk membandingkan adalah data 8 bit

Contoh :
CP 02H
Penjelasan
– Instruksi membandingkan isi dari register A dengan data 8 bit yaitu dalam
   contoh ini datanya adalah 02H
– Isi register A tidak berubah
– Secara singkat perintah ini maksudnya adalah : membandingkan isi dari register
   A dengan data 02H

Sabtu, 12 Oktober 2013

Program Up Down Ring Counter Menggunakan Simulator Z80

              PORTA EQU 40H
             PORTB EQU 41H
             PORTC EQU 42H
             RC    EQU 43H
            .ORG 1800H
             LD A,82H
             OUT (RC),A

UTAMA: IN A,(PORTB)
                 CP 01H
                 JP Z, NAIK
                 CP 02H
                 JP Z, TURUN
                 LD A, 00H
                 OUT (PORTA), A
                 JP UTAMA

NAIK: CALL UP
               JP UTAMA

TURUN:  CALL DOWN
                JP UTAMA

UP:         LD A, 00H
UP1: INC A
              CALL TUNDA
              CP 0FH
              OUT (PORTA), A
              JP NZ, UP1
              RET

DOWN:     LD A, 10H
DOWN1:    DEC A
                   CALL TUNDA
                   CP 00H
                   OUT (PORTA),A
                   JP NZ, DOWN1
                   RET

.ORG 1900H
TUNDA:         LD H, 3FH
ULANG2: LD L, 3FH
ULANG1: DEC L
                       JP NZ, ULANG1
                       DEC H
                       JP NZ, ULANG2
                       RET

.END

Selasa, 17 September 2013

Contoh program menghitung nilai tegangan dengan menggunakan Bahasa Pemrograman Turbo Pascal

Program Menghitung_Nilai_Tegangan;
var v,i,r : Integer
Write('Masukkan nilai kuat arus dalam ampere=');
readln(i);
Write('Masukkan nilai hambatan dalam ohmr=');
readln(r);
v := i*r
Writeln('Nilai Tegangan adalah=',v,'volt');
readln(v);
end.

Sabtu, 07 September 2013

Contoh program menghitung luas persegi panjang dengan Pascal

Program Menghitung_Luas_Persegi_Panjang;
uses crt;
var
p,l, L : Integer
       Write('Masukkan ukuran panjang=');readln(p);
       Write('Masukkan ukuran lebar=');readln(l);
       L := p*l
       Writeln('Luas Persegi Panjang adalah=',L);writeln
end.


Jumat, 06 September 2013

Contoh program sederhana menggunakan Turbo Pascal

Progam Menampilkan_Nama_Anda;
begin
        writeln('Tulis Nama Anda');
end.

Setelah di compile dan di run, maka pada user screen akan tampak tulisan :
Tulis Nama Anda

Jika "Tulis Nama Anda" diganti dengan nama anda, maka setelah program di compile dan di run, pada user screen akan menampilkan nama anda.