SET INSTRUKSI DALAM KOMPUTER
By : sigit xp
Set
instruksi merupakan sekumpulan lengkap instruksi yang terdapat di dalam sebuah CPU, set instruksi sering juga disebut
sebagai bahasa mesin (assembly), karna format bahasa yang digunakan berbentuk
biner, untuk dapat di mengerti oleh manusia, biasanya digunakan representasi
yang lebih mudah.
Sebuah
instruksi terdiri dari sebuah opcode, biasanya bersama dengan beberapa
informasi tambahan seperti darimana asal operand-operand dan kemana hasil-hasil
akan ditempatkan. Subyek umum untuk menspesifikasikan di mana operand-operand
berada (yaitu, alamat-alamatnya) disebut pengalamatan
Pada beberapa jenis mesin, semuanya instruksi memiliki
panjang yang sama. Instruksi-instruksi mungkin lebih pendek dari wor, Membuat
semua instruksi memiliki panjang yang sama lebih muda dilakukan dan membuat
pengkodean lebih mudah tetapi sering memboroskan ruang, karena semua instruksi
dengan demikian harus sama panjang seperti instruksi yang paling panjang.
Di dalam sebuah instruksi terdapat beberapa elemen-elemen
instruksi:
- Operation code (op code)
- Source operand reference
- Result operand reference
- Xext instruction preference
Format instruksi (biner):
Missal
instruksi dengan 2 alamat operand : ADD A,B A dan B adalah suatu alamat
register.
Beberapa simbolik instruksi:
ADD : Add
(jumlahkan)
SUB :
Subtract (Kurangkan)
MPY/MUL : Multiply
(Kalikan)
DIV :
Divide (Bagi)
LOAD : Load
data dari register/memory
STOR :
Simpan data ke register/memory
MOVE :
pindahkan data dari satu tempat ke tempat
lain
SHR :
shift kanan data
SHL : shift
kiri data .dan lain-lain
Cakupan jenis instruksi:
Data processing : Aritmetik (ADD, SUB, dsb);
Logic (AND, OR, NOT, SHR,
dsb);
konversidata
Data storage (memory)
: Transfer data (STOR, LOAD, MOVE, dsb)
Data movement : Input dan Output ke modul I/O
Program flow control : JUMP, HALT, dsb.
Bentuk instruksi:
Format instruksi 3 alamat
Mempunyai bentuk umum seperti :
[OPCODE][AH],[AO1],[AO2]. Terdiri dari satu alamat hasil, dan dua alamat
operand, misal SUB Y,A,B Yang mempunyai arti dalam bentuk algoritmik : Y := A –
B dan arti dalam bentuk penjelasan : kurangkan isi reg a dengan isi reg B,
kemudian simpan hasilnya di reg Y. bentuk bentuk pada format ini tidak umum digunakan
di dalam computer, tetapi tidak dimungkinkan ada pengunaanya, dalam
peongoprasianya banyak register sekaligus dan program lebih pendek.
Contoh:
A, B, C, D, E, T, Y adalah register
Program: Y = (A – B) / ( C + D × E)
SUB Y, A, B …………Y := A – B
MPY T, D, E …………T := D × E
ADD T, T, C ………….T := T + C
DIV Y, Y, T …………..Y:= Y / T
Memerlukan 4 operasi
A, B, C, D, E, T, Y adalah register
Program: Y = (A – B) / ( C + D × E)
SUB Y, A, B …………Y := A – B
MPY T, D, E …………T := D × E
ADD T, T, C ………….T := T + C
DIV Y, Y, T …………..Y:= Y / T
Memerlukan 4 operasi
-
Format instruksi 2 alamat
Mempunyai bentuk umum : [OPCODE][AH],[AO]. Terdiri dari satu alamat hasil merangkap operand, satu alamat operand, missal : SUB Y,B yang mempunyai arti dalam algoritmik : Y:= Y – B dan arti dalam bentuk penjelasan : kurangkan isi reg Y dengan isi reg B, kemudian simpan hasillnya di reg Y. bentuk bentuk format ini masih digunakan di computer sekarang, untuk mengoprasikan lebih sedikit register, tapi panjang program tidak bertambah terlalu banyak.
Contoh
:
A, B, C, D, E, T, Y adalah register
Program: Y = (A – B) / ( C + D × E)
MOVE Y, A Y := A
SUB Y, B Y := Y - B
MOVE T, D T := D
MPY T, E T := T × E
ADD T, C T := T + C
DIV Y, T Y:= Y / T
Memerlukan 6 operasi
A, B, C, D, E, T, Y adalah register
Program: Y = (A – B) / ( C + D × E)
MOVE Y, A Y := A
SUB Y, B Y := Y - B
MOVE T, D T := D
MPY T, E T := T × E
ADD T, C T := T + C
DIV Y, T Y:= Y / T
Memerlukan 6 operasi
-
Format instruksi 1 alamat
Mempunyai bentuk umum : [OPCODE][AO]. Terdiri dari satu alamat operand, hasil disimpan di accumulator, missal : SUB B yang mempunyai arti dalam algoritmik : AC:= AC – B dan arti dalam bentuk penjelasan : kurangkan isi Acc dengan isi reg B, kemudian simpan hasillnya di reg Acc. bentuk bentuk format ini masih digunakan di computer jaman dahulu, untuk mengoprasikan di perlukan satu register, tapi panjang program semakin bertambah.
Contoh
:
A, B, C, D, E, Y adalah register
Program: Y = (A – B) / ( C + D × E)
LOAD D AC := D
MPY E AC := AC × E
ADD C AC := AC + C
STOR Y Y := AC
LOAD A AC := A
SUB B AC := AC – B
DIV Y AC := AC / Y
STOR Y Y := AC
Memerlukan 8 operasi
A, B, C, D, E, Y adalah register
Program: Y = (A – B) / ( C + D × E)
LOAD D AC := D
MPY E AC := AC × E
ADD C AC := AC + C
STOR Y Y := AC
LOAD A AC := A
SUB B AC := AC – B
DIV Y AC := AC / Y
STOR Y Y := AC
Memerlukan 8 operasi
-
Format instruksi 0 alamat
Mempunyai bentuk umum : [OPCODE]. Terdiri dari semua alamat operand implicit, disimpan dalam bentuk stack. Operasi yang biasanya membutuhkan 2 operand, akan mengambil isi stack paling atas dan dibawahnya missal : SUB yang mempunyai arti dalam algoritmik : S[top]:=S[top-1]-S[top] dan arti dalam bentuk penjelasan : kurangkan isi stack no2 dari atas dengan isi stack paling atas, kemudian simpan hasilnya di stack paling atas, untuk mengoprasikan ada beberapa instruksi khusus stack PUSH dan POP.
Mempunyai bentuk umum : [OPCODE]. Terdiri dari semua alamat operand implicit, disimpan dalam bentuk stack. Operasi yang biasanya membutuhkan 2 operand, akan mengambil isi stack paling atas dan dibawahnya missal : SUB yang mempunyai arti dalam algoritmik : S[top]:=S[top-1]-S[top] dan arti dalam bentuk penjelasan : kurangkan isi stack no2 dari atas dengan isi stack paling atas, kemudian simpan hasilnya di stack paling atas, untuk mengoprasikan ada beberapa instruksi khusus stack PUSH dan POP.
Contoh :
A, B, C, D, E, Y adalah register
Program: Y = (A – B) / ( C + D × E)
PUSH A S[top] := A
PUSH B S[top] := B
SUB S[top] := A - B
PUSH C S[top] := C
PUSH D S[top] := D
PUSH E S[top] := E
MPY S[top] := D × E
ADD S[top] := C + S[top]
DIV S[top] := (A - B) /S[top]
POP Y Out := S[top]
Memerlukan 10 operasi
A, B, C, D, E, Y adalah register
Program: Y = (A – B) / ( C + D × E)
PUSH A S[top] := A
PUSH B S[top] := B
SUB S[top] := A - B
PUSH C S[top] := C
PUSH D S[top] := D
PUSH E S[top] := E
MPY S[top] := D × E
ADD S[top] := C + S[top]
DIV S[top] := (A - B) /S[top]
POP Y Out := S[top]
Memerlukan 10 operasi
Set instruksi pada CISC:
Berikut ini merupakan karakteristik
set instruksi yang digunakan pada beberapa computer yang memiliki arsitektur
CISC
Perbandingan set instruksi
Beberapa computer CISC (Complex Instruction Set Computer)
menggunakan cara implist dalam menentukan mode addressing pada setiap set
instruksinya. Penentuan mode addressing dengan cara implicit memiliki arti
bahwa pada set instruksi tidak di ada bagian yang menyatakan tipe dari mode
addressing yang digunakan, deklarasi dari mode addressing itu berada menyatu
dengan opcode. Lain hal nya dengan cara imsplisit, cara eksplisit sengaja
menyediakan tempat pada set instruksi untuk mendeklarasikan tipe mode
addressing. Pada cara eksplisit deklarasi opcode dan mode addressing berada
terpisah.
Data pada tempat deklarasi mode addressing diperoleh dari
logaritma basis dua jumlah mode addressing. Jika deklarasi mode addressing
dilakukan secara implicit akan menghemat tempat dalam set instruksi paling
tidak satu bit untuk IBM 3090 dan 6 bit untuk MC68040. Perubahan satu bit pada
set instruksi akan memberikan jangkauan alamat memori lebih luas mengingat
range memori dinyatakan oleh bilangan berpangkat dua.
Implementasi hardware
Setiap set instruksi yang berbeda membutuhkan perangkat
hardware yang berbeda pula. Hal ini terjadi karena set instruksi yang berbeda
menyimpan informasi yang berbeda sehingga dibutuuhkan hardware yang berbeda
untuk mengubah set instruksi tersebut ke bentuk sinyal-sinyal control.
Untuk mendapatkan opcode berikutnya prosesor harus
mengetahui letak dari opcode tersebut secara pasti pada memory. Karena tipe
dari mode addressing sangat mempengaruhi posisi dari operand, maka secara tidak
langsung mode addressing mempengaruhi letak opcode selanjutnya. Sehingga dapat
disimpulkan kedua cara pendeklarasian mode addressing tersebut turut
mempengaruhi arsitektur hardware dari computer.
SET
INSTRUKSI DALAM KOMPUTER
Set intruksi berupa jenis intruksi
teknik pengalamatan, system bust, CPU dan I/O Set Intruksi Mode & Format
Pengalamatan SET INSTRUKSI MATERI OR-AR KOMPUTER KARAKTERISTIK DAN FUNGSI SET
INSTRUKSI
* Operasi dari CPU ditentukan oleh
instruksi-instruksi yang dilaksanakan atau dijalankannya. Instruksi ini sering
disebut sebagai instruksi mesin (mechine instructions) atau instruksi komputer
(computer instructions).
* Kumpulan dari instruksi-instruksi
yang berbeda yang dapat dijalankan oleh CPU disebut set Instruksi (Instruction
Set).
ELEMEN-ELEMEN DARI INSTRUKSI MESIN
(SET INSTRUKSI)
* Operation Code (opcode) :
menentukan operasi yang akan dilaksanakan
* Source Operand Reference :
merupakan input bagi operasi yang akan dilaksanakan
* Result Operand Reference :
merupakan hasil dari operasi yang dilaksanakan
* Next instruction Reference : memberitahu
CPU untuk mengambil (fetch) instruksi berikutnya setelah instruksi yang
dijalankan selesai. Source dan result operands dapat berupa salah satu diantara
tiga jenis berikut ini:
- Main or Virtual Memory
- CPU Register
- I/O Device
DESAIN SET INSTRUKSI
Desain set instruksi merupakan
masalah yang sangat komplek yang melibatkan banyak aspek, diantaranya
adalah:
- Kelengkapan set instruksi
- Ortogonalitas (sifat independensi instruksi)
- Kompatibilitas : - Source code compatibility - Object code Compatibility
Selain ketiga aspek tersebut juga melibatkan hal-hal sebagai berikut:
- Operation Repertoire: Berapa banyak dan operasi apa saja yang disediakan, dan berapa sulit operasinya
- Data Types: tipe/jenis data yang dapat olah Instruction Format: panjangnya, banyaknya alamat, dsb.
- Register: Banyaknya register yang dapat digunakan 4.Addressing: Mode pengalamatan untuk operand
FORMAT INSTRUKSI
* Suatu instruksi terdiri dari beberapa field yang sesuai
dengan elemen dalam instruksi tersebut. Layout dari suatu instruksi sering
disebut sebagai Format Instruksi (Instruction Format).
OPCODE OPERAND REFERENCE OPERAND REFERENCE JENIS-JENIS OPERAND
OPCODE OPERAND REFERENCE OPERAND REFERENCE JENIS-JENIS OPERAND
* Addresses (akan dibahas pada
addressing modes)
* Numbers : - Integer or fixed point - Floating point - Decimal (BCD)
* Characters : - ASCII - EBCDIC
* Logical Data : Bila data berbentuk binary: 0 dan 1
JENIS INSTRUKSI
* Numbers : - Integer or fixed point - Floating point - Decimal (BCD)
* Characters : - ASCII - EBCDIC
* Logical Data : Bila data berbentuk binary: 0 dan 1
JENIS INSTRUKSI
* Data processing: Arithmetic dan Logic Instructions
* Data storage: Memory instructions
* Data Movement: I/O instructions
* Control: Test and branch instructions
TRANSFER DATA
* Menetapkan lokasi operand sumber dan operand tujuan.
* Lokasi-lokasi tersebut dapat berupa memori, register atau bagian paling atas daripada stack.
* Menetapkan panjang data yang dipindahkan.
* Menetapkan mode pengalamatan.
* Tindakan CPU untuk melakukan transfer data adalah :
a. Memindahkan data dari satu lokasi ke lokasi lain.
b. Apabila memori dilibatkan :
1. Menetapkan alamat memori.
2. Menjalankan transformasi alamat memori virtual ke alamat memori aktual.
3. Mengawali pembacaan / penulisan memori
Operasi set instruksi untuk transfer data :
* MOVE : memindahkan word atau blok dari sumber ke tujuan
* STORE : memindahkan word dari prosesor ke memori.
* LOAD : memindahkan word dari memori ke prosesor.
* EXCHANGE : menukar isi sumber ke tujuan.
* CLEAR / RESET : memindahkan word 0 ke tujuan.
* SET : memindahkan word 1 ke tujuan.
* PUSH : memindahkan word dari sumber ke bagian paling atas stack.
* POP : memindahkan word dari bagian paling atas sumber
Referensi…
Etika Menulis Di Internet
By : sigit xp
Penulisan pada internet memiliki
etika-etika tersendiri, Penulisan di internet juga tidak bisa sesuka hati,
melaikan harus sesuai dengan etika-etika yg sudah tercantum pada undang-undang.
Di dunia maya, aturan-aturan tersebut bersifat tertulis maupun tidak tertulis. Pada aturan tidak tertulis bisa berupa pernyataan sikap dari pembaca yang membaca informasi di blog, email, atau milis yang diwujudkan dalam bentuk komentar-komentar terhadap tulisan penulis, apabila tulisan tersebut tidak berkenan atau tidak sesuai dengan nilai atau etika biasanya si penulis akan dihujat oleh pembaca melalui fasilitas komentar atau email balik. Sedangkan pada aturan tertulis bisa berupa peringatan yang ditulis oleh pembuat blog atau administrator milis, agar terciptanya komunikasi yang sehat, sopan, dan saling menghargai. Misal Tidak boleh menulis dengan menggunakan capslock, karena sama saja seperti memaki, tidak boleh menulis hal-hal yang berbau SARA, Pornografi dan sebagainya, dan bila tulisan adalah hasil karya orang lain harap dicantumkan nama penulis dan alamat URLnya.
Di dunia maya, aturan-aturan tersebut bersifat tertulis maupun tidak tertulis. Pada aturan tidak tertulis bisa berupa pernyataan sikap dari pembaca yang membaca informasi di blog, email, atau milis yang diwujudkan dalam bentuk komentar-komentar terhadap tulisan penulis, apabila tulisan tersebut tidak berkenan atau tidak sesuai dengan nilai atau etika biasanya si penulis akan dihujat oleh pembaca melalui fasilitas komentar atau email balik. Sedangkan pada aturan tertulis bisa berupa peringatan yang ditulis oleh pembuat blog atau administrator milis, agar terciptanya komunikasi yang sehat, sopan, dan saling menghargai. Misal Tidak boleh menulis dengan menggunakan capslock, karena sama saja seperti memaki, tidak boleh menulis hal-hal yang berbau SARA, Pornografi dan sebagainya, dan bila tulisan adalah hasil karya orang lain harap dicantumkan nama penulis dan alamat URLnya.
Ada sepuluh
etika yang harus di perhatikan dalam penulisan suatu sumber informasi di dalam
internet.
1. dalam kehidupan nyata. Jangan karena Anda merasa tidak dikenali lalu
berlaku kasar atau tidak pantasdalam menuliskan suatu milis.
2. Ingatlah bahwa di Internet Anda berhubungan dengan manusia, bukan cuma
komputer. Perlakukanlah mereka dengan baik sehingga anda akan diperlakuan baik juga oleh penulis atau mereka.
3. Jangan memboroskan bandwidth dan waktu akses dengan mengirim grafik,
gambar dsb. Kecuali memang tak terhindarkan.
4. Jangan terdorong untuk selalu kontroversial. Karna hanya akan menimbulkan sesuatu yang bisa merugikan diri sendiri maupun orang lain, Hargailah pendapat orang lain serta jangan memaksakan pendapat anda. Janganlah memulai atau memprovokasi pertengkaran yang dapat dihindarkan atau dihentikan.
5. Berbagilah pengetahuan yang berharga. Internet akan berkembang terus dan
akan semakin mudah diakses. Saling berbagilah untuk meningkatkan kualitas
diri.
6. Hindarkan anak anak dari informasi yang belum sesuai bagi pertumbuhannya.
karna internet adalah sumber informasi tanpa batas dan sangat mudah untuk
meningkatkan pengetahuan dan wawasan.
7. Jangan melanggar hukum. Hukum yang berlaku didunia nyata, banyak yang
juga berlaku di Internet, termasuk hak perorangan, kecurangan dan
penyesatan, hak cipta dan merk, gangguan, hujatan dan masalah kerahasiaan.
Berlaku wajarlah seperti didunia nyata.
8. Hormatilah privasi peserta lainnya. Jangan menyebar e-mail address
seseorang tanpa ijin, seperti halnya kita tidak meyebarkan nomor telepon
seseorang semaunya. Juga jangan mendaftarkan email orang lain ke milis atau
newsgroup tanpa seijinnya.
9. Jangan memanfaatkan keberadaan anggota group untuk tujuan lain.
Keberadaan banyak orang di Internet memang dapat dimanfaatkan untuk bisnis,
tetapi tidak semua milis atau news group pantas untuk itu.
10. Siaplah memaafkan kesalahan seseorang. Internet dihuni banyak orang,
bukan komputer. Dan manusia dapat saja berbuat salah.
1. dalam kehidupan nyata. Jangan karena Anda merasa tidak dikenali lalu
berlaku kasar atau tidak pantasdalam menuliskan suatu milis.
2. Ingatlah bahwa di Internet Anda berhubungan dengan manusia, bukan cuma
komputer. Perlakukanlah mereka dengan baik sehingga anda akan diperlakuan baik juga oleh penulis atau mereka.
3. Jangan memboroskan bandwidth dan waktu akses dengan mengirim grafik,
gambar dsb. Kecuali memang tak terhindarkan.
4. Jangan terdorong untuk selalu kontroversial. Karna hanya akan menimbulkan sesuatu yang bisa merugikan diri sendiri maupun orang lain, Hargailah pendapat orang lain serta jangan memaksakan pendapat anda. Janganlah memulai atau memprovokasi pertengkaran yang dapat dihindarkan atau dihentikan.
5. Berbagilah pengetahuan yang berharga. Internet akan berkembang terus dan
akan semakin mudah diakses. Saling berbagilah untuk meningkatkan kualitas
diri.
6. Hindarkan anak anak dari informasi yang belum sesuai bagi pertumbuhannya.
karna internet adalah sumber informasi tanpa batas dan sangat mudah untuk
meningkatkan pengetahuan dan wawasan.
7. Jangan melanggar hukum. Hukum yang berlaku didunia nyata, banyak yang
juga berlaku di Internet, termasuk hak perorangan, kecurangan dan
penyesatan, hak cipta dan merk, gangguan, hujatan dan masalah kerahasiaan.
Berlaku wajarlah seperti didunia nyata.
8. Hormatilah privasi peserta lainnya. Jangan menyebar e-mail address
seseorang tanpa ijin, seperti halnya kita tidak meyebarkan nomor telepon
seseorang semaunya. Juga jangan mendaftarkan email orang lain ke milis atau
newsgroup tanpa seijinnya.
9. Jangan memanfaatkan keberadaan anggota group untuk tujuan lain.
Keberadaan banyak orang di Internet memang dapat dimanfaatkan untuk bisnis,
tetapi tidak semua milis atau news group pantas untuk itu.
10. Siaplah memaafkan kesalahan seseorang. Internet dihuni banyak orang,
bukan komputer. Dan manusia dapat saja berbuat salah.
Di Negara kita ini
aturan mengenai etika menulis di
internet pun terdapat pada undang-undang
yang ditetapkan tahun 2008. Aturan itu adalah Undang-undang Informasi dan
Transaksi Elektronik atau UU ITE.
Pada UU ITE hal
yang dilarang menyangkut isi tulisan tertuang pada BAB VII pasal 27 ayat satu
sampai empat dan pasal 28 ayat satu dan dua.
Pasal 27
(1) Setiap
Orang dengan sengaja dan tanpa hak mendistribusikan dan/atau mentransmisikan
dan/ataumembuat dapat diaksesnya Informasi Elektronik dan/atau Dokumen
Elektronik yang memiliki muatan yang melanggar kesusilaan.
(2) Setiap
Orang dengan sengaja dan tanpa hak mendistribusikan dan/atau mentransmisikan
dan/ataumembuat dapat diaksesnya Informasi Elektronik dan/atau Dokumen Elektronik
yang memiliki muatanperjudian.
(3) Setiap
Orang dengan sengaja dan tanpa hak mendistribusikan dan/atau mentransmisikan
dan/ataumembuat dapat diaksesnya Informasi Elektronik dan/atau Dokumen
Elektronik yang memiliki muatanpenghinaan dan/atau pencemaran nama baik.
(4) Setiap
Orang dengan sengaja dan tanpa hak mendistribusikan dan/atau mentransmisikan
dan/ataumembuat dapat diaksesnya Informasi Elektronik dan/atau Dokumen
Elektronik yang memiliki muatanpemerasan dan/atau pengancaman.
Pasal 28
(1) Setiap Orang
dengan sengaja dan tanpa hak menyebarkan berita bohong dan menyesatkan yang
mengakibatkan kerugian konsumen dalam Transaksi Elektronik.
(2) Setiap
Orang dengan sengaja dan tanpa hak menyebarkan informasi yang ditujukan untuk
menimbulkan
rasa kebencian atau permusuhan individu dan/atau kelompok masyarakat tertentu
berdasarkan atas suku, agama, ras, dan antargolongan (SARA).
Mengenai ketentuan
pidananya tertuang pada BAB XI Pasal 45 ayat 1 dan 2
Pasal 45
(1) Setiap
Orang yang memenuhi unsur sebagaimana dimaksud dalam Pasal 27 ayat (1),
ayat (2), ayat
(3), atau ayat (4) dipidana dengan pidana penjara paling lama 6 (enam) tahun
dan/atau denda paling banyak Rp1.000.000.000,00 (satu miliar rupiah).
(2) Setiap
Orang yang memenuhi unsur sebagaimana dimaksud dalam Pasal 28 ayat (1) atau
ayat (2) dipidana dengan pidana penjara paling lama 6 (enam) tahun dan/atau
denda paling banyak Rp1.000.000.000,00 (satu miliar rupiah).
Dari sedikit
penjelasan diatas,ada baiknya mulai sekarang kita lebih berhati-hati lagi dalam
menulis tulisan di internet ,karena akan berdampak buruk pada diri kita sendiri
bahkan akan membawa kita kedalam jalur hukum yang serius,mulai sekarang marilah
kita berhati-hati dalam menulis diinternet.
sumber:
Program procedure pada Mesin Pencuci Piring Otomatis
By : sigit xpprocedure adalah sebuah salah satu struktur penulisan yang ada dalam sebuah program dengan menggunakan bahasa pascal. penggunaan procedure ini sebenarnya sama dengan penggunaan function pada pascal, hanya saja fungsi yang ada pada procedure lebih sederhana sehingga dapat menyelesaikan program yang sulit dengan mudah, masih dengan topik yang sama, yaitu mesin pencuci piring otomatis, saya akan mencoba membuat listing program dari flowchart mesin tersebut. Penulis menggunakan Turbo Pascal , kemudian menggunakan Procedure pada listing program ini.
Listing program-nya adalah sebagai berikut:
program di atas mempersingkat ataupun mempermudah dalam pengerjaanya sehingga program yang dibuat dapat semudah mungkin yang sanggup mengeksekusi data yang cukup rumit.
Secara sederhana, program di atas dapat dituliskan dalam bentuk flowchart sebagai berikut: