Jumat, 28 Oktober 2016

MAPPING CACHE MEMORY



       Mapping (Pemetaan)

       Saluran cache lebih sedikit dibandingkan dengan blok memori utama sehingga diperlukan algoritma untuk pemetaan blok-blok memori utama ke dalam saluran cache. Selain itu, diperlukan juga alat untuk menentukan blok memori utama mana yang sedang memakai saluran cache. Pemilihan fungsi pemetaan akan menentukan bentuk organisasi cache. Terdapat tiga metode yang digunakan yaitu :

1.      Pemetaan Langsung (Direct Mapping)

      Pemetaan langsung adalah teknik yang paling sederhana, yaitu teknik ini memetakan blok memori utama hanya ke sebuah saluran cache saja. Jika suatu block ada di cache, maka tempatnya sudah tertentu. Keuntungan dari direct mapping adalah sederhana dan murah. Sedangkan kerugian dari direct mapping adalah suatu blok memiliki lokasi yang tetap (jika program mengakses 2 blok yang di map ke line yang sama secara berulang-ulang, maka cache-miss sangat tinggi).

Berikut penjelasan lebih detail :

  •   Setiap blok pada main memory dipetakan dengan line tertentu pada cache. i = j modulo C di mana i adalah nomor line pada cache yang digunakan untuk meletakkan blok main memory ke-j.
  •   Jika M = 64 dan C = 4, maka pemetaan antara line dengan blok menjadi.

    seperti berikut :

  • Line 0 can hold blocks 0, 4, 8, 12, ...
  • Line 1 can hold blocks 1, 5, 9, 13, ...
  •  Line 2 can hold blocks 2, 6, 10, 14, ...
  • Line 3 can hold blocks 3, 7, 11, 15, ...
A.Pada cara ini, address pada main memory dibagi 3 field atau bagian, yaitu:
*  Tag identifier.
*  Line number identifier
*  Word identifier (offset)
B.Word identifier berisi informasi tentang lokasi word atau unit addressable lainnya dalam line Tertentu pada cache.
C. Line identifier berisi informasi tentang nomor fisik (bukan logika) line pada chace
D. Tag identifier disimpan pada cache bersama dengan blok pada line.

*  Untuk setiap alamat memory yang dibuat oleh CPU, line tertentu yang menyimpan copy alamat tersebut ditentukan, jika blok tempat lokasi data tersebut sudah dikopi dari main memory ke cahce.
*   Tag yang ada pada line akan dicek untuk melihat apakah benar blok yang dimaksud ada line tsb.


 Gambar Organisasi Direct Mapping


Keuntungan Menggunakan Direct Mapping antara lain :

  •  Mudah dan Murah diimplementasikan.
  • Mudah untuk menentukan letak salinan data main memory pada chace.

Kerugian menggunakan Direct Mapping antara lain :
  •  Setiap blok main memory hanya dipetakan pada 1 line saja.
Terkait dengan sifat lokal pada main memory, sangat mungkin mengakses blok yang dipetakan pada line yang sama pada cache. Blok seperti ini akan menyebabkan seringnya sapu masuk dan keluar data ke/dari cache, sehingga hit ratio mengecil. Hit ratio adalah perbandingan antara jumlah ditemukannya data pada cache dengan jumlah usaha mengakses cache.



Gambar Contoh Pengalamatan Direct Mapping


2.      Pemetaan Asosiatif (Associative Mapping)

      Pemetaan asosiatif mengatasi kekurangan pemetaan langsung dengan cara mengizinkan setiap blok memori utama untuk dimuatkan ke sembarang saluran cache. Dengan pemetaan assosiatif, terdapat fleksibilitas penggantian blok ketika blok baru dibaca ke dalam cache. Kekurangan pemetaan asosiatif yang utama adalah kompleksitas rangkaian yang diperlukan untuk menguji tag seluruh saluran cache secara parallel, sehingga pencarian data di cache menjadi lama.

  •   Memungkinkan blok diletakkan di sebarang line yang sedang tidak terpakai.
  • Diharapkan akan mengatasi kelemahan utama Direct Mapping.
  • Harus menguji setiap cache untuk menemukan blok yang diinginkan.
o   Mengecek setiap tag pada line
o   Sangat lambat untuk cache berukuran besar.

  •   Nomor line menjadi tidak berarti. Address main memory dibagi menjadi 2 field saja, yaitu tag dan word offset.
Gambar Organisasi Associative Mapping
  •   Melakukan pencarian ke semua tag untuk menemukan blok.
  •  Cache dibagi menjadi 2 bagian :
o   lines dalam SRAM
o   tag dalam associative memory



Gambar Contoh Associative Mapping



3.      Pemetaan Asosiatif Set (Set Associative Mapping)

     Pada pemetaan ini, cache dibagi dalam sejumlah sets. Setiap set berisi sejumlah line. Pemetaan asosiatif set memanfaatkan kelebihan-kelebihan pendekatan pemetaan langsung dan pemetaan asosiatif.
  • Merupakan kompromi antara Direct dengan Full Associative Mapping.
  •  Membagi cache menjadi sejumlah set (v) yang masing-masing memiliki sejumlah line (k)
  • Setiap blok dapat diletakkan di sebarang line dengan nomor set: nomor set = j modulo v
Gambar K-way Associative Mapping

  • Jika sebuah set dapat menampung X line, maka cache disebut memiliki X way set associative cache.
  • Hampir semua cache yang digunakan saat ini menggunakan organisasi 2 atau 4-way set associative mapping.
Gambar Contoh pengalamatan Way Associative Mapping



Kamis, 20 Oktober 2016

Konversi,Penjumlahan,Pengurangan,Perkalian dan Pembagian

1. KONVERSI

30219(desimal)=......(biner)

30219/2 =15109 sisa bagi 1
15109/2=7554 sisa bagi 1
7554/2=3777  sisa bagi 0
3777/2=1888 sisa bagi 1
1888/2=944 sisa bagi 0
944/2=472 sisa bagi 0
472/2=236 sisa bagi 0
236/2=118 sisa bagi 0
118/2=59 sisa bagi 0
59/2=29 sisa bagi 1
29/2=14 sisa bagi 1
14/2=7 sisa bagi 0
7/2=3 sisa bagi 1
3/2=1 sisa bagi 1
Hasil Konversi 111011000001011


30220(desimal)=......(biner)

30220/2=15110 sisa bagi 0
15110//2=7555 sisa bagi 0
7555/2=3777 sisa bagi 1
3777/2=1888 sisa bagi 1
1888/2=944 sisa bagi 0
944/2=472 sisa bagi 0
472/2=236 sisa bagi 0
236/2=118 sisa bagi 0
118/2=59 sisa bagi 0
59/2=29 sisa bagi 1
29/2=14 sisa bagi 1
14/2=7 sisa bagi 0
7/2=3 sisa bagi 1
3/2=1 sisa bagi 1
Hasil Konversi 111011000001100


2.PENJUMLAHAN 

 111011000001011+111011000001100=....?

      111011000001011
      111011000001100
                                           +
     1110110000010111

3.PENGURANGAN

111011000001011-111011000001100=....?

     111011000001011
     111011000001100
                                                                -
111111111111111111111111111111


4.PERKALIAN

1 1 1 0 1  1 0 0 0 0 0 1  1  0  0 
1 1 1 0 1  1 0 0 0 0 0 1  1  0  0
                                                         X
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
1 1 1 0 1 1 0 0 0 0 0 1 0 1 1
1 1 1 0 1 1 0 0 0 0 0 1 0 1 1
0 0 0 0 0 0 0 0 0 0 0 0 0  0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 1 1 0 1 1 0 0 0 0 0 1 0 1 1
1 1 1 0 1 1 0 0 0 0 0 1 0 1 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 1 1 0 1 1 0 0 0 0 0 1 0 1 1
1 1 1 0 1 1 0 0 0 0 0 1 0 1 1
1 1 1 0 1 1 0 0 0 0 0 1 0 1 1
                                                                                               +
1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 0 0 1 1 0 1 0 1 0 0 0 0 1 0 0 


5.PEMBAGIAN

111011000001011 ÷ 111011000001100 =  1





Data Type pada Ms.Access beserta Fungsi Field Size dan Format pada setiap Data Type

Nama               : Monalisa Sirait
Nim                 : 153303030219
Jurusan            : Teknik Informatika Pagi A
Matkul             : Basis Data


Jelaskan Pengertian Data Type pada Ms.Access beserta Fungsi Field Size dan Format pada setiap Data Type?

JAWABAN:

1.      Text
Text digunakan untuk field alfanumeric (misalnya nama, alamat, kode pos, dll), jadi tipe data text disini memiliki banyak karakter dan karakter tersebut ialah 255 karakter pada setiap fieldnya. 
2.      Memo
Tipe data memo sama halnya dengan text, tetapi tipe data memo dapat menampung kurang lebih 64.000 karakter untuk tiap fieldnya, tapi tidak bisa diurutkan/diindekskan. 
3.      Number
Tipe data Number dapat digunakan untuk menyimpan data numeric yang akan digunakan untuk proses perhitungan matematis (misalnya mengurangi, menambahkan, mengkali dan membagi suatu bilangan) 

Pengertian tiap type di dalam Field Size
Ø  Byte = Terdiri dari angka 0 s/d 255 (tidak ada pecahan.
Jlh decimal : Tidak Ada
Ø  Integer = Terdiri dari angka -32,768 s/d 32,767 (tidak ada pecahan)
Jlh decimal : Tidak Ada
Ø  Long Integer = Terdiri dari angka -2,147,483,648 s/d 2,147,483,647 (tidak ada pecahan). Long Integer merupakan pilihan default ketika jenis number dipilih sebagai data type suatu field.
Jlh decimal : Tidak Ada.
Ø  Single = Terdiri dari angka -3.402823E38 s/d -1.401298E-45 untuk bilangan negatif dan dari 1.401298E-45 s/d 3.402823E38 untuk bilangan positif dan bilangan 0.
Jlh decimal : 7
Ø  Double = Terdiri dari angka -1.79769313486231E308 s/d -4.94065645841247E-324 untuk bilangan negatif dan dari 1.79769313486231E308 s/d 4.94065645841247E-324 untuk bilangan positif dan bilangan 0.
Jlh decimal : 15
Ø  Replication ID = Globally unique identifier(GUID), yaitu jenis number yang mempunyai format {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} dimana masing-masing x merupakan bilangan hexa decimal dari 0 s/d F. Misalnya {002A56CF-69E3-50D8-9023-05435F309C3A}. Replication ID umumnya digunakan untuk jenis field AutoNumber pada database replikasi (tiruan)
Ø  Decimal = Untuk jenis decimal, dibagi lagi menjadi dua macam:
o   Terdiri dari angka -10^38-1 s/d 10^38-1 (untuk SQL Server Database)
o   Terdiri dari angka -10^28-1 s/d 10^28-1 (untuk Ms Access Database)
Jlh decimal : 28

Pengertian tiap type dalam Format
Ø  General Number : merupakan nilai default. Menampilkan bilangan sebagaimana bilangan tersebut dimasukkan.
Ø  Currency : Menggunakan pemisah ribuan, menampilkan bilangan negative di dalam kurung.
Ø  Euro : Euro : Menggunakan mata uang euro.
Ø  Fixed : Menampilkan paling sedikit satu digit bilangan.
Ø  Standart : Menggunakan pemisah ribuan.
Ø  Percent : Mengalikan nilai yang dimasukkan dengan 100 dan menambahkan tanda persen (%)
Ø  Scientific : Menggunakan notasi standart sains.

4.      Date and Time
Tipe data Data/time digunakan untuk data yang berjenis tanggal, waktu atau penggabungan dari tanggal dan waktu.

Pengertian tiap type dalam Format
Ø  General Date   = Hanya tanggal tanpa jam, jam tanpa tanggal, atau jam dan tanggal.
 Contoh: 10/17/2016,07:16:00 PM.
Ø  Long Date       =Hari disertai tanggal.
 Contoh: Monday, Oktober 17, 2016.
Ø  Medium Date = Tanggal dimana bulan hanya 3 karakter pertama.
Contoh: 17-Oktober-16.
Ø  Short Date       = Hari dan bulan masing masing 2 digit.
Contoh: 10/17/2016.
Ø  Long Time       = Format jam normal.
Contoh: 7:21:10 PM.
Ø  Medium Time = Format jam dalam PM atau AM.
Contoh: 7:21 PM.
Ø  Short Time      = Format jam tanpa detik.
Contoh: 19.21

5.      Currency
Tipe data Currency yaitu data dengan jenis number, hanya saja pada awal angka selalu disertakan symbol currency default sesuai dengan regional setting yang digunakan, misalnya RP. $, dll. Currency dapat menggunakan angka dengan 15 dgiit dibelakang desimal dan 4 digit sesudah desimal 

Pengertian tiap type dalam Format
Ø  General Number : merupakan nilai default. Menampilkan bilangan sebagaimana bilangan tersebut dimasukkan.
Ø  Currency : Menggunakan pemisah ribuan, menampilkan bilangan negative di dalam kurung.
Ø  Euro : Menggunakan mata uang euro.
Ø  Fixed : Menampilkan paling sedikit satu digit bilangan.
Ø  Standart : Menggunakan pemisah ribuan.
Ø  Percent : Mengalikan nilai yang dimasukkan dengan 100 dan menambahkan tanda persen (%)
Ø  Scientific : Menggunakan notasi standart sains.

6.      AutoNumber
Tipe data Auto Number adalah data yang tidak dapat kita isi secara manual melainkan ia terisi secara otomatis oleh Access, baik secara menjumlah ataupun random (acak) , AutoNumber biasanya digunakan untuk penomoran. 

Pengertian tiap Type dalam Field Size
Ø  Long Integer = Terdiri dari angka -2,147,483,648 s/d 2,147,483,647 (tidak ada pecahan). Long Integer merupakan pilihan default ketika jenis number dipilih sebagai data type suatu field.
Jlh decimal : Tidak Ada.
Ø  Replication ID = Globally unique identifier(GUID), yaitu jenis number yang mempunyai format {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} dimana masing-masing x merupakan bilangan hexa decimal dari 0 s/d F. Misalnya {002A56CF-69E3-50D8-9023-05435F309C3A}. Replication ID umumnya digunakan untuk jenis field AutoNumber pada database replikasi (tiruan).
Jlh decimal : Tidak Ada

7.      Yes/No
Yes/No Adalah sebuah tipe data dengan jenis hanya 2 pillihan yaitu True (1) atau False (0). Format yang tersedia adalah : Yes/No, True/False, dan On/Off.

Pengertian tiap Type dalam Format
Ø  True/False(true)           = diisi jika bernilai benar/salah
Ø  Yes/No(yes)                = diisi dengan bilangan pertanyaan yang menggunakan yes/no
Ø  On/Off(on)                  = menghidupkan atau mematikan

8.      OLE Object
OLE Object Adalah sebuat tipe data yang diambil dari system OLE seperti Microsoft Excel spreadsheet, Microsoft Word document, graphics, sounds, atau data-data biner lainnya baik yang dilink ataupun dimasukkan secara permanen (embedded) kedalam table Microsoft Access. Dalam Microsoft Access, bidang Object OLE dapat menyimpan data seperti Microsoft Word atau Microsoft Excel dokumen, gambar, suara, dan jenis-jenis data biner yang dibuat dalam program lain. Artikel ini menyediakan kode Visual Basic yang menggunakan kontrol OLE dan metode CreateEmbed untuk menyimpan file bitmap dalam bidang Object Access OLE.


9.      Hyperlink
Hyperlink Adalah sebuah tipe data yang digunakan untuk menyimpan alamat internet atau file yang ditunjukkan melalui alamat URL. Menambahkan hyperlink ke database Access 2007 adalah sederhana sekali Anda telah mengedit tipe data lapangan untuk menerima hyperlink. Ingat bahwa Anda tidak dibatasi untuk hanya hyperlink HTTP. Access 2007 dapat menyimpan file, FTP, HTTP, MailTo, dan Berita hyperlink juga.
10.  Attachment
Attachement Adalah tipe data yang digunakan untuk menyimpan attachment file yang berformat apa saja (bebas, bisa file gambar, file suara, dll). Anda menggunakan fitur Lampiran di Microsoft Office Access 2007 untuk menambah satu atau lebih potongan-potongan data - dokumen Microsoft Office Word 2007, Microsoft Office PowerPoint 2007 presentasi, gambar, dan sebagainya - untuk catatan dalam database Anda. Artikel ini memberikan informasi latar belakang dan langkah-langkah yang diperlukan untuk mengkonfigurasi database untuk menggunakan lampiran, dan untuk melampirkan dan mengelola data.
11.  Lookup Wizard

Lookup Wizard Adalah Tipe Data Yang Dapat Menggabungkan Beberapa Tabel untuk Menampilkan Data. Atau dengan kata lain  lookup Wizard dapat menampilkan nilai user friendly yang terikat ke nilai lain dalam tabel data sumber atau daftar nilai. Contoh, dalam pencarian dapat menampilkan nama kontak yang terikat ke nomor ID kontak masing-masing di tabel lain.

Kamis, 13 Oktober 2016

ARITHMATIC LOGIC UNIT

Menerangkan ALU dan Menjelaskan ALU?

JAWAB :
Pengertian ALU ( Arimatic Logical Unit )

  
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, 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.

Operasi Pada ALU ( Arimatic Logical Unit )


Operasi aritmatika adalah operasi penjumlahan dan pengurangan, sedangkan contoh operasi logika adalah logika AND dan OR. ALU melakukan operasi aritmatika yang lainnya seperti pengurangan, dan pembagian dilakukan dengan dasar penjumlahan. ALU melakukan operasi aritmatika dengan dasar pertambahan, sedang operasi aritmatika yang lainnya, seperti pengurangan, perkalian, dan pembagian dilakukan dengan dasar penjumlahan. Sehingga sirkuit elektronik di ALU yang digunakan untuk melaksanakan operasi aritmatika ini disebut adder.

Tugas Dan Fungsi ALU ( Arimatic Logical Unit )

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 :

a. sama dengan (=)
b. tidak sama dengan (<>)
c. kurang dari (<)
d. kurang atau sama dengan dari (<=)
e. lebih besar dari (>)
f. lebih besar atau sama dengan dari (>=)

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, 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.
Struktur Dan Cara Kerja Pada ALU ( Arimatic Logical Unit )

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 Logic 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. 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:
1. ubah angka 18 menjadi biner (00010010)b
2. karena biner tersebut terdiri dari 8 bit, maka nilai maksimumnya adalah 11111111
3. kurangkan nilai maksimum dengan biner 18 -> 11111111 – 00010010 = 11101101
4. 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 ALU ( Arimatic Logical Unit )

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.

1. 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.

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 diatas, 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.

2. 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


3. 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. Gambar dibawah ini menunjukan Paralel Adder yang terdiri dari 4 buah Full Adder yang disusun paralel sehingga membentuk sebuah penjumlahan 4 bit.