Sistem Bilangan

Ada beberapa sistem bilangan yang digunakan dalam sistem digital. Yang paling umum adalah sistem bilangan desimal, biner, oktal, dan heksadesimal. Sistem bilangan desimal merupakan sistem bilangan yang paling familier dengan kita karena berbagai kemudahannya yang kita pergunakan sehari-hari. Sistem bilangan biner merupakan sistem bilangan yang paling banyak digunakan dalam sistem digital karena sistem bilangan ini secara langsung dapat mewakili logika yang ada.Smenetara itu sistem bilangan oktal dan heksadesimal biasanya banyak digunakan dalam sistem digital untuk memperpendek penyajian suatu bilangan yang tadinya disajikan dalam sistem bilangan biner.

Secara umum bilangan dapat dibagi menjadi beberapa katagori. Dari segi koma desimal (point), bilangan dapat dibagi menjadi bilangan bulat (integer number/fixed-point number) dan bilangan pecahan (floating-point number). Dan dari segi tanda, bilangan dapat dibagi menjadi bilangan tak bertanda (unsigned number) dan bilangan bertanda (signed number). Pada bab ini akan dijelaskan bilangan bulat tak bertanda (unsigned integer), bilangan bulat bertanda (signed integer) dan bilangan pecahan tak bertanda (floating-point number). Dengan mempelajari beberapa karakteristik suatu sistem bilangan tersebut akan membantu kita untuk lebih memahami sistem bilangan yang lain.

2.1 Desimal
Sistem bilangan desimal disusun dari 10 angka atau lambang. Dengan menggunakan lambang-lambang tersebut sebagai digit pada sebuah bilangan, kita dapat mengekspresikan suatu kuantitas. Kesepuluh lambang tersebut adalah:
D = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }
Sistem bilangan desimal disebut juga sistem bilangan basis 10 atau radiks 10   karena mempunyai 10 digit. Sistem bilangan ini bersifat alamiah karena pada kenyataannya manusia mempunyai 10 jari. Kata digit itu sendiri diturunkan dari kata bahasa Latin finger.
Ciri suatu bilangan menggunakan sistem bilangan desimal adalah adanya tambahan subskrip des atau 10 atau tambahan D di akhir suatu bilangan.

Contoh:
357des = 35710 = 357D. Namun karena bilangan desimal sudah menjadi bilangan yang  digunakan sehari-hari, subskrip tersebut biasanya dihilangkan. Sistem bilangan desimal merupakan sebuah sistem nilai-posisi. Pada sistem ini, nilai sebuah digit tergantung pada posisinya. Representasi bilangan desimal bulat
m digit adalah sebagai berikut,

Contoh:
· Bilangan 357.
Pada bilangan tersebut, digit 3 berarti 3 ratusan, 5 berarti 5 puluhan, dan 7 berarti 7 satuan. Sehingga, 3 mempunyai arti paling besar di antara tiga digit yang ada. Digit ini bertindak sebagai digit paling berarti (Most Significant Digit, MSD). Sedangkan 7 mempunyai arti paling kecil di antara tiga digit yang ada dan disebut digit paling tidak berarti (Least Significant Digit, LSD).

Koma desimal digunakan untuk memisahkan bagian bulat dan pecahan bilangan. Posisi relatif terhadap koma desimal memberikan arti yang dapat dinyatakan sebagai pangkat dari 10.
Contoh:
· Bilangan 35,27.

Bilangan ini mempunyai arti 3 puluhan ditambah 5 satuan ditambah 2 per sepuluhan ditambah 7 per seratusan. Koma desimal memisahkan pangkat positif dari 10 dengan pangkat negatifnya.
35,27 = 3 X 10+1 + 5 X 100+ 2 X 10-1 + 7 X 10-2
Secara umum dapat dikatakan, nilai suatu bilangan desimal merupakan penjumlahan dari perkalian setiap digit dengan nilai posisinya.

2.2 Biner
Sistem digital hanya mengenal dua logika, yaitu 0 dan 1. Logika 0 biasanya mewakili kondisi mati dan logika 1 mewakili kondisi hidup. Pada sistem bilangan biner, hanya dikenal dua lambang, yaitu 0 dan 1. Karena itu, sistem bilangan biner paling sering digunakan untuk merepresentasikan kuantitas dan mewakili keadaan dalam
sistem digital maupun sistem komputer. Digit bilangan biner disebut binary digit atau bit. Empat bit dinamakan nibble dan delapan bit dinamakan byte. Sejumlah bit yang dapat diproses komputer untuk mewakili suatu karakter (dapat berupa huruf, angka atau lambang khusus) dinamakan word. Sebuah komputer dapat memproses data satu word yang terdiri dari 4 sampai 64 bit. Sebagai contoh, sebuah komputer yang menggunakan mikroprosesor 32 bit dapat menerima, memproses, menyimpan dan mengirim data atau instruksi dalam format 32 bit.
Jika komputer digunakan untuk memproses karakter, maka karakter (yang meliputi huruf, angka, tanda baca dan karakter kontrol) tersebut harus diformat dalam bentuk kode alfanumerik. Format baku ASCII (American Standard Code for Information Interchange) menggunakan format data tujuh bit untuk mewakili semua karakter yang ada termasuk tanda baca dan penanda kontrol. Dengan format tujuh bit, maka ASCII dapat menanpung 27  = 128 data.
Sistem bilangan biner merupakan sistem bilangan basis dua. Pada sistem bilangan ini hanya dikenal dua lambang, yaitu: B = { 0, 1 }
Ciri suatu bilangan menggunakan sistem bilangan biner adalah adanya tambahan subskrip bin atau 2 atau tambahan huruf B di akhir suatu bilangan.
Contoh :
1010011bin = 10100112 = 1010011B.
Representasi bilangan biner bulat m bit adalah sebagai berikut, Bit paling kiri dari suatu bilangan biner bertindak sebagai bit paling berarti (Most Significant Bit, MSB), sedangkan bit paling kanan bertindak sebagai bit paling tidak berarti (Least Significant Bit, LSB).
Persamaan tersebut dapat digunakan untuk mengonversi suatu bilangan biner ke bilangan desimal.

a) Konversi Bilangan Biner ke Desimal
Konversi bilangan biner ke desimal dilakukan dengan menjumlahkan hasil perkalian semua bit biner dengan beratnya.









b) Konversi Bilangan Desimal ke Biner
Konversi Bilangan Desimal Bulat ke Biner 
Konversi bilangan desimal bulat ke biner dilakukan dengan membagi secara berulang-ulang suatu bilangan desimal dengan 2. Sisa setiap pembagian merupakan bit yang didapat.

















2.3 Oktal
Sistem bilangan oktal merupakan sistem bilangan basis delapan. Pada sistem bilangan ini terdapat delapan lambang, yaitu:
O = { 0, 1, 2, 3, 4, 5, 6, 7 }
Ciri suatu bilangan menggunakan sistem bilangan oktal adalah adanya tambahan subskrip okt atau 8 atau tambahan huruf O di akhir suatu bilangan.
Contoh:
1161okt = 11618 = 1161O.

a) Konversi Bilangan Oktal ke Desimal
Konversi bilangan oktal ke desimal dilakukan dengan menjumlahkan hasil perkalian semua digit oktal dengan beratnya.
Contoh:
 










b) Konversi Bilangan Desimal ke Oktal
Konversi bilangan bulat desimal ke oktal dilakukan dengan membagi secara berulang-ulang suatu bilangan desimal dengan 8. Sisa setiap pembagian merupakan digit oktal yang didapat.
Contoh:












c) Konversi Bilangan Oktal ke Biner
Konversi bilangan oktal ke biner lebih mudah dibandingkan dengan konversi bilangan oktal ke desimal. Satu digit oktal dikonversi ke 3 bit biner. Tabel 2.1 dapat digunakan untuk membantu proses pengonversian ini.
Contoh:










d) Konversi Bilangan Biner ke Oktal
Konversi bilangan biner ke oktal lebih mudah dibandingkan konversi bilangan desimal ke oktal. Untuk bagian bulat, kelompokkan setiap tiga bit biner dari paling kanan, kemudian konversikan setiap kelompok ke satu digit oktal. Dan untuk bagian pecahan, kelompokkan setiap tiga bit biner dari paling kiri, kemudian konversikan setiap kelompok ke satu digit oktal. Proses ini merupakan kebalikan dari proses konversi bilangan oktal ke biner.
Contoh:









2.4 Heksadesimal
Sistem bilangan heksadesimal merupakan sistem bilangan basis enam belas.
Meskipun pada sistem digital dan komputer operasi secara fisik dikerjakan secara biner, namun untuk representasi data banyak digunakan format bilangan heksadesimal karena format ini lebih praktis, mudah dibaca dan mempunyai kemungkinan timbul kesalahan lebih kecil. Penerapan format heksadesimal banyak digunakan pada penyajian lokasi memori, penyajian isi memori, kode instruksi dan kode yang merepresentasikan alfanumerik dan karakter nonnumerik. Pada sistem bilangan ini terdapat enam belas lambang, yaitu:
H = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F }
Ciri suatu bilangan menggunakan sistem bilangan heksadesimal adalah adanya tambahan subskrip heks atau 16 atau tambahan huruf H di akhir suatu bilangan. Contoh: 271heks = 27116 = 271H.
Persamaan tersebut dapat digunakan untuk mengonversi suatu bilangan oktal  ke bilangan desimal.


a) Konversi Bilangan Heksadesimal ke Desimal
Konversi bilangan heksadesimal ke desimal dilakukan dengan menjumlahkan hasil perkalian semua digit heksadesimal dengan beratnya.
Contoh:













b) Konversi Bilangan Desimal ke Heksadesimal
Konversi bilangan desimal bulat ke heksadesimal dilakukan dengan membagi secara berulang-ulang suatu bilangan desimal dengan 16. Sisa setiap pembagian merupakan digit heksadesimal yang didapat.
Contoh:

625des = 271heks









Konversi bilangan heksadesimal ke biner lebih mudah dibandingkan konversi bilangan heksadesimal ke desimal. Satu digit heksadesimal dikonversi ke 4 bit. Tabel 2.1 dapat digunakan untuk membantu proses pengonversian ini.
Contoh:









c) Konversi Bilangan Biner ke Heksadesimal
Konversi bilangan biner ke heksadesimal lebih mudah dibandingkan konversi bilangan desimal ke heksadesimal. Untuk bagian bulat, kelompokkan setiap empat bit biner dari paling kanan, kemudian konversikan setiap kelompok ke satu digit heksadesimal. Dan untuk bagian pecahan, kelompokkan setiap empat bit biner dari paling kiri, kemudian konversikan setiap kelompok ke satu digit heksadesimal. Proses ini merupakan kebalikan dari proses konversi bilangan heksadesimal ke biner.
Contoh:










2.5 BCD (Binary Coded Decimal)
Sistem bilangan BCD hampir sama dengan sistem bilangan biner. Pada sistem bilangan ini, setiap satu digit desimal diwakili secara tersendiri ke dalam bit-bit biner. Karena pada sistem bilangan desimal terdapat 10 digit, maka dibutuhkan 4 bit biner untuk mewakili setiap digit desimal. Setiap digit desimal dikodekan ke sistem bilangan biner tak bertanda. Sistem bilangan BCD biasanya digunakan untuk keperluan penampil tujuh segmen (seven-segment).
Contoh:









Konversi bilangan desimal dari 0 sampai 15 ke bilangan biner, oktal, heksadesimal dan BCD dapat dilihat pada tabel 2.1.

Table 2.1 Konversi antar sistem bilangan


DesimalBinerOktalHexadesimalBCD
00000000
11110001
210220010
311330011
4100440100
5101550101
6110660110
7111770111
810001081000
910011191001
10101012A0001 0000
11101113B0001 0001
12110014C0001 0010
13110115D0001 0011
14111016E0001 0100
15111117F0001 0101

Perlu diingat di sini, pada sistem bilangan BCD, pengkodean bilangan desimal menjadi bilangan biner format 4 bit, sehingga terdapat 6 nilai biner yang bukan merupakan format sistem bilangan BCD karena tidak mewakili nilai desimal. Keempat bilangan biner tersebut adalah 1010, 1011, 1100, 1101, 1110 dan 1111. Dalam praktek keempat bilangan biner tersebut masuk dalam kondisi yang diabaikan (don’t care).


2.6 Sistem Bilangan Biner Tak Bertanda dan Bertanda
Terdapat dua sistem bilangan biner, yaitu bilangan biner tak bertanda dan bilangan biner bertanda. Pada sistem bilangan biner tak bertanda, hanya dikenal bilangan biner posisif dan tidak diijinkan adanya bilangan biner negatif. Di sini semua bit digunakan untuk merepresentasikan suatu nilai.

Contoh:







Pada bilangan biner tak bertanda di atas, nilai bilangan dihitung dari A3 …A0. Sehingga,






Pada bilangan biner bertanda, bit paling kiri menyatakan tanda, sehingga nilai bilangan dihitung dari A2  ... A0
.






Pada sistem ini, bit paling kiri menyatakan tanda negatif atau positif nilai yang diwakilinya. Tanda positif diwakili oleh bit 0 dan tanda negatif diwakili oleh bit 1.Sebagai contoh, suatu memori dapat menampung 6 bit bilangan biner. Memoritersebut mengunakan sistem bilangan biner bertanda. Maka dari keenam bit yang ada,bit paling kiri, yaitu A6, digunakan sebagai penanda bilangan dan dinamakan bit tanda (sign bit), sedangkan bit-bit yang lain, yaitu bit A5  ... A0  mewakili suatu nilai.









Bilangan ini merupakan bilangan biner positif karena A6 = 0, dengan nilai 110100bin = +52des.









Bilangan ini adalah negatif karena A6 = 1. Nilai bilangan yang diwakili adalah 110100bin = 52des, sehingga bilangan yang diwakili adalah -52. 
Pada sistem bilangan biner bertanda, karena bit paling kiri merupakan bit tanda maka MSB terletak di  sebelah kanan bit tanda.

a) Bilangan Biner Komplemen Satu
Terdapat dua cara untuk mengubah suatu bilangan positif ke bilangan negatif, yaitu menggunakan sistem bilangan biner komplemen satu dan sistem bilangan biner komplemen dua. Cara pertama, merupakan cara yang paling mudah ditempuh. Dengan cara ini, untuk mengubah bilangan positif ke negatif cukup dilakukan dengan mengubah bit 0 ke 1 dan bit 1 ke 0 pada setiap bit suatu bilangan biner.

Sebagai contoh, 101101 merupakan bilangan biner dengan nilai 45. Maka -45 sama dengan 010010.








Jika P merupakan suatu bilangan positif, bilangan komplemen satu n bit – P juga dapat diperoleh dengan mengurangkan P dari 2n – 1. Atau, bilangan komplemen satunya menjadi (2n – 1) –  P. Contohnya adalah jika P = 45,






-P (Sistem bilangan komplemen satu jarang digunakan karena tidak memenuhi satu kaedah matematis, yaitu jika suatu bilangan dijumlahkan dengan negatifnya, maka akan dihasilkan bilangan nol.






b) Bilangan Biner Komplemen Dua
Pada sistem bilangan komplemen dua, penegatifan suatu bilangan dilakukan dengan mengubah bit 0 ke 1 dan bit 1 ke 0 pada setiap bit suatu bilangan biner, kemudian menambahkannya dengan satu. Dengan kata lain, bilangan biner komplemen dua didapatkan dari bilangan biner komplemen satu ditambah satu.

Komplemen dua = komplemen satu + 1
Contoh, 101101 merupakan bilangan biner dengan nilai 45. Maka -45 sama dengan 010011.





Sebaliknya, pengubahan bilangan biner negatif menjadi bilangan biner  positif dilakukan dengan mengurangi bilangan tersebut dengan satu kemudian mengubah bit 0 ke 1 dan bit 1 ke 0 pada setiap bitnya.
Contoh:






Jika P merupakan suatu bilangan positif, bilangan komplemen dua n bit – P juga dapat diperoleh dengan mengurangkan P dari 2n
. Atau, bilangan komplemen duanya menjadi 2n –  P. Contohnya adalah jika P = 45,








Sistem bilangan biner komplemen dua banyak digunakan dalam sistem digital dan komputer karena memenuhi kaedah matematis, yaitu jika suatu bilangan dijumlahkan dengan negatifnya, maka akan dihasilkan bilangan nol.








Pada penjumlahan tersebut, bit 1 paling depan merupakaan bit bawaan dan tidak digunakan. Jadi 101101 + 010011 = 000000, sehingga 45 + (-)45 = 0.
Pada suatu bilangan biner komlemen dua, harus diperhatikan bit tandanya. Jika bit tanda sama dengan 0, maka bit sesudahnya merupakan bentuk bilangan biner asli. Namun jika bit tanda sama dengan 1, maka bit sesudahnya merupakan bentuk bilangan biner komplemen duanya.













c) Format Bilangan Biner
Bilangan biner biasanya diformat dengan panjang bit tertentu. Panjang bit yang biasa digunakan adalah 2, 4, 8, 16 ... dan seterusnya, atau menurut aturan 2n dengan n bilangan bulat positif. Namun tetap dimungkinkan bilangan biner dengan
format di luar ketentuan tersebut demi kepraktisan atau tujuan khusus.
  1. Pengubahan format bilangan biner komplemen dua dari panjang n-bit menjadi m-bit dengan n
  2.  Contoh:
  3. Pengubahan format bilangan biner komplemen dua negatif dilakukan dengan menambahkan bit 1 di depannya.
    Contoh: