Sabtu, 01 Desember 2012

Flowchart

Flowchart
1.  Flowchart adalah bagan-bagan yang mempunyai arus menggambarkan langkah-langkah penyelesaian suatu masalah
2.  Merupakan cara penyajian dari suatu algoritma
3.  Ada 2 macam flowchart:
·         System flowchart:
                       Urutan proses dalam system dengan menunjukkan alat media input, output serta jenis penyimpanan dalam proses pengolahan data.
·         Program flowchart:
                       Urutan instruksi yang digambarkan dengan symbol tertentu untuk memecahkan masalah dalam suatu program.

Contoh program Flowchart


Simbol-simbol Flowchart
1.  Flow Direction Symbols (simbol penghubung alur)
2.  Processing Symbols (simbol proses)
3.  Input-Output Symbols (simbol input-output)

Tabel Simbol-simbol Flowchart


Pembuatan Flowchart
1.  Tidak ada kaidah yang baku
2.  Flowchart = gambaran hasil analisa suatu masalah
3.  Flowchart dapat bervariasi antara satu pemrograman dengan pemrograman lainnya.
4.  Secara garis besar ada 3 bagian utama:
·         Input
·         Proses
·         Output
5.  Hindari pengulangan yang tidak perlu dan logika yang berbelit sehingga jalannya proses menjadi singkat
6.  Jalannnya proses digambarkan dari atas ke bawah dan diberikan tanda panah untuk memperjelas.
7.  Sebuah Flowchart diawali dari satu titik START dan diakhiri dengan End.
 
Berikut adalah salah satu contoh flowchart:
 
Flowchart algoritma untuk menentukan nilai ganjil atau genap
 
 

Rabu, 24 Oktober 2012

ALU (Arithmatic and Logical Unit)


Hai semua, kali ini saya akan membahas masalah tentang ALU (Arithmatic and Logical Unit) / arimatika unit kendali. Enjoy ya :)

Arithmatic Logical Unit (ALU), adalah salah satu bagian/komponen dalam sistem di dalam sistem komputer yang berfungsi melakukan operasi/perhitungan aritmatika dan logika (Contoh operasi aritmatika adalah operasi penjumlahan dan pengurangan, nah.. sobat blogger sedangkan contoh operasi logika adalah logika AND dan OR. ALU bekerja besama-sama memori, di mana hasil dari perhitungan di dalam ALU di simpan ke dalam memori.
Perhitungan dalam ALU menggunakan kode biner, yang merepresentasikan instruksi yang akan dieksekusi (opcode) dan data yang diolah (operand). ALU biasanya menggunakan sistem bilangan biner two’s complement. ALU mendapat data dari register. Kemudian data tersebut diproses dan hasilnya akan disimpan dalam register tersendiri yaitu ALU output register, sebelum disimpan dalam memori.
Pada saat sekarang ini sebuah chip/IC dapat mempunyai beberapa ALU sekaligus yang memungkinkan untuk melakukan kalkulasi secara paralel. Salah satu chip ALU yang sederhana (terdiri dari 1 buah ALU) adalah IC 74LS382/HC382ALU (TTL). IC ini terdiri dari 20 kaki dan beroperasi dengan 4×2 pin data input (pinA dan pinB) dengan 4 pin keluaran (pinF).
Arithmatic Logical Unit (ALU), fungsi unit ini adalah untuk melakukan suatu proses data yang berbentuk angka dan logika, seperti data matematika dan statistika. ALU terdiri dari register-register untuk menyimpan informasi.Tugas utama dari ALU adalah melakukan perhitungan aritmatika (matematika) yang terjadi sesuai dengan instruksi program. Rangkaian pada ALU (Arithmetic and Logic Unit) yang digunakan untuk menjumlahkan bilangan dinamakan dengan Adder. Adder digunakan untuk memproses operasi aritmetika, Adder juga disebut rangkaian kombinasional aritmatika.

FYI, ada 3 jenis adder nih, yaitu:  

    1. Rangkaian Adder dengan menjumlahkan dua bit disebut Half Adder.
    2. Rangkaian Adder dengan menjumlahkan tiga bit disebut Full Adder.
    3. Rangkain Adder dengan menjumlahkan banyak bit disebut Paralel Adder

Dan berikut dibawah ini penjelasan dari rangkaian half adder,full adder dan Paralel adder :

  1. HALF ADDER

    Rangkaian Half Adder merupakan dasar penjumlahan bilangan Biner yang terdiri dari satu bit, oleh karena itu dinamai Penjumlah Tak Lengkap.
    a. jika A = 0 dan B = 0 dijumlahkan, hasilnya S ( Sum ) = 0.
    b. jika A = 0 dan B = 1 dijumlahkan, hasilnya S ( Sum ) = 1.
    c. jika A = 1 dan B = 1 dijumlahkan, hasilnya S ( Sum ) = 0
    jika A = 1 dan B =1 dijumlahkan, hasilnya S ( Sum ) = 0. dengan nilai pindahan cy(Carry Out) = 1
    Dengan demikian, half adder memiliki 2 masukan ( A dan B ) dan dua keluaran ( S dan Cy ).
    puyeng ga sobat.apalagi saya hehe :D

  2. FULL ADDER

    Sebuah Full Adder menjumlahkan dua bilangan yang telah dikonversikan menjadi bilangan-bilangan biner. Masing-masing bit pada posisi yang sama saling dijumlahkan. Full Adder sebagai penjumlah pada bit-bit selain yang terendah. Full Adder menjumlahkan dua bit input ditambah dengan nilai Carry-Out dari penjumlahan bit sebelumnya. Output dari Full Adder adalah hasil penjumlahan (Sum) dan bit kelebihannya (carry-out)
  3. PARALEL  ADDER

    Rangkaian Parallel Adder adalah rangkaian penjumlah dari dua bilangan yang telah dikonversikan ke dalam bentuk biner. Anggap ada dua buah register A dan B, masing-masing register terdiri dari 4 bit biner : A3A2A1A0 dan B3B2B1B0.
    Rangkaian Parallel Adder terdiri dari Sebuah Half Adder (HA) pada Least Significant Bit (LSB) dari masing-masing input dan beberapa Full Adder pada bit-bit berikutnya. Prinsip kerja dari Parallel Adder adalah sebagai berikut : penjumlahan dilakukan mulai dari LSB-nya. Jika hasil penjumlahan adalah bilangan desimal “2” atau lebih, maka bit kelebihannya disimpan pada Cout, sedangkan bit di bawahnya akan dikeluarkan pada Σ. Begitu seterusnya menuju ke Most Significant Bit (MSB)nya.
    Tugas lain dari ALU adalah melakukan keputusan dari operasi sesuai dengan instruksi program yaitu operasi logika (logical operation). Operasi logika meliputi perbandingan dua buah elemen logika dengan menggunakan operator logika.

Nah..  dibawah ini fungsi dari ALU

Arithmatic Logical Unit (ALU):
  • Bertugas membentuk fungsi – fungsi pengolahan data komputer.
  • ALU sering disebut mesin bahasa (machine language) karena bagian ini mengerjakan instruksi – instruksi bahasa mesin yang diberikan padanya
  • ALU terdiri dari dua bagian, yaitu unit arithmetika dan unit logika boolean, yang masing – masing memiliki spesifikasi dan tugas tersendiri.

Fungsi-fungsi yang didefinisikan pada ALU adalah Add(penjumlahan), Addu (penjumlahan tidak bertanda), Sub(pengurangan), Subu (pengurangan tidak bertanda), and, or, xor, sll (shift left logical), srl (shift right logical), sra (shift right arithmetic), dan lain-lain.
Arithmetic Logical Unit (ALU) merupakan unit penalaran secara logic. ALU ini merupakan Sirkuit CPU berkecepatan tinggi yang bertugas menghitung dan membandingkan. Angka-angka dikirim dari memori ke ALU untuk dikalkulasi dan kemudian dikirim kembali ke memori. Jika CPU diasumsikan sebagai otaknya komputer, maka ada suatu alat lain di dalam CPU tersebut yang kenal dengan nama Arithmetic Logical Unit (ALU), ALU inilah yang berfikir untuk menjalankan perintah yang diberikan kepada CPU tersebut.
ALU sendiri merupakan suatu kesatuan alat yang terdiri dari berbagai komponen perangkat elektronika termasuk di dalamnya sekelompok transistor, yang dikenal dengan nama logic gate, dimana logic gate ini berfungsi untuk melaksanakan perintah dasar matematika dan operasi logika. Kumpulan susunan dari logic gate inilah yang dapat melakukan perintah perhitungan matematika yang lebih komplit seperti perintah “add” untuk menambahkan bilangan, atau “devide” atau pembagian dari suatu bilangan. Selain perintah matematika yang lebih komplit, kumpulan dari logic gate ini juga mampu untuk melaksanakan perintah yang berhubungan dengan logika, seperti hasil perbandingan dua buah bilangan.

Instruksi yang dapat dilaksanakan oleh ALU disebut dengan instruction set. Perintah yang ada pada masing-masing CPU belum tentu sama, terutama CPU yang dibuat oleh pembuat yang berbeda, katakanlah misalnya perintah yang dilaksanakan oleh CPU buatan Intel belum tentu sama dengan CPU yang dibuat oleh Sun atau perusahaan pembuat mikroprosesor lainnya. Jika perintah yang dijalankan oleh suatu CPU dengan CPU lainnya adalah sama, maka pada level inilah suatu sistem dikatakan compatible. Sehingga sebuah program atau perangkat lunak atau software yang dibuat berdasarkan perintah yang ada pada Intel tidak akan bisa dijalankan untuk semua jenis prosesor,kecuali untuk prosesor yang compatible dengannya.
Seperti halnya dalam bahasa yang digunakan oleh manusia, instruction set ini juga memiliki aturan bahasa yang bisa saja berbeda satu dengan lainnya. Bandingkanlah beda struktur bahasa Inggris dengan Indonesia, atau dengan bahasa lainnya, begitu juga dengan instruction set yang ada pada mesin, tergantung dimana lingkungan instruction set itu digunakan.

1. Unit Kontrol Single-Cycle

Proses di unit kontrol ini hanya terjadi dalam satu clock cycle artinya setiap instruksi (fetch, decode, execute) ada pada satu cycle; maka dari itu tidak memerlukan state. Dengan demikian fungsi boolean masing-masing control line hanya merupakan fungsi dari opcode saja. Clock cycle harus mempunyai panjang yang sama untuk setiap jenis instruksi.


Ada dua bagian pada unit kontrol ini, yaitu proses men-decode opcode untuk mengelompokkannya menjadi 4 macam instruksi (yaitu di gerbang AND), dan pemberian sinyal kontrol berdasarkan jenis instruksinya (yaitu gerbang OR). Keempat jenis instruksi adalah “R-format” (berhubungan dengan register), “lw” (membaca memori), “sw” (menulis ke memori), dan “beq” (branching).

Sinyal kontrol yang dihasilkan bergantung pada jenis instruksinya. Misalnya jika melibatkan memori ”R-format” atau ”lw” maka akan sinyal ”Regwrite” akan aktif. Hal lain jika melibatkan memori “lw” atau “sw” maka akan diberi sinyal kontrol ke ALU, yaitu “ALUSrc”.

Desain single-cycle ini lebih dapat bekerja dengan baik dan benar tetapi cycle ini tidak efisien.

2. Unit Kontrol Multi-Cycle

Gambar disamping menunjukkan diagram blok dari unit kontrol multi-cycle. Berbeda dengan unit kontrol yang single-cycle, unit kontrol yang multi-cycle lebih memiliki banyak fungsi.

Dengan memperhatikan state dan opcode, fungsi boolean dari masing-masing control line output dapat ditentukan. Masing-masingnya akan menjadi fungsi dari 10 buah input logic. Jadi akan terdapat banyak fungsi boolean, dan masing-masingnya tidak sederhana.

Pada cycle ini, sinyal kontrol tidak lagi ditentukan dengan melihat pada bit-bit instruksinya. Bit-bit opcode memberitahukan operasi apa yang selanjutnya akan di-execute CPU; bukan instruksi cycle selanjutnya.

Input Unit Kontrol

Unit kontrol mempunyai beberapa input, diantaranya:

  • Clock: berfungsi untuk sinkronisasi operasi antar komponen
  • Flag: flag-flag ini diperlukan unit kontrol untuk mengetahui status CPU. Flag diset ALU sebagai hasil dari suatu operasi, misalnya: overflow flag, diset 1 bila hasil komputasi melampaui panjang register tempat flag disimpan.
  • Instruction register: menggunakan opcode untuk menentukan operasi mikro yang akan dilakukan selama siklus eksekusi
  • Sinyal kontrol dari ”bus control”: memberi jalur ke unit kontrol untuk sinyal-sinyal tertentu, seperti sinyal interrupt dan sinyal acknowledgment

Output Unit Kontrol

Sinyal kontrol di dalam CPU (control signals within CPU): output unit kontrol terdiri dari dua macam sinyal, yaitu:
  • sinyal-sinyal yang menyebabkan perpindahan data antar register
  • sinyal-sinyal yang dapat mengaktifkan fungsi ALU yang spesifik

Sinyal kontrol ke ”bus control” juga terdiri atas 2 sinyal, yaitu:
  • sinyal kontrol ke memori
  • sinyal kontrol ke modul-modul I/O

Implementasi Unit Kontrol

  1. Implementasi hardwired

    Unit kontrol merupakan rangkaian kombinatorial. Sinyal-sinyal logika inputnya akan didekodekan menjadi sinyal-sinyal logika output, yang merupakan sinyal-sinyal kontrol ke sistem komputer. Sinyal-sinyal input tersebut, seperti clock, flag, register instruction, dan sinyal kontrol merupakan input bagi unit kontrol untuk mengetahui status komputer. Sinyal keluaran yang dihasilkan akan mengendalikan sistem kerja komputer.

    N buah input biner akan menghasilkan 2N output biner. Setiap instruksi memiliki opcode yang yang berbeda-beda.

    Opcode yang berbeda dalam instruksi akan menghasilkan sinyal kontrol yang berbeda pula. Pewaktu unit kontrol mengeluarkan rangkaian pulsa yang periodik.

    Pulsa waktu ini digunakan untuk mengukur durasi setiap operasi mikro yang dijalankan CPU, intinya digunakan untuk sinkronisasi kerja masing-masing bagian.

    Masalah dalam Merancang Implementasi Hardwired:

    Ø Memiliki kompleksitas dalam pengurutan dan operasi mikronya

    Ø Sulit didesain dan dilakukan pengetesan

    Ø Tidak fleksibel

    Ø Sulit untuk menambahkan instruksi baru
  2. Implementasi microprogrammed

    Implementasi yang paling reliabel saat ini adalah implementasi microprogrammed. Unit kontrol memerlukan sebuah memori untuk menyimpan program kontrolnya.

    Fungsi–fungsi pengontrolan dilakukan berdasarkan program kontrol yang tersimpan pada unit kontrol. Selain itu, fungsi–fungsi pengontrolan tidak berdasarkan dekode dari input unit kontrol lagi.

    Teknik ini dapat menjawab kesulitan–kesulitan yang ditemui dalam implementasi hardwired.

    Sekian info dari saya tentang ALU, semoga bermanfaat :)

Kamis, 06 September 2012

Dinus Expo

Kali ini aku bakal jelasin tentang Dinus Expo.. :D
Dinus Expo nggak seperti Dinus Ospek yang disuruh membuat dan membawa barang - barang, di sini kami bisa menggunakan pakaian bebas tapi harus sopan ^_^ Dinus Expo itu acara yg rutin diadakan di UDINUS setiap tahun. Dinus Expo berisi tentang pameran yg berisi UKM - UKM yg ada di UDINUS.
Acara pertama yaitu pembukaan oleh bapak rektor UDINUS, lalu setelah itu ada lomba - lomba yang diselenggarakan panitia. Ohh iya, di sini kakak - kakak panitita memberikan tugas untuk meminta stampel setiap UKM yg ada di UDINUS, jadi kami semua berkeliling dan berdesak - desakkan untuk mendapatkan stampel yang tidak sedikit jumlahnya ._. kami juga disuruh memilih UKM di sini, karena kebetulan aku suka nyanyi jadi aku ikut UKM PSM atau Paduan Suara Mahasiswa :D hahahaha.. Salah satu pertimbanganku buat ikut PSM ini yaitu PSM Gita Dian Nuswa pernah menjuarai juara 3 Nasional, hebat kan? tepuk tangan dong :D *prokprokprok
Pada saat kami semua sedang memutari area expo, ada hiburan menarik dari UKM Teater Kapling. Teater Kapling salah satu UKM yang maknyus.. :D UKM ini sudah terkenal pokoknya, gak kalah sama Teater di Univ hebat lainnya, tepuk tangan *prokprokprok
Ada satu UKM yg unik disini, yaitu E-GamelanKU, UKM ini isinya tentang memainkan gamelan tapi dengan cara elektronik, elektronik? ya bener :D jadi UDINUS sudah mengembangkan suatu aplikasi dimana kita bisa memainkan gamelan dengan menggunakan komputer, laptop, ipad dan juga android.. hebat ya :D

Nhah sekian tentang Dinus Expo, pokoknya maknyus2 dah UKM sama ORMA di UDINUS.. :D

Dinus Inside

Pasti kalian belum tau apa itu Dinus Inside, iya kan? ngaku deh?! *ehmaap ._.v
Dinus Inside adalah acara yang diperuntukkan bagi Mahasiswa Baru (MaBa) Universitas Dian Nuswantoro Semarang atau biasa kita sebut UDINUS. Acara ini berisi kegiatan yg memerkenalkan UDINUS kepada para mahasiswa barunya. Kalau di sekolah lain acara seperti ini disebut ospek, dan ospek biasanya identik dengan hal - hal yang berbau "perpeloncoan", namun di acara Dinus Inside ini tidak ada hal - hal yang seperti itu karena dalam dunia pendidikan yang dibutuhkan dan yang perlu ditonjolkan adalah segi intelektual bukan dari segi fisik, jadi hal - hal yang berbau fisik dianggap tidak mendidik dan tidak perlu. :D

Hari Pertama Dinus Inside    
Pada hari pertama kami dikumpulkan di area parkir gedung G. pada jam 5 pagi, area parkir tersebut disulap menjadi tempat tertutup yg bisa dibilang lumayan wow! ._. gimana nggak wow coba, area parkir yg lumayan luas itu sudah berubah menjadi tempat tertutup seperti tempat resepsi pernikahan, udah gitu di dalemnya dingin banget, AC portablenya banyak banget ._. acara pertama berisi jalan sehat, di sini bisa dapet banyak temen baru, lumayaann. :D setelah jalan - jalan yang rutenya tidak terlalu jauh, kami kembali berkumpul di area parkir gedung G. Kegiatan selanjutnya yaitu sarapan sambil diiringi band dari UKM Musik *klogaksalah :D* lalu acara berikutnya yaitu sesi ramah tamah bapak dan ibu yang mengelola UDINUS. lalu acara berikutnya diisi "ceramah" yang agak membosankan dan membuat ngantuk. Pada akhir acara sekitar jam 4 sore kami diberi tugas yang agak berat ._. kami disuruh membuat co card berbentuk monitor komputer, topi toga, tas dari kardus, ikat kepala berbentuk lope - lope (hati), dan tugas lainnya. Kami mengerjakan tugas ini sampai larut malam dengan susah payah, malah ada yang sampai baru tidur jam 2 pagi. ._.

Hari Kedua Dinus Inside
Pada hari kedua kami berangkat ke lapangan parkir gedung D pada jam setengah 7 dengan membawa atribut - atribut yang sudah dibuat semalam, untungnya atributku lengkap, jadi gak ada masalah deh :D
setelah berkumpul, kami digiring ke auditorium gedung E untuk mengikuti pembekalan tentang fakultas ilmu komputer UDINUS. Seperti biasa, agak membosankan dan membuat mata terasa ingin terpejam ._. setelah mendengarkan "ceramah" yang lumayan lama akhirnya kami dibawa keluar menuju ke gedung D lantai 5, karena aku di kelompok lima maka kelompokku dibawa ke ruang D.5.5. Di sana kami diberikan kuliah umum tentang beasiswa dan tentang sistem pembelajaran di UDINUS. Pada saat ishoma (istirahat, sholat, makan) kami diberi kesempatan untuk meminta tanda tangan kakak - kakak panitia. Kegiatan berikutnya kami diberikan kuliah umum tentang Program Internasional atau International Undergraduate Programme (IUP) di UDINUS, dan "ceramah - ceramah" lainnya.

Hari Ketiga Dinus Inside
Pada hari ketiga ini sama seperti hari kedua kami berkumpul di lapangan parkir gedung D, lalu kami dibawa kembali ke ruang D.5.5 . Acara kali ini agak berbeda karena lebih banyak diisi oleh kakak - kakak senior untuk mempromosikan UKM dan ORMA yg ada di UDINUS. Juga pada hari ini kami didatangi dosen yang akan menjadi dosen wali kamu di UDINUS, dosen tersebut menjelaskan tentang proses perkuliahan nanti, dan juga tentang SiAdin (Sistem Informasi Akademik).

Sekian tentang Dinus Inside yang bisa saya ceritakan, maaf kalau ada yang salah atau kurang.. ^_^v