ARITMATIKA INTEGER
Nama : Kasnadi
Npm : 21312070
kelas : IF 21B
- Representasi Integer oleh Biner
› Representasi Unsigned Integer
› Representasi nilai tanda (sign magnitude)
› Representasi Komplemen dua (two’s complement)
a.Representasi Unsigned Integer
› Untuk Keperluan penyimpanan dan pengolahan Komputer diperlukan bilangan biner yang terdiri atas angka 1 dan 0
› Suatu word 8 bit digunakan untuk menyatakan bilangan desimal 0 hingga 255
› Contoh
0000 0000 = 0
0000 0001 = 1
1000 0001 = 128
1111 1111 = 255
Kelemahannya adalah
› Hanya dapat menyatakan bilangan positif saja
› Sistem ini tidak bisa digunakan untuk menyatakan bilaingan integer negatif
b.Representasi Nilai Tanda
› Berangkat dari kelemahan metode unsigned integer
› Dikembangkan beberapa konvensi untuk menyatakan nilai integer negatif
› Contoh :
› 0 001 0101 = +21
› 1 001 0101 = – 21
› 0 111 1111 = +127
› 1 111 1111 = – 128
Kelemahahnnya adalah :
› Masalah Pada Operasi Aritmatika penjumlahan dan pengurangan yang memerlukan pertimbangan tanda maupun nilai bilangan
› Adanya representasi ganda pada bilangan 0
› 0 000 0000 = 0
› 1 000 0000 = 0
c.Representasi Komplemen dua (two’s complement)
› Merupakan perbaikan dari metode nilai tanda yang memiliki kekurangan pada operasi penjumlahan dan pengurangan , serta representasi bilangan nol
› Sistem bilangan dalam komplemen dua menggunakan bit paling berarti (paling kiri) sebagai bit tanda dan sisanya sebagai bit nilai seperti pada metode nilai tanda
› Tetapi mempunyai perbedaan untuk representasi bilangan negatifnya.
› Bilangan negatif dalam metode komplemen dua dibentuk dari
– Komplemen satu dari bilangan biner semual (yang bertanda positif )
– Menambahkan 1 pada LSB nya
– Diperolehlah bilangan negatifnya
› Contoh :
› +21 = 0001 0101
› Bilangan negatifnya dibentuk dengan cara :
› +21 = 0001 0101
› Dibalik menjadi = 1110 1010
› Ditambahkan dengan 1 pada LSB ——————————– + 1
› Menjadi = 1110
1011 = – 21
Operasi Aritmatika Integer
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. Sehingga sirkuit elektronik di ALU yang digunakan untuk melaksanakan operasi aritmatika ini disebut adder. 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 arithmatika.
STRUKTUR DAN CARA KERJA PADA ALU
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 suatuperintah 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 dikena 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, 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.
1.Penjumlahan dan pengurangan
-Pada sembarang keadaan, hasil operasi dapat lebih besar dari yang dapat ditampung ukuran word yang digunakan.
-Overflow
-Bila terjadi overflow, ALU harus membersihkan sinyal tentang keadaan ini sehingga tidak terdapat usaha untuk menggunakan hasil operasi tersebut.
a. overflow
Untuk mendeteksi overflow, gunakan aturan : bila dua buah bilangan ditambahkan , dan keduanya positif atau keduanya negatif, maka overflow akan terjadi bila dan hanya bisa memiliki tanda yang berlawanan.
b. Adder
Pada proses penambahan yang ada di ALU diselesaikan dengan switch elektronik. Pertambahan dari dua buah digit binari (binary digit atau bit) dilakukan oleh elemen ALU yang disebut adder. Adder dibagi menjadi 2 jenis yaitu :
1. Half Adder
Fungsi dari half adder adalah menambahkan dua buah binary digit dengan hasil berupa pertambahan dan sebuah carry of. Input ada dua macam yaitu X dan Y, ssedangkan outputnya berupa Sum dan carry of. Pada half adder hasil carry of tidak ikut ditambahkan pada perhitungan selanjutnya.
2. Full Adder
Fungsi dari full adder adalah meenambahkan dua buah binary digit serta carry of dari perhitungan sebelumnya dengan hasil berupa pertambahan dan sebuah carry of. Input ada tiga macam yaitu X, Y, dan Ci (Carry of input yang dihasilkan oleh pertambahan sebelumnnya ) sedangkan outputnya berupa Sum dan Carry of output. Pada fulladder hasil carrry of ikut ditambahkan pada perhitungan selanjutnya.
FPU(Floating Point Unit). Komponen ini berfungsi untuk memproses data berupa bilangan floating point.
Sekumpulan daftar yang dapat digunakan untuk menampung data maupun hasil perhitungan yang belum selesai dengan sempurna. Komponen ini terkadang terdapat dalam CPU, tetapi tidak semuanya.
Memori internal CPU, biasanya berupa cache, seringkali disebut dengan istilah cache memori. Sekarang ini, prosesor-prosesor modern sudah dilengkapi komponen ini.Sedangkan prosesor-prosesor lama, banyak yang tidak memilikinya.
Cara kerja Prosesor
Prosesor berfungsi seperti kalkulator, hanya saja dengan kemampuan pemrosesan data yang jauh lebih besar.Fungsi utamanya adalah melakukan operasi aritmatika dan logika terhadap data.
Data tersebut diambil dari memori atau diperoleh dari alat input yang dioperasikan oleh operator seperti papan ketik (keyboard), mouse dan lainnya.Kerja prosesor ini dikontrol oleh sekumpulan instruksi software.Software tersebut diperoleh atau dibaca dari media penyimpan seperti harddisk, disket, CD, dan lainnya.Kemudian instruksi-instruksi tadi disimpan dalam RAM.Setiap instruksi diberi alamat unik yang disebut alamat memori.Untuk selanjutnya, prosesor akan mengakses data-data yang ada pada RAM, dengan cara menentukan alamat data yang dikehendaki.
Prosesor dan RAM dihubungkan oleh unit yang disebut bus.Saat sebuah program dijalankan, data akan mengalir dari RAM melalui bus, menuju ke prosesor.Di dalam prosesor, data ini di-dekode, kemudian berjalan ke ALU yang bertugas melakukan kalkulasi dan perbandingan.Kadang-kadang data disimpan sementara di register agar dapat diambil kembali dengan cepat untuk diolah.Setelah selesai, hasil pemrosesannya mengalir kembali ke RAM atau ke media penyimpan.Apabila data hasil perosesan tadi akan diolah lagi, maka data tersebut akan disimpan dalam register.Demikian seterusnya.
Bilangan yang ditangani oleh prosesor
Terdapat dua macam bilangan yang ditangani oleh prosesor, yaitu bilangan fixed point dan bilangan floating point.
Bilangan fixed point adalah bilang yang memiliki nilai digit spesifik pada salah satu titik desimalnya,Hal ini akan membatasi jangkauan nilai yang mungkin untuk angka-angka tersebut, namun, hal ini justru dapat dihitung oleh prosesor.
Sedangkan bilangan floating point, adalah bilangan yang diwujudkan dalam notasi ilmiah, yaitu berupa angka pecahan desimal dikalikan dengan angka 10 pangkat bilangan tertentu. Misalnya: 705,2944 x 109, atau 4,3 x 10-7.Cara penulisan angka seperti ini merupakan cara singkat untuk menuliskan angka yang nilainya sangat besar maupun sangat kecil.Bilangan seperti ini banyak digunakan dalam pemrosesan grafik dan kerja ilmiah.Proses aritmatika bilangan floating point memang lebih rumit dan prosesor membutuhkan waktu yang lebih lama untuk mengerjakannya, karena mungkin akan menggunakan beberapa siklus detak (clock cycle) prosesor.
Oleh karena itu, beberapa jenis komputer menggunakan prosesor sendiri untuk menangani bilangan floating point.Prosesor yang khusus menangani bilangan floating point disebut Floating Point Unit (FPU) atau disebut juga dengan nama math co-processor.FPU dapat bekerja secara paralel dengan prosesor.Dengan demikian proses penghitungan bilangan floating point dapat berjalan lebih cepat.Keberadaan FPU integrated (bersatu dengan prosesor) sudah menjadi kebutuhan standart komputer masa kini, karena banyak sekali aplikasi-aplikasi yang beroperasi menggunakan bilangan floating point.