Professional Documents
Culture Documents
Sistem bilangan
Sistem bilangan merupakan tata aturan atau susunan dalam menentukan nilai suatu bilangan,
antara lain sistem desimal, biner, hexadesimal, oktal, BCD, Grey Code,
Exess-3 dan lain-lainnya yang dibagi berdasarkan basis yang digunakan dalam penentuan
nilai
dari bilangan tersebut. Jenis-jenis Sistem bilangan yaitu:
1. Desimal
2. Biner
3. Heksadesimal
4. Oktal
1. Desimal
Merupakan suatu sistem bilangan yang berbasis 10 (tiap bilangan dalam sistem tersebut
dikalikan dengan 10x),
terdiri dari angka : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
2. Biner
Merupakan suatu system bilangan yang berbasiskan 2 (tiap bilangan dalam sistem tersebut
dikalikan dengan 2x),
terdiri dari angka 0 dan 1.
3. Heksadesimal
Merupakan suatu sistem bilangan yang berbasiskan 16 (tiap bilangan dalam sistem tersebut
dikalikan dengan 16x), terdiri dari 10 angka yaitu 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 dan 6 huruh yaitu
A, B, C, D, E, F.
4. Oktal
Merupakan suatu sistem bilangan yang berbasiskan 8 (tiap bilangan dalam sistem tersebut
dikalikan dengan 8x), terdiri dari delapan angka yaitu 0, 1, 2, 3, 4, 5, 6, 7.
6. Gray Code
Merupakan sistem bilangan yang memliki sistem mirip dengan biner hanya saja dalam
susunan bilangan ini yang boleh berubah pada urutan selanjutnya hanya 1 angka. Misalnya
001 berikutnya 011 berikutnya 010 dan selanjutnya
7. Excess-3
Merupakan sistem bilangan yang secara sederhana dapat diartikan sebagai bilangan biner
yang memiliki lebih tiga angka dari bilangan biner biasa. Contohnya 0 = 011, 1 = 100, 2 =
101 dan seterusnya.
1. Unsigned Integer
-Untuk keperluan penyimpanan dan pengolahan komputer diperlukan bilangan biner yang
terdiri atas 0 dan 1
-1 byte (8 bit binary digit) dapat digunakan untuk menyatakan bilangan desimal dari 0 – 255
Kelemahan Unsigned Integer
- hanya dapat menyatakan bilangan positif
- sistem ini tidak bisa digunakan untuk menyatakan bilangan integer negatif
2. Representasi Nilai Tanda (sign magnitude)
-Karena kelemahan unsigned integer
-Dikembangkan beberapa konvensi untuk menyatakan bilangan integer negatif
Konvensi
-Perlakuan bit yang paling kiri (MSB) di dalam byte sebagai tanda
-Bila MSB = 0 maka bilangan tersebut positif
-Jika MSB = 1 maka bilangan tersebut negatif
Kelemahan sign magnitude
Adanya representasi ganda pada bilangan 0, yaitu
3. Representasi Bias
-Digunakan untuk menyatakan exponen (bilangan pemangkat) pada representasi floating
point
-Dapat menyatakan bilangan bertanda, yaitu dengan mengurutkan dari bilangan negative
terkecil dapat dijangkau sampai bilangan positif paling besar yang bisa dijangkau
-Mengatasi permasalahan pada sign magnitude yaitu +0 dan -0
4. Representasi komplemen 2 (two’s complement)
Merupakan perbaikan dari representasi nilai bertanda (sign magnitude) yang mempunyai
kekurangan pada operasi penjumlahan dan pengurangan serta representasi nilai 0
1. Sistem bilangan dalam 2’s complement menggunakan bit paling kiri (MSB) sebagai bit
tanda
dan sisanya sebagai bit nilai seperti pada sign magnitude
Unit Aritmetika dan Logika merupakan bagian pengolah bilangan dari sebuah komputer. Di
dalam operasi aritmetika ini sendiri terdiri dari berbagai macam operasi diantaranya adalah
operasi penjumlahan, pengurangan, perkalian, dan pembagian. Mendesain ALU juga
memiliki cara yang hampir sama dengan mendesain enkoder, dekoder, multiplexer, dan
demultiplexer. Rangkaian utama yang digunakan untuk melakukan perhitungan ALU adalah
Adder.
Adder
Rangkaian ALU (Arithmetic and Logic Unit) yang digunakan untuk menjumlahkan bilangan
dinamakan dengan Adder. Karena Adder digunakan untuk memproses operasi aritmetika,
maka Adder juga sering disebut rangkaian kombinasional aritmetika. ALU akan dijelaskan
lebih detail pada bab 3. Ada 2 jenis Adder :
1. Rangkaian Adder yang hanya menjumlahkan dua bit disebut Half Adder.
2. Rangkaian Adder yang menjumlahkan tiga bit disebut Full Adder.
3. Rangkaian Adder yang menjumlahkan banyak bit disebut paralel Adder
Half Adder
Rangkaian half adder merupakan dasar penjumlahan 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=1 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 2 masukan (A dan B) dan dua keluaran (S dan
Cy).
Dari tabel diatas, terlihat bahwa nilai logika dari Sum sama dengan nilai logika dari gerbang
XOR, sedangkan nilai logika Cy sama dengan nilai dari gerbang logika AND. Dari tabel
tersebut, dapat dibuat rangkaian half adder seperti pada gambar berikut:
Full Adder
Full adder mengolah penjumlahan untuk 3 bit bilangan atau lebih (bit tidak terbatas), oleh
karena itu dinamakan rangkaian penjumlah lengkap. Perhatikan tabel kebenaran dari Full
adder berikut :
Dari tabel diatas dapat dibuat persamaan boolean sebagai berikut :
S=ABC+ABC+ABC+ABC
S=AÅBÅC
Cy = A B C + A B C + A B C + A B C
Dengan menggunakan peta karnaugh, Cy dapat diserhanakan menjadi :
Cy = AB + AC + BC
Parallel Adder
Parallel Adder adalah rangkaian Full Adder yang disusun secara parallel dan berfungsi untuk
menjumlah bilangan biner berapapun bitnya, tergantung jumlah Full Adder yang
diparallelkan. Gambar berikut menunjukkan Parallel Adder yang terdiri dari 4 buah Full
Adder yang tersusun parallel sehingga membentuk sebuah penjumlah 4 bit.
Contoh:
Penjumlahan
Komputer hanya dapat melakukan proses aritmetika menggunakan bilangan biner. Semua
sistem bilangan harus diubah terlebih dahulu ke biner agar dapat diproses. Proses yang biasa
dilakukan oleh komputer untuk menjumlahkan sistem bilangan desimal biasanya adalah
menyandikan ke 8421BCD terlebih dahulu sebelum dijumlahkan. Sebelum mempelajari
tentang penjumlahan pada 8421BCD, ada baiknya mengetahui cara menjumlahkan bilangan
biner.
a. Penjumlahan Biner
Ada 4 kondisi yang terjadi pada penjumlahan biner yaitu apabila 0 + 0, 0 + 1, 1 + 0, dan 1 +
1. Jika yang terjadi adalah 1 + 1, kita tidak dapat menyatakan hasil jumlah dalam satu digit.
Tetapi kita harus melakukan penyimpanan (Carry Out) kedalam kolom yang lebih tinggi. Ini
berlaku untuk seluruh sistem bilangan. Sebagai contoh pada bilangan desimal 2 + 5 = 7
dengan carry out = 0, 9 + 9 = 8 dengan carry out = 1.
Contoh :
Penjumlahan 8421BCD
Sandi 8421BCD hanya menggunakan bilangan biner untuk 0 sampai 9, karena yang
disandikan hanya 1 digit angka desimal. Dalam penjumlahan yang perlu diperhatikan
adalah jika hasilnya lebih dari 9 sehingga akan dihasilkan auxillary carry (Carry dari
bilangan keempat LSB) maupun carry dari MSB.
Berikut adalah aturan penjumlahan sandi 8421BCD:
Jika jumlah biner dan jumlah BCD sama, yaitu AC (Auxillary Carry) = 0 dan Carry
= 0 maka tidak diperlukan aturan tambahan.
Contoh :
Bilangan 1 = 0 1 1 0 0 0 1 0 (BCD) = 6 2 (desimal)
Bilangan 2 = 0 0 1 0 0 1 0 1 (BCD) = 2 5 (desimal) +
Jika jumlah biner tidak sama dengan jumlah desimal maka memerlukan pengaturan
tambahan :
Jika Auxillary Carry (AC) = 0 atau AC = 1 dan Carry (Cy) = 0 dimana hasil penjumlahan
binernya lebih dari 9 desimal, maka perlu ditambahkan 6 pada nible rendah tersebut, dan
tambahkan 1 pada nible yang lebih tinggi.
Contoh :
Pengurangan
Pengurangan pada dasarnya merupakan penjumlahan, yaitu penjumlahan dengan
bilangan negatif.
500 – 255 = 245 (Pengurangan)
500 + (-)255 = 245 (Penjumlahan)
Komputer hanya bekerja pada bilangan “0” dan “1” dan tidak mengenal bilangan
negatif. Untuk menunjukkan bilangan negatif, komputer menggunakan tanda modulus
(Modulus Sign). Pada penjumlahan desimal tanda modulus yang digunakan adalah “0” untuk
bilangan positif dan “9” untuk bilangan negatif. Untuk bilangan negatif,
pada operasi penjumlahannya, harus dikomplemen. Komplemen yang digunakan pada
bilangan desimal adalah komplemen10 dan komplemen9.
Pengurangan Bilangan Desimal
Komplemen -10
Pada komplemen10, bilangan negatif dikurangkan 9, kemudian ditambahkan 1 pada
bit terakhir. Pada penjumlahannya, bila ada carry, carry tersebut dapat dihilangkan.
Tanda modulus ikut dijumlahkan.
Contoh :
Komplemen-10 dari -255.
-2 5 510 = (9) 7 4 510 (angka 9 menunjukkan tanda modulusnya).
Komplemen -9
Pada komplemen9, bilangan negatif dikurangkan 9. Bila ada carry, maka carry ikut
dijumlahkan pada hasil akhir.
Contoh :
Komplemen -9 dari -255.
-2 5 510 = (9) 7 4 410 (angka 9 menunjukkan tanda modulusnya).
Bila hasil akhir bernilai negatif, maka nilainya harus dikomplemen lagi (Berlaku
untuk komplemen-10 dan komplemen-9).
Jika komplemen10, maka hasil akhir setelah dikomplemen harus ditambah 1. Jika
komplemen-10, hasil akhirnya merupakan hasil sebenarnya (tidak perlu ditambah 1).
Contoh :
Komplemen2
Contoh :
Pengurangan antara 910 (10012) dengan 510 (01012)
Komplemen-2 dari –5 (0101).
Bila hasil akhir bernilai negatif, maka nilainya harus dikomplemen lagi (Berlaku untuk
komplemen-2 dan komplemen-1).
Jika komplemen-2, maka hasil akhir setelah dikomplemen harus ditambah 1. Jika
komplemen1, hasil akhirnya merupakan hasil sebenarnya (tidak perlu ditambah 1).
Contoh :
Perkalian
Perkalian antara bilangan biner adalah perkalian yang paling mudah diantara sistem
bilangan lainnya.
Pada Teknik Komputer, perkalian dilakukan menggunakan register geser kanan (Shift Right
Register). Perhatikan contoh berikut :
Register A untuk menyimpan data yang akan dikalikan (Multiplicand).
Register B untuk menyimpan data pengali (Multiplier).
Register P untuk menyimpan hasil perkalian.
Pembagian
Kebalikan dari perkalian, pembagian (Division) adalah suatu bentuk dari pengurangan yang
dilakukan berulangulang. Dan proses ini juga dapat dilakukan pada rangkaian logika dengan
cara pengurangan dan penggeseran ke kiri (menggunakan shiftleft register). Berikut adalah
aturan dari pembagian:
Kurangkan bilangan pembagi (Divisor) dari MSB bilangan yang akan dibagi (Dividend), lihat
hasil pengurangan.
Bila hasilnya 1 atau positif :
Berarti hasil pembagian (Product) adalah 1. Setelah itu hasil pengurangan digeser kekiri satu
bit, dan dimulai lagi pengurangan oleh bilangan pembagi (Divisor).
Bila hasilnya 0 atau negatif :
Berarti hasil pembagian (Product) adalah 0. Dalam hal ini sebelum digeser ke kiri
harus ditambah dulu dengan bilangan pembagi (Divisor). Setelah digeser ke kiri satu
bit, dimulai lagi proses pengurangan oleh bilangan pembagi. Pengurangan oleh
bilangan pembagi dilakukan dengan penjumlahan komplemen2.
Bila dalam
penjumlahan tersebut terdapat pindahan (Carry), maka carry tersebut diabaikan.
Perhatikan contoh berikut :
1010 : 410 = 10102 : 1004
Catatan : Karena ada hasil pengurangan yang negatif, maka digit yang dihasilkan
setelah itu adalah digit pecahan, sehingga hasil yang benar 10,12 atau 2,510.
MEMORI
Secara garis besar, Memori dapat diklasifikasikan menjadi dua bagian, yaitu Memori Utama
dan Memori Pembantu.
Memori Utama
Beberapa parameter dalam Memori Utama :
Memori
Memori Memori
Utama Pembantu
1. Kapasitas
Kapasitas dinyatakan dalam byte (1 byte = 8 bit) atau word. Panjang word yang umum
adalah 8, 16, dan 32 bit.
2. Satuan Transfer
Satuan transfer sama dengan jumlah saluran data yang masuk ke dan keluar dari
modul memori. Tiga konsep dalam satuan transfer :
Word. Ukuran word biasanya sama dengan jumlah bit yang digunakan untuk
representasi bilangan dan panjang instruksi.
Addressable Units. Pada sejumlah sistem, Addressable Unit adalah word.
Hubungan antara panjang A suatu alamat dan jumlah N addressable unit adalah
2A = N.
Unit of Transfer. Adalah jumlah bit yang dibaca atau yang dituliskan ke dalam
memori pada suatu saat.
3. Metode Akses.
Terdapat empat jenis metode :
Sequential Access. Memori diorganisasikan menjadi unit-unit data yang disebut
record.
Direct Access. Direct Access meliputi shared read/write mechanism. Setiap blok
dan record memiliki alamat-alamat yang unik berdasarkan lokasi fisik.
Random Access. Waktu untuk mengakses lokasi tertentu tidak tergantung pada
urutan akses sebelumnya dan bersifat konstan.
Associative. Sebuah word dicari berdasarkan pada isinya dan bukan berdasar
pada alamat.
Metode Sequential Access dan Direct access, biasanya dipakai pada Memori
pembantu. Metode Random Access dan Associative dipakai dalam Memori Utama.
4. Kinerja.
Pada memori utama, terdapat tiga buah parameter unjuk kerja :
Access Time. Bagi RAM, access time merupakan waktu yang dibutuhkan untuk
melakukan operasi baca atau tulis. Bagi non RAM, access time adalah waktu
yang dibutuhkan untuk melakukan mekanisme baca tulis pada lokasi tertentu.
Memory Cycle Time. Terdiri dari access time ditambah dengan waktu tambahan
yang diperlukan transient agar hilang pada saluran signal atau untuk
menghasilkan kembali data bila data ini dibaca secara destruktif.
Transfer Rate. Transfer rate adalah kecepatan data agar dapat ditransfer ke unit
memori atau ditransfer dari unit memori. Pada RAM, transfer rate = 1/(waktu
siklus). Bagi non RAM terdapat hubungan
N
TN = TA +
R
TN = Waktu rata-rata untuk membaca atau menulis N bit.
TA = Waktus access rata-rata.
N = Jumlah bit.
R = Kec. transfer, dalam bit per detik (bps).
5. Tipe Fisik
Memori Utama dikemas dalam sebuah Chip / IC. Dua jenis yang umum digunakan
saat ini adalah memori semikonduktor yang memakai teknologi SLI dan VSLI.
6. Karakteristik Fisik
Pada memori volatile, informasi akan hilang apabila daya listrik dimatikan. Untuk
memori non volatile, informasi tetap akan tersimpan meskipun daya listrik dimatikan.
Menurut mekanisme yang digunakan untuk menyimpan dan memanggil data, memori utama
dapat diklasifikasikan atas Random Access Memory dan Content Addressable Memory.
1. RAM (Random Access Memori)
RAM diakses melalui alamat, semua lokasi yang dapat dialamati dapat diakses secara acak
(random) dan membutuhkan waktu akses yang sama tanpa tergantung pada lokasi fisiknya
didalam memori. Terdapat dua jenis RAM, statik dan dinamik.
RAM dinamik tersusun oleh sel-sel yang menyimpan data sebagai muatan listrik pada
kapasitor.
RAM statik menyimpan nilai-nilai biner dengan menggunaan konfigurasi gate logik flip-flop.
RAS CAS W OE
Refresh
Counter
MUX
Row
Row
.. Memory Array
A0 Address
De-
coder . (2086 x 2048 x 4)
..
A1 Buffer
.... Data Input
.
A10 Column Sense Amplifier
Buffer D1
D2
D3
Data Output D4
Address and I/O gate Buffer
Buffer
Column Decoder
Pada CAM, memori diakses berdasarkan isi, bukan alamat. Pencarian data dilakukan
secara simultan dan paralel dengan basis isi memori. CAM disebut juga sebagai memori
Asosiatif.
n- 1 0
Argumen
A Register (A)
0
Input (n)
Associative Match
Read (n) M Register (M)
memory
Write (n)
m-1
(n)
Output
1. Memori Stack
Memori Stack merupakan struktur data tidak tetap yang digunakan untuk menyimpan alamat
kembali dan parameter yang dilalui dalam subroutine call dan return, memanipulasi alamat
serta operasi aritmatika.
Data Data
Out In
(n) (n)
Data out of Data out of
Register 0 register i - 1 register i + 1
(n) (n) (n) (n)
(n) To 2 x 1 MUXs
of registers
Register K - 1 i + 1 and i - 1
Pada gambar diatas, perintah PUSH dan POP berguna untuk memanipulasi data pada
stack.
2. Memori Modular
Dalam memori modular, RAM dipisah menjadi modul-modul yang berbeda, yaitu MAR dan
MBR.
Penggunaan memori modular biasanya pada sistem dengan prosesor pipeline dan prosesor
array. (Lihat gambar ……..)
3. Memori Virtual
Prinsip dasar memori virtual adalah kemampuan untuk mengalamati ruang penyimpanan
logikal yang secara fisik lebih besar daripada ruang penyimpanan riil.
Program in
a logical
contiguous
block
Address
Virtual translation
memory
Real
Memori
3. MEMORI CACHE
Memori utama yang digunakan sistem komputer pada awalnya dirasakan masih lambat
kerjanya dibandingkan dengan kerja CPU, sehingga perlu dibuat sebuah memori yang dapat
membantu kerja memori utama tersebut. Sebagai perbandingan waktu akses memori cache
lebih cepat 5 sampai 10 kali dibandingkan memori utama.
Prinsip kerja
Cache berisi salinan sebagian isi memori utama. Pada saat CPU membaca sebuah word
memory, maka dilakukan pemeriksaan untuk mengetahui apakah word tersebut berada di
cache. Jika word memori terdapat di cache, maka akan dikirimkan ke CPU yang dikenal
sebagai proses HIT. Sedangkan bila tidak ada, maka blok memori utama yang terdiri dari
sejumlah word tetap akan diletakkan/dicopikan di cache yang dikenal sebagai proses MISS
dan selanjutnya dikirimkan ke CPU.
Elemen-elemen rancangan cache
Ukuran cache
Ukuran cache disesuaikan kebutuhannya dalam membantu kerja memori utama.
Semakin besar ukuran cache, maka semakin besar jumlah gate yang terdapat pada
pengalamatan cache, akibatnya adalah cache yang berukuran besar cenderung untuk
lebih lambat dibanding dengan cache berukuran kecil. Berdasarkan penelitian ukuran
cache antara 1K sampai 512K word akan lebih optimum dalam membantu kerja
memori utama.
Jumlah Cache
III. Memori pembantu (auxiliary memory)
- Bersifat non-volatile, yaitu jika tidak ada listrik, maka isi memori tidak hilang.
- Tidak mempengaruhi langsung fungsi CPU.
Disk Magnetik
- Merupakan sebuah lembaran datar ( platter)
- Terdiri atas : sebuah disk drive, sebuah kendali disk(interface), dan satu atau lebih
disk (platter).
- Proses penulisan ke disk yaitu disk drive akan menimbulkan kemagnetan pada titik di
atas permukaan disk yang secara langsung di bawah head.
- Proses pembacaan dari disk, head diatur agar dapat mendeteksi perubahan arah
kemagnetan.
- Terbagi secara logikal dikenal sebagai organisasi disk yaitu :
Floppy disk
- Merupakan lembaran datar yang tipis dan fleksibel
- Hampir sama dengan harddisk, tetapi kapasitas penyimpanan lebih rendah.