Sabtu, 14 April 2012

ALU pada Komputer


ALU pada Komputer

Pernahkah teman-teman mendengar kata ALU? Mungkin yang pertama kali dibenak teman-teman adalah sebuah benda yang terbuat dari kayu untuk menumbuk beras. Benar! Namun, bukan itu yang saya maksud. ALU di sini adalah Arithmetic and Logic Unit yang dalam bahasa Inggris kamus adalah Unit logika dan Aritmatematika. ALU ini terletak di microprocessor (processor) baik yang bermerek Intel, Power PC, atau AMD. Sesuai dengan namanya, ALU bertindak untuk melakukan operasi aritmatik seperti pengurangan-penambahan dan operasi logika seperti lebih besar, lebih kecil, dan sama dengan.

Karakteristik dari ALU adalah sebagai berikut:

Melakukan kalkulasi: tambah, kurang, bagi, kali.
Melakukan operasi logika
Terletak pada CPU (microprocessor)
Melakukan kalkulasi terhadap bilangan integer (bulat) dan floating point (pecahan)
Khusus pada floating point, ALU terpisah dengan microprocessor (CPU) dengan nama FPU (Floating Point Unit) namun pada saat ini sudah terintegrasi dengan CPU
Proses penjumlahan seperti 5+2  memiliki dua komponen utama, yaitu operan dan operator. Operator pada persamaan tersebut  adalah ‘+’ dan yang bertindak sebagai operand adalah ’5′ dan ’2′. Hal ini penting saya upas karena akan digunakan untuk pembahasan selanjutnya.

Secara garis besar, posisi ALU pada kerja komputer dapat dilihat di bawah ini:








ALU akan bekerja setelah mendapat perintah dari Control Unit yang terletak pada processor. Contorl Unit akan memberi perintah sesuai dengan komando yang tertulis(terdapat) pada register. Jika isi register memberi perintah untuk melakukan proses penjumlahan, maka PC akan menyuruh ALU untuk melakukan proses penjumlahan. Selain perintah, register pun berisikan operand-operand. Setelah proses ALU selesai, hasil yang terbentuk adalah sebuah register yang berisi hasil atau suatu perintah lainnya. Selain register, ALU pun mengeluarkan suatu flag yang berfungsi untuk memberi tahu kepada kita tentang kondisi suatu processor seperti apakah processor mengalami overflow atau tidak.

ALU (Arithmethic and Control Unit) adalah bagian dari CPU yang bertanggung jawab dalam proses komputasi dan proses logika. Semua komponen pada CPU bekerja untuk memberikan asupan kepada ALU sehingga bisa dikatakan bahwa ALU adalah inti dari sebuah CPU. Perhitungan pada ALU adalah bentuk bilangan integer yang direpresentasikan dengan bilangan biner. Namun, untuk saat ini, ALU dapat mengerjakan bilangan floating point atau bilangan berkoma, tentu saja dipresentasikan dengan bentuk bilangan biner.



ALU mendapatkan data (operand, operator, dan instruksi) yang akan disimpan dalam register. Kemudian data tersebut diolah dengan aturan dan sistem tertentu berdasarkan perintah control unit. Setelah proses ALU dikerjakan, output akan disimpan dalam register yang dapat berupa sebuah data atau sebuah instruksi. Selain itu, bentuk output yang dihasilkan oleh ALU berupa flag signal. Flag signal ini adalah penanda status dari sebuah CPU.

Bilangan Ineger

Bilangan integer (bulat) tidak dikenal oleh komputer dengan basis 10. Agar komputer mengenal bilangan integer, maka para ahli komputer mengkonversi basis 10 menjadi basis 2. Seperti kita ketahui, bahwa bilangan berbasis 2 hanya terdiri atas 1 dan 0. Angka 1 dan 0 melambangkan bahwa 1 menyatakan adanya arus listrik dan 0 tidak ada arus listrik. Namun, untuk bilangan negatif, komputer tidak mengenal simbol (-). Komputer hanya mengenal simbol 1 dan 0.

Untuk mengenali bilangan negatif, maka digunakan suatu metode yang disebut dengan Sign Magnitude Representation. Metode ini menggunakan simbol 1 pada bagian paling kiri (most significant) bit. Jika terdapat angka 18 = (00010010)b, maka -18 adalah (10010010)b. Akan tetapi, penggunaan sign-magnitude memiliki 2 kelemahan. Yang pertama adalah terdaptnya -0 pada sign magnitude[0=(00000000)b; -0=(10000000)b]. Seperti kita ketahui, angka 0 tidak memiliki nilai negatif sehingga secara logika, sign-magnitude tidak dapat melakukan perhitungan aritmatika secara matematis. Yang kedua adalah, tidak adanya alat atau software satupun yang dapat mendeteksi suatu bit bernilai satu atau nol karena sangat sulit untuk membuat alat seperti itu. Oleh karena itu, penggunaan sign magnitude pada bilangan negatif tidak digunakan, akan tetapi diganti dengan metode 2′s complement.

Metode 2′s complement adalah metode yang digunakan untuk merepresentasikan bilangan negatif pada komputer. Cara yang digunakan adalah dengan nilai terbesar dari biner dikurangin dengan nilai yang ingin dicari negatifnya. Contohnya ketika ingin mencari nilai -18, maka lakukan cara berikut:

ubah angka 18 menjadi biner (00010010)b
karena biner tersebut terdiri dari 8 bit, maka nilai maksimumnya adalah 11111111
kurangkan nilai maksimum dengan biner 18 -> 11111111 – 00010010 = 11101101
kemudian, dengna sentuhan terakhir, kita tambahkan satu -> 11101101 + 00000001 = 11101110
Dengan metode 2′s complement, kedua masalah pada sign magnitude dapat diselesaikan dan komputer dapat menjalankan. Namun, pada 2′s complement, nilai -128 pada biner 8 bit tidak ditemukan karena akan terjadi irelevansi. Coba aja sendiri. Hhe.. maka untuk rentang 8 bit adalah -2^7 sampai dengan 2^7-1.

Penjumlahan dan pengurangan pada bilangan biner sama dengan penjumlahan biasa. Untuk lebih jelasnya, silahkan pembaca membaca buku Digital Design karya Manno.


Perkalian pada bilangan integer, pada komputer tidaklah sama ditempuh dengan cara yang sama dengan yang biasa kita lakukan. Untuk itu, digunakan suatu algoritma tertentu. Flow chart algoritma tersebut dapat temen-temen lihat di bawah ini
Cycle menunjukkan jumlah bit dari suatu bilangan binner. Pada contoh di atas, terdapat 4 cycle yang terjadi sehingga proses perkalian melibatkan 4 bit bilangan biner.

Algoritma di atas tidak berlaku pada bilangan bertanda atau bilangan negatif. Maka, untuk menyelesaikan persoalan tersebut digunakan algoritma Booth. Keuntungan dari algoritma Booth adalah dapat digunakan baik untuk bilangan bertanda atau bilangan non bertanda. Cukup praktis kan? Untuk Flow Chart dari algoritma Booth, bisa dilihat di bawah ini


hasil output adalah A Q
Untuk pembagian, dapat menggunakan algoritma sebagai berikut

Floating Point

Floating Point atau bilangan berkoma dalam ALU diubah dalam bentuk biner . Penempatan floating point (pada kasus 32 bit adalah lebar alamat)pada memori tersusun atas 1 bit sign of significant (bernilai 0 jika bilangan tersebut positif dan 1 untuk bilangan negatif), 8 bit biased exponent (menunjukkan bilangan exponennya yang ditambah dengan 11111111), dan 23 bit significant. Langkah-langkah pembuatan floating point pada komputer adalah:

Ubah menjadi bilangan biner
ubah (misal) 101.001, maka ubah menjadi 1.01001 x 2^3
ubah pangkat tersebut dalam biner sehingga 1.01001 x 2^11
karena bilangan tersebut adalah positif, maka bit sign magnitude berniai 0 [contoh]
untuk biased exponent, nilai 11 ditambah dengan 11111111 sehingga menjadi 00000010 [bit terdepan dibuang karena hanya 8 bit yang diterima]
bit siginificand diis dengan 01001000000000000000000
maka untuk 101.001, pada memori ditulis: 1 00000010 01001000000000000000000. Untuk penjumlahan dan pengurangan, dialakukan lebih rumit dari uraian di atas. hhe

Like
Be the first to like this post.
10 Comments on “ALU pada Komputer”
Fath Hadzami
September 21, 2010

Emm bole tanya ga?
misal ada soal:
30 – 20 = ?
gimana cara penyelesaiannya?
apa hrs menggunakan Metode 2′s complement ?

terima kasih

Reply
admin
September 21, 2010

iya. CPU saat ini menggunakan konsep 2′s complelment dalam penggunaan artimatika bilangan negatif. pada dasarnya CPU tidak dapat melakukan pengurangan. jadi untuk melakukan operasi tersebut, komputer menggunakan persamaan 30 + (-20). Nilai -20 adalah 2′s c dari 20.
Kalo mau lebih mantep lagi tentang aritmatika pada komputer, bisa dilihat di buku Digital Design, karya Manno atau Architecture and Organization Computer karya Stalling.

Wallahu’alam

Reply
Alam
October 29, 2010

Mkasih kawan… tugas orkom jadi terslesaiin….hahaha

Reply
admin
November 1, 2010

ok

Reply
gea
February 23, 2011

gan,, kenapa ya komputer itu cm mengenal perhitungan tambah dan kurang saja,, kenapa kog enggak mengenal pembagian dan perkalian,, suwun…

Reply
admin
March 8, 2011

itu akan berhubungan dengan perhitungan biner. saat in, processor baru bisa menghitung penjumlahan saja. tidak ada mesin yang bisa menjalankan sistem pengurangan, perkalian, dan pembagian. Selain biaya yang mahal untuk penelitian dan penerapannya, dengan menggunakan metode penjumlahan biner, segala operasi-operasi tersebut sudah dapat teratasi

wallahu’alam

Reply
mar
June 16, 2011

Bagaimana gambar perpindahan register pada saat penjumlan di ALU?

Reply
alif kurniawan
July 9, 2011

Coba aja liat di buku Computer Architecutre and Organization Karya W. Stalling. Di bagian CPU ada gambar secara jelas tentang perpindahan register. hheu

Reply
Apam Madani
July 8, 2011

gan, ane mu tanya kenapa sih komputer ko cuman mengenal 1 & 0 ? (pertanyaan ini udah bikin pale ane muter gan kaya roda becak)

Reply
alif kurniawan
July 9, 2011

kenapa cuman kenal 0 and 1? Karena komputer itu menggunakan arus listrik buat hidup.
0 itu artinya arus yang digunakan adalah 3 Ampere
1 itu artinya arus yang digunakan adalah 5 Ampere

atau
0 itu artinya gak ada arus listrik
1 itu artinya ada arus listrik

CMIIW

Reply

sumber:anyacatatankecil.wordpress.com/2010/06/12/alu-pada-komputer/

0 komentar:

Posting Komentar

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Bluehost