Anda di halaman 1dari 13

MODUL PERKULIAHAN

Arsitektur dan
Organisasi
Komputer
Aritmatika Komputer
(Penjumlahan & Pengurangan
Biner)

Fakultas Program Studi OnLine Kode MK Disusun Oleh

06
Ilmu Komputer Tenik Informatika W151700005 M. Arif Budiyanto, S.Kom, M.Hum

Abstract Kompetensi
Pada modul ini akan dibahas aritmatika Mahasiswa memahami dan dapat
dan unit logika (ALU), tugas dan fungsi menjelaskan aritmatika computer
ALU, struktur dan cara kerja pada ALU, penjumlahan dan pengurangan bilangan
Adder, operasi bilangan biner biner.
penjumlahan dan pengurangan.
Aritmatika

Aritmatika dan Unit Logika (ALU)

• Arithmatic and Logic Unit (ALU) adalah salah satu bagian/komponen dalam sistem
komputer yang berfungsi melakukan operasi/perhitungan aritmatika dan logika (seperti
penjumlahan, pengurangan dan beberapa logika lain).
• Aritmetika komputer  dibentuk dua jenis bilangan yang sangat berbeda  integer
dan floating point.
• ALU bekerja sama dengan 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.
• Semua elemen lain sistem komputer-control unit, register, memori, I/O  berfungsi
membawa data ke ALU untuk selanjutnya diproses dan kemudian mengambil kembali
hasilnya.
• ALU dan seluruh komponen elektronik  pada penggunaan perangkat logik digital
sederhana yang dapat menyimpan digit-digit biner dan membentuk operasi logik
Boolean sederhana.

Tugas dan Fungsi ALU

Tugas dari ALU adalah melakukan keputusan dari operasi logika sesuai dengan
instruksi program. Operasi logika (logical operation) meliputi perbandingan dua buah elemen
logika dengan menggunakan operator logika, yaitu :
 Sama dengan (=)
 Tidak sama dengan (<>)
 Kurang dari (<)
 Kurang atau sama dengan dari (<=)
 Lebih besar dari (>)
 Lebih besar atau sama dengan dari (>=)

2019 Arsitektur dan Organisasi Komputer Pusat Bahan Ajar dan eLearning
2 M. Arif Budiyanto, S.Kom, M.Hum http://www.mercubuana.ac.id
Arithmatic Logical Unit (ALU) juga 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, di mana 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

2019 Arsitektur dan Organisasi Komputer Pusat Bahan Ajar dan eLearning
3 M. Arif Budiyanto, S.Kom, M.Hum http://www.mercubuana.ac.id
instruction set yang ada pada mesin, tergantung dimana lingkungan instruction set itu
digunakan.

Struktur dan Cara Kerja Pada ALU

ALU akan bekerja setelah mendapat perintah dari Control Unit yang terletak pada
processor. Control 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 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, computer
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.
Pertama adalah terdapatnya -0 pada sign magnitude [0=(00000000)b; -
0=(10000000)b]. Seperti kita ketahui, angka 0 tidak memiliki nilai negatif sehingga secara

2019 Arsitektur dan Organisasi Komputer Pusat Bahan Ajar dan eLearning
4 M. Arif Budiyanto, S.Kom, M.Hum http://www.mercubuana.ac.id
logika, sign-magnitude tidak dapat melakukan perhitungan aritmatika secara matematis.
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:
a. ubah angka 18 menjadi biner (00010010)b
b. karena biner tersebut terdiri dari 8 bit, maka nilai maksimumnya adalah 11111111
c. kurangkan nilai maksimum dengan biner 18 -> 11111111 – 00010010 = 11101101
d. kemudian, dengan 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.

ADDER

Adder merupakan rangkain ALU (Arithmetic and Logic Unit) yang digunakan untuk
menjumlahkan bilangan. Karena adder digunakan untuk memproses operasi aritmatika,
maka adder juga sering disebut rangkaian kombinasional aritmatika. Ada 3 jenis Adder,
yaitu:
1. Rangkaian adder yang hanya menjumlahkan dua bit disebut Half Adder.
2. Rangkaian adder yang hanya menjumlahkan tiga bit disebut Full Adder.
3. Rangkaian adder yang menjumlahkan banyak bit disebut Paralel Adder.
·
Half Adder
Rangkain half adder merupakan dasar bilangan biner yang masing-masing hanya terdiri dari
satu bit, oleh karena itu dinamakan penjumlah tak lengkap.
1. Jika A=0 dan B=0 dijumlahkan, hasilnya S (Sum) = 0.
2. Jika A=0 dan B=0 dijumlahkan, hasilnya S (Sum) = 1.
3. Jika A=1 dan B=1 dijumlahkan, hasilnya S (Sum) = 0. Dengan nilai pindahan Cy
(Carry Out) = 1.

2019 Arsitektur dan Organisasi Komputer Pusat Bahan Ajar dan eLearning
5 M. Arif Budiyanto, S.Kom, M.Hum http://www.mercubuana.ac.id
Dengan demikian, half adder memiliki dua masukan (A dan B), dan dua keluaran (S dan
Cy).
A B S Cy

0 0 0 0

0 1 1 0

1 0 1 0

1 1 0 1

Dari tabel di atas, terlihat bahwa nilai logika dari Sum sama dengan nilai logika dari gerbang
XOR, sedangkan nilai logika Cy sama dengan gerbang logika AND. Dari tabel diatas, dapat
dibuat rangkaian half adder.

Full Adder
Full adder adalah mengolah data penjumlahan 3 bit bilangan atau lebih (bit tidak terbatas),
oleh karena itu dinamakan rangkaian penjumlah lengkap. Perhatikan tabel dibawah ini.

A B C S Cy

0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1

Paralel Adder
Paralel Adder adalah rangkaian Full Adder yang disusun secara paralel dan berfungsi untuk
menjumlahkan bilangan biner berapa pun bitnya, tergantung jumlah Full Adder yang
diparalelkan.

2019 Arsitektur dan Organisasi Komputer Pusat Bahan Ajar dan eLearning
6 M. Arif Budiyanto, S.Kom, M.Hum http://www.mercubuana.ac.id
Operasi Bilangan Biner

Seperti halnya bilangan desimal, pada bilangan biner kita juga dapat melakukan
operasi penjumlahan dan pengurangan. Bahkan pada bilangan ini juga dapat dilakukan
perkalian dan pembagian. Berikut ini adalah penjelasan singkat bagaimana proses
penjumlahan dan pengurangan yang terjadi pada bilangan biner.

Operasi Penjumlahan Bilangan Biner

Bilangan biner juga dapat dijumlahkan sebagaimana dapat kita lakukan untuk
bilangan desimal, adapun aturan penjumlahan bilangan biner sebagai berikut:

Dalam melakukan penjumlahan biasanya kita selalu melibatkan penjumlahan dengan


carry in. Carry in adalah nilai carry out yang akan dijumlahkan pada penjumlahan bilangan
berikutnya. Adapun pola penjumlahannya sama saja dengan pola penjumlahan bilangan
desimal, hanya saja bedanya disini kita hanya punya nilai angka 0 dan 1.

2019 Arsitektur dan Organisasi Komputer Pusat Bahan Ajar dan eLearning
7 M. Arif Budiyanto, S.Kom, M.Hum http://www.mercubuana.ac.id
Dengan aturan tersebut, kita dapat menjumlahkan bilangan biner seperti penjumlahan
bilangan desimal (dilakukan dari kanan ke kiri). Lebih jelasnya dapat dilihat seperti beberapa
contoh di bawah ini.

Contoh lain:
1. Berapakah: 11010,12 + 10111,02 

111
11010,1
_ 10111,0 +
110001,1

 11010,12 + 10111,02 = 110001,12

2. Berapakah: 1011,11012 + 11011,111012 

1 111 1
1011,11012
11011,111012 +
100111,101112

 11010,12 + 10111,02 = 100111,101112

2019 Arsitektur dan Organisasi Komputer Pusat Bahan Ajar dan eLearning
8 M. Arif Budiyanto, S.Kom, M.Hum http://www.mercubuana.ac.id
Operasi Pengurangan Bilangan Biner

Pengurangan pada sistem bilangan biner diterapkan dengan cara pengurangan


komplemen 1 dan pengurangan komplemen 2 di mana cara inilah yang digunakan oleh
komputer digital.

Adapun pengertian komplemen 1 adalah sebagai berikut :


1110 komplemen 1 nya adalah 0001
1101 komplemen 1 nya adalah 0010
0001 komplemen 1 nya adalah 1110
0111 komplemen 1 nya adalah 1000

Selanjutnya pengertian komplemen 2 adalah bilangan biner yang terjadi jika


ditambahkan 1 terhadap komplemen 1, yaitu :
Contoh untuk mencari komplemen 2 dari suatu bilangan biner.
1. Komplemen 2 dari 1100 adalah 0011 + 1 = 0100
2. Komplemen 2 dari 1011 adalah 0100 + 1 = 0101
3. Komplemen 2 dari 0101 adalah 1010 + 1 = 1011
4. Komplemen 2 dari 110010 adalah 001101 + 1 = 001110

1. Pengurangan Biner Menggunakan Komplemen 1


Bilangan biner yang akan dikurangi dibuat tetap dan bilangan biner sebagai
pengurangnya diubah ke bentuk komplemen 1, kemudian dijumlahkan. Jika dari
penjumlahan tersebut ada bawaan putaran ujung (end-around carry), maka bawaan tersebut
ditambahkan untuk mendapatkan hasil akhir. Lebih jelasnya dapat dilihat seperti contoh di
bawah ini.

Contoh 1:
① Berapakah 10112 – 01112

1011 → Bilangan biner yang dikurangi


1000 + → Komplemen 1 dari bilangan pengurangnya (01112)
10011
↳ end-around carry
0011 → Hasil penjumlahan tanpa end-around carry
1 + → end-around carry dari hasil penjumlahan
0100

2019 Arsitektur dan Organisasi Komputer Pusat Bahan Ajar dan eLearning
9 M. Arif Budiyanto, S.Kom, M.Hum http://www.mercubuana.ac.id
∴ 10112 – 01112 = 01002

② Berapakah 111102 – 100012

11110 → Bilangan biner yang dikurangi


01110 + → Komplemen 1 dari 100012
101100
↳ end-around carry
01100 → Hasil penjumlahan tanpa end-around carry
1 + → end-around carry dari hasil penjumlahan
01101

∴ 111102 – 100012 = 011012

Jika dari penjumlahan tersebut tidak terdapat bawaan putaran ujung, maka hasil
penjumlahan bilangan yang dikurangi dengan komplemen 1 bilangan pengurangnya adalah
bilangan negatif dimana hasil akhirnya negatif dari hasil komplemen 1 penjumlahan tadi.
Lebih jelasnya dapat dilihat beberapa contoh di bawah ini.

Contoh 2:
① Berapakah 011102 – 111102

01110 → Bilangan biner yang dikurangi


00001 + → Komplemen 1 dari 111102
01111
karena tidak ada end-around carry,
maka hasilnya adalah bilangan negatif (komplemen 1 dari 011112)

∴ 011102 – 111102 = – 100002

② Berapakah 010112 – 100012

01011 → Bilangan biner yang dikurangi


01110 + → Komplemen 1 dari 100012
11001
karena tidak ada end-around carry,
maka hasilnya adalah bilangan negatif (komplemen 1 dari 110012)

2019 Arsitektur dan Organisasi Komputer Pusat Bahan Ajar dan eLearning
10 M. Arif Budiyanto, S.Kom, M.Hum http://www.mercubuana.ac.id
∴ 010112 – 100012 = – 001102

2. Pengurangan Biner Menggunakan Komplemen 2


Bilangan biner yang dikurangi tetap kemudian bilangan biner sebagai pengurangnya
di komplemen 2, lalu dijumlahkan. Jika hasilnya ada bawaan (carry), maka hasil akhir adalah
hasil penjumlahan tersebut tanpa carry (diabaikan). Lebih jelasnya dapat dilihat beberapa
contoh di bawah ini.

Contoh:
① Berapakah 11002 – 00112

1100 → Bilangan biner yang dikurangi


1101 + → Komplemen 2 dari 00112
11001 → Carry diabaikan

∴ 11002 – 00112 = 10012

② Berapakah 1100002 – 0111102


110000 → Bilangan biner yang dikurangi
100001 + → Komplemen 2 dari 0111102
1010001 → Carry diabaikan

∴ 1100002 – 0111102 = 0100012

Sekarang bagaimana kalau hasil penjumlahan dari bilangan yang dikurangi dengan
komplemen 2 bilangan pengurangnya tanpa bawaan? Untuk menjawab ini, maka caranya
sama seperti pengurangan komplemen 1, dimana hasil akhirnya negatif dan hasil
penjumlahan tersebut di komplemen 2 merupakan hasil akhirnya. Lebih jelasnya dapat
dilihat seperti contoh di bawah ini.

Contoh:
① Berapakah 011112 – 100112
01111 → Bilangan biner yang dikurangi

2019 Arsitektur dan Organisasi Komputer Pusat Bahan Ajar dan eLearning
11 M. Arif Budiyanto, S.Kom, M.Hum http://www.mercubuana.ac.id
01101 + → Komplemen 2 dari 100112
11100
Karena tidak ada carry,
maka hasilnya adalah bilangan negatif (komplemen 2 dari 111002)

∴ 011112 – 100112 = – 001002

② Berapakah 100112 – 110012

10011 → Bilangan biner yang dikurangi


00111 + → Komplemen 2 dari 110012
11010
Karena tidak ada carry,
maka hasilnya adalah bilangan negatif (komplemen 2 dari 110102)

∴ 100112 – 110012 = – 001102

2019 Arsitektur dan Organisasi Komputer Pusat Bahan Ajar dan eLearning
12 M. Arif Budiyanto, S.Kom, M.Hum http://www.mercubuana.ac.id
Daftar Pustaka

Bonatia, Wahyu. P. (2012). Operasi Perhitungan Pada Sistem Bilangan. Diakses pada 25
Maret 2018. https://bespus-community.blogspot.co.id/2012/11/operasi-perhitungan-
pada-sistem-bilangan.html

Harianja. (2015). Penjumlahan dan Pengurangan Bilangan Biner. Diakses pada 25 Maret
2018. http://www.uniksharianja.com/2015/04/penjumlahan-dan-pengurangan-
bilangan.html.

Ladjamuddin, Al-Bahra Bin. (2005). Organisasi dan Arsitektur Komputer. Tangerang:


STMIK/AMIK PGRI.

Lestari, Dea Ayu. (2015). Aritmatika Komputer. Diakses pada 25 Maret 2018.
http://isdesember.blogspot.co.id/2014/11/aritmatika-komputer.html

Stalling, William. (2004). Computer Organization and Architecture. USA: Prentice-Hall, Inc.

Syahrul. (2010). Arsitektur dan Organisasi Komputer. Yogyakarta: Andi.

UMB. (2013). Modul-modul Kuliah Arsitektur dan Organisasi Komputer. Jakarta: Universitas
Mercu Buana.

2019 Arsitektur dan Organisasi Komputer Pusat Bahan Ajar dan eLearning
13 M. Arif Budiyanto, S.Kom, M.Hum http://www.mercubuana.ac.id

Anda mungkin juga menyukai