System Bilangan : Pengenalan Binary, Hexadecimal Dan Lainnya



Apa kalian pernah melihat bilangan biner (Binary Number) dan bertanya-tanya apa artinya? Pernah melihat angka dengan huruf yang bercampur dan bertanya-tanya apa yang terjadi? kalian akan mengetahui semua ini dan lebih banyak lagi di artikel ini. Bilangan Heksadesimal harusnya tidak begitu menakutkan untuk kalian.

Pendahuluan: Apa Itu Sistem Angka (Numer System) ?

Kalian mungkin sudah tahu apa itu sistem bilangan, pernah mendengar tentang bilangan biner atau bilangan heksadesimal? Sederhananya, sistem bilangan adalah cara untuk merepresentasikan bilangan. Kita terbiasa menggunakan sistem bilangan berbasis 10, yang juga disebut desimal. Sistem bilangan umum lainnya termasuk basis 16 (heksadesimal), basis 8 (oktal), dan basis 2 (biner).

Dalam artikel ini, saya akan menjelaskan apa saja sistem yang berbeda ini, bagaimana bekerja dengannya, dan mengapa mengetahuinya akan membantu kalian.

Aktivitas

Sebelum kita mulai, mari kita coba sedikit aktivitas untuk bersenang-senang. Ada banyak cara berbeda untuk merepresentasikan warna, tetapi salah satu yang paling umum adalah model warna RGB. Dengan menggunakan model ini, setiap warna terdiri dari kombinasi jumlah merah, hijau, dan biru yang berbeda.

Kalian mungkin bertanya-tanya bagaimana warna berhubungan dengan sistem angka?. Singkatnya, di komputer, warna apa pun disimpan sebagai angka besar: kombinasi merah, hijau, dan biru. (Kita akan membahasnya lebih detail nanti.) Karena ini hanya angka, ini dapat direpresentasikan dalam berbagai cara menggunakan sistem angka yang berbeda.

Tugas kalian adalah menebak seberapa banyak warna merah, hijau, dan biru pada warna background aktivitas di bawah ini. Nilai untuk merah, hijau, dan biru dapat berkisar dari 0 hingga 255.

Jangan ragu untuk menggunakan berbagai petunjuk yang diberikan untuk membantu kalian. Jika kalian belum memahami petunjuk numerik, tidak masalah! kalian bisa melihat seperti apa tebakan kalian menggunakan tombol  Periksa Tebakan  . Dan jika warna background membuat teks sulit dibaca, tekan  Warna Baru . Saat ini mungkin terlihat rumit, tapi semoga di akhir artikel ini akan terlihat mudah.

See the Pen Tebak Warna by Dayat Miftahul Jannah (@dayat-emje) on CodePen.

Melihat Basis-10

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 ... Kalian telah menghitung basis 10 sepanjang hidup kalian. Cepat, berapa hasil 7 + 5? Jika kalian menjawab 12, kalian berpikir di basis 10. Mari kita lihat lebih dekat apa yang telah kalian lakukan selama bertahun-tahun ini tanpa pernah memikirkannya.

Mari kita lihat sekilas cara menghitung. Pertama, kalian menelusuri semua digit: 0, 1, 2 ... Setelah kalian menekan 9, kalian tidak memiliki digit lagi untuk mewakili nomor berikutnya. Jadi kalian mengubahnya kembali ke 0 dan menambahkan 1 ke digit puluhan, memberi kalian angka 10. Proses ini berulang, dan akhirnya kalian mendapatkan 99, di mana kalian tidak bisa membuat angka yang lebih besar dengan dua digit, jadi kalian menambahkan yang lain , dan proses itu memberi kalian 100.

Meskipun itu semua sangat mendasar, kalian tidak boleh mengabaikan apa yang sedang terjadi. Digit paling kanan melambangkan bilangan satuan, digit selanjutnya melambangkan puluhan, selanjutnya banyaknya ratusan, dst.

Memvisualisasikan Basis-10

Bingung dengan deskripsi ini? Tidak masalah, mari kita visualisasikan saja. Bayangkan sebuah angka yang besar, seperti 2347. Kita dapat menggambarkannya dengan dua kelompok yang terdiri dari seribu, tiga kelompok yang terdiri dari seratus, empat kelompok sepuluh, dan tujuh blok individu.




Gunakan alat di bawah ini untuk mengeluarkan angka ke dalam "grup" kompositnya.

See the Pen Contoh Base-10 by Dayat Miftahul Jannah (@dayat-emje) on CodePen.


Basis-10 Secara matematis

Kalian mungkin telah memperhatikan sebuah pola sekarang. Mari kita lihat apa yang terjadi secara matematis, menggunakan 2347 sebagai contoh.

  •  Seperti yang kalian lihat, ada 2 kelompok yang terdiri dari seribu orang. Bukan kebetulan, 1000 = 10*10*10 yang juga bisa ditulis sebagai .10 pangkat 3
  • Ada 3 kelompok yang terdiri dari seratus orang. Sekali lagi, tidak secara kebetulan, 100 = 10*10 atau  .10 pangkat 2
  • Ada 4 kelompok sepuluh, dan ,.10 = 10 pangkat 1
  • Terakhir, ada 7 grup dari satu, dan. (Itu mungkin tampak aneh, tetapi angka apa pun yang pangkat 0 sama dengan 1, menurut definisi.) 1 = 10 pangkat 0

Ini pada dasarnya adalah definisi basis 10. Untuk mendapatkan nilai angka di basis 10, kita cukup mengikuti pola itu. Berikut beberapa contoh lainnya:

  • 892 = 8*102+9*101+2*100
  • 1147 = 1*103+1*102+4*101+7*100
  • 53 = 5*101+3*100

Memang, ini semua tampak sedikit konyol. Kita semua tahu berapa nilai bilangan basis 10 karena kita selalu menggunakan basis 10, dan itu muncul secara alami bagi kita. Seperti yang akan segera kita lihat, jika kita memahami pola di latar belakang basis 10, kita dapat memahami basis lain dengan lebih baik.

Basis-8

Basis 8 juga sering disebut bilangan oktal. Basis-8 artinya persis seperti namanya: sistem ini didasarkan pada angka delapan (bukan sepuluh). Ingat bagaimana di basis 10 kita memiliki sepuluh digit? Sekarang, dalam basis 8, kita dibatasi hanya pada delapan digit: 0, 1, 2, 3, 4, 5, 6, dan 7. Tidak ada yang namanya 8 atau 9.

Kita menghitung dengan cara yang sama seperti biasanya, kecuali hanya dengan delapan digit. Daripada melihat penjelasan panjang lebar, cukup coba demo di bawah ini dengan mengklik  Hitung 1  untuk melihat cara kerja penghitungan di basis 8.

See the Pen Contoh Base-8 by Dayat Miftahul Jannah (@dayat-emje) on CodePen.


Kalian akan melihat pola yang mirip dengan sebelumnya; setelah kita mencapai 7, kita kehabisan digit yang berbeda untuk angka yang lebih tinggi. Kita membutuhkan cara untuk mewakili delapan dari sesuatu. Jadi kita menambahkan digit lain, mengubah 7 kembali menjadi 0, dan berakhir dengan 10. Jawaban kita dari 10 dalam basis 8 sekarang mewakili apa yang biasanya kita anggap sebagai 8 dalam basis 10.

Berbicara tentang angka yang ditulis dalam beberapa basis bisa membingungkan. Misalnya, seperti yang baru saja kita lihat, 10 di basis 8 tidak sama dengan 10 di basis 10. Jadi, mulai saat ini, saya akan menggunakan notasi standar di mana subskrip menunjukkan basis angka jika diperlukan. Misalnya, versi 10 basis kita sekarang terlihat seperti 108 .

Saya merasa jauh lebih mudah untuk memahami ini jika saya mengubah cara saya membaca angka-angka ini di kepala saya juga. Misalnya, untuk 108 , saya membaca "oktal satu-oh" atau "satu-oh di basis delapan". Untuk 1010  saya membaca "desimal satu-oh" atau "satu-oh dalam basis sepuluh".

Bagus, jadi kita tahu 108  mewakili delapan item. (Selalu merasa bebas untuk memasukkan angka ke alat pertama untuk visualisasi.) Berapa angka berikutnya setelah 778 ? Jika kalian mengatakan 1008 , kalian benar. Kita tahu dari apa yang telah kita pelajari sejauh ini bahwa 7 yang pertama dari 778  mewakili kelompok yang terdiri dari 8 orang, dan 7 yang kedua mewakili item individual. Jika kita menambahkan ini semua, kita punya 7*8 + 7*1 = 63 . Jadi kita memiliki total 6310 . Jadi 778 = 6310 . Kita semua tahu 6410  datang setelah 6310 .

Mengubah Dari Basis 8 ke Basis 10

Mari kita lihat contoh yang lebih kata sekarang. John menawarkan untuk memberi kalian 478 cookie, dan Jane menawarkan untuk memberi kalian 4310 cookie. Tawaran siapa yang akan kalian terima? Jika kalian mau, lanjutkan dan buat grafik untuk 478 dengan alat pertama. Mari kita cari tahu nilai basis 10-nya sehingga kita bisa membuat keputusan terbaik!

Seperti yang kita lihat saat menghitung, empat dari 478 mewakili jumlah kelompok delapan. Ini masuk akal,kita berada di basis 8. Jadi, secara total, kita memiliki empat grup yang terdiri dari delapan dan tujuh grup dari satu grup. Jika kita menjumlahkan semuanya, kita dapatkan 4*8 + 7*1 = 3910. Jadi 478 cookie sama dengan 3910 cookie. Tawaran Jane sepertinya yang terbaik sekarang!

Pola yang kita lihat sebelumnya dengan basis 10 juga berlaku di sini. Kita akan melihat 5238 . Ada lima kelompok 82 , dua kelompok 81 , dan tiga kelompok 80 (ingat, 8 0 = 1). Jika kita menjumlahkan semuanya, kita mendapatkan 33910  yang merupakan jawaban akhir kita. Diagram di bawah ini menunjukkan hal yang sama secara visual: 5*82 + 2*81 + 3*80 = 5*64+2*8+3 = 339




Berikut beberapa contoh lainnya:

    1118 = 1*82+1*81+1*80 = 64+8+1 = 7310
    438 = 4*81+3*80 = 32+3 = 3510
    61238 = 6*83+1*82+2*81+3*80 = 3072+64+16+3 = 315510

Mengubah Dari Basis 10 ke Basis 8

Mengonversi dari basis 10 ke basis 8 sedikit lebih rumit, tetapi tetap mudah. Kita pada dasarnya harus membalik proses dari atas. Mari kita mulai dengan contoh: 150 10 .

Pertama-tama kita menemukan pangkat 8 terbesar yang lebih kecil dari bilangan kita. Di sini, ini adalah 8 2  atau 64 (8 3  adalah 512). Kita hitung berapa banyak kelompok 64 yang dapat kita ambil dari 150. Ini adalah 2, jadi digit pertama pada bilangan basis 8 kita adalah 2. Sekarang kita telah menghitung 128 dari 150, jadi kita memiliki 22 yang tersisa.

Pangkat terbesar 8 yang lebih kecil dari 22 adalah 8 1  (yaitu, 8). Berapa kelompok 8 yang dapat kita ambil dari 22? Dua kelompok lagi, dan dengan demikian digit kedua kita adalah 2.

Akhirnya, kita mendapatkan 6, dan jelas dapat mengambil 6 grup dari satu dari ini, digit terakhir kita. Kami berakhir dengan 226 8 .

Faktanya, kita dapat membuat proses ini menjadi lebih jelas dengan matematika. Berikut langkah-langkahnya:

    150/8 2  = 2 sisa 22
    22/8 1  = 2 sisa 6
    6/8 0  = 6

Jawaban akhir kita adalah semua digit non-sisa kita, atau 226. Perhatikan bahwa kita masih mulai dengan membagi dengan pangkat tertinggi 8 yang lebih kecil dari bilangan kita.

Berurusan Dengan Basis Apa Pun

Penting untuk dapat menerapkan konsep yang telah kita pelajari tentang basis 8 dan basis 10 ke basis apa pun. Sama seperti basis 8 memiliki delapan digit dan basis 10 memiliki sepuluh digit, basis apa pun memiliki jumlah digit yang sama dengan basisnya. Jadi basis 5 memiliki lima digit (0-4), basis 7 memiliki tujuh digit (0-6), dll.

Sekarang, mari kita lihat cara mencari nilai basis 10 dari bilangan apa pun di basis apa pun. Katakanlah kita bekerja di basis-b, di mana  b  bisa berupa bilangan bulat positif. Kami memiliki angka d 4 d 3 d 2 d 1 d 0 di  mana setiap d adalah digit dalam sebuah angka. (Subskrip di sini tidak mengacu pada basis angka tetapi hanya membedakan setiap digit.) Nilai basis-10 kita sederhana  .dd4*b4 + d3*b3 + d2*b2 + d1*b1 + d0*b0

Inilah contohnya: kita memiliki nomor 32311 di basis-4. Perhatikan bagaimana bilangan kita hanya memiliki digit dari nol hingga tiga karena basis 4 hanya memiliki total empat digit. Nilai basis-10 kami adalah  . Kita bisa, tentu saja, mengikuti pola ini dengan sejumlah digit di nomor kita.3*44 + 2*43 + 3*42 + 1*41 + 1*40 = 3*256 + 2*64 + 3*16 + 1*4 + 1*1 = 949

Basis-16

Basis 16 juga disebut heksadesimal. Ini biasa digunakan dalam pemrograman komputer, jadi sangat penting untuk dipahami. Mari kita mulai dengan menghitung dalam heksadesimal untuk memastikan kita dapat menerapkan apa yang telah kita pelajari tentang basis lain sejauh ini.

Karena kita bekerja dengan basis 16, kami memiliki 16 digit. Jadi kita punya 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, ... dan astaga! Kita sudah kehabisan digit, tapi kita masih butuh enam lagi. Mungkin kita bisa menggunakan sesuatu seperti 10 yang dilingkari?

Sebenarnya, kita bisa, tapi ini akan merepotkan untuk mengetik. Sebagai gantinya, kita hanya menggunakan huruf alfabet, dimulai dengan A dan berlanjut ke F. Berikut tabel dengan semua digit basis-16:




Selain digit tambahan ini, heksadesimal sama seperti basis lainnya. Misalnya, mari ubah 3D 16 menjadi basis 10. Mengikuti aturan kita sebelumnya, kami memiliki:  . Jadi 3D 16  sama dengan 61 10 . Perhatikan bagaimana kita menggunakan nilai D dari 13 dalam perhitungan kita3D16 = 3*161 + 13*160 = 48 + 13 = 61

Kita dapat mengonversi dari basis 10 ke basis 16 dengan cara yang mirip dengan apa yang kita lakukan dengan basis 8. Mari kita ubah 696 10  menjadi basis 16. Pertama, kita temukan pangkat 16 terbesar yang kurang dari 696 10 . Ini adalah 16 2 , atau 256. Kemudian:
  1.  696/16 2  = 2 sisa 184
  2. 184/16 1  = 11 sisa 8
  3. 8/16 0  = 8 sisa 0

Kita harus mengganti 11 dengan representasi digit B, dan kita mendapatkan 2B8 16 .

Jangan ragu untuk mencoba beberapa konversi lagi untuk latihan. Kalian bisa menggunakan aplikasi di bawah ini untuk memeriksa jawaban kalian:

See the Pen Konversi Dari Basis ke Basis by Dayat Miftahul Jannah (@dayat-emje) on CodePen.


Biner! (Basis-2)

Ke basis 2 yang terkenal, juga disebut biner. Meskipun semua orang tahu bahwa biner terdiri dari 0 dan 1, penting untuk dipahami bahwa secara matematis tidak ada perbedaan dengan basis lainnya. Ada lelucon lama yang seperti ini:

    “Hanya ada 10 jenis orang di dunia: mereka yang memahami biner dan mereka yang tidak.” 

Bisakah kalian mencari tahu apa artinya?

Mari kita coba beberapa konversi dengan basis 2. Pertama, kita akan mengubah 101100 2  menjadi basis 10. Kita memiliki:  .101100 = 1*25 + 1*23 + 1*22 = 32 + 8 + 4 = 4410

Sekarang mari kita ubah 65 menjadi biner.  2 6  adalah pangkat tertinggi dari 2 kurang dari 65, jadi:

  1.  65/2 6  = 1 sisa 1
  2. 1/2 5  = 0 sisa 1
  3. 1/2 4  = 0 sisa 1
  4. 1/2 3  = 0 sisa 1
  5. 1/2 2  = 0 sisa 1
  6. 1/2 1  = 0 sisa 1
  7. 1/2 0  = 1 sisa 0

Dan dengan demikian kita mendapatkan bilangan biner kita, 1000001 2 .

Memahami biner sangat penting. Saya telah menyertakan tabel di bawah ini untuk menunjukkan nilai digit.




Misalnya nilai 10001 2 adalah 17 yang merupakan penjumlahan dari nilai dari dua angka 1 (16 + 1). Ini tidak ada bedanya dengan yang telah kita lakukan sebelumnya, ini hanya disajikan dengan cara yang mudah dibaca.

Trik dan Tips

Biasanya, saat mengonversi antara dua basis yang bukan basis 10, kalian akan melakukan sesuatu seperti ini:

    Ubah bilangan tersebut menjadi basis 10
    Ubah hasilnya menjadi basis yang diinginkan

Namun, ada trik yang memungkinkan kalian mengonversi antara biner dan heksadesimal dengan cepat.

Pertama, ambil bilangan biner apa saja dan bagi digitnya menjadi kelompok empat. 

Jadi katakanlah kita memiliki nomor 1011101 2 . Dibagi, kita memiliki 0101 1101. Perhatikan bagaimana kita bisa menambahkan nol ekstra ke depan kelompok pertama untuk membuat kelompok genap 4. 

Sekarang kita menemukan nilai untuk setiap kelompok seolah-olah itu adalah bilangan terpisahnya sendiri, yang memberi kita 5 dan 13. Terakhir, kita cukup menggunakan angka heksadesimal yang sesuai untuk menuliskan bilangan basis-16, 5D 16 .

Kita juga bisa pergi ke arah lain, dengan mengubah setiap digit heksadesimal menjadi empat digit biner. Coba ubah B7 16  menjadi biner. kalian harus mendapatkan 10110111 2 .

Trik ini berhasil karena 16 adalah pangkat 2. Artinya, kita menggunakan trik serupa untuk basis 8, yang juga merupakan pangkat 2:




Tentu saja, Kalian juga dapat membalikkan proses dari basis 8 ke biner.

Berikut beberapa contoh lainnya:

Mengubah Biner menjadi Heksadesimal

Mari kita coba mengonversi 100111100110 2 menjadi heksadesimal. Ketika kita memecahnya menjadi unit 4, kita mendapatkan 1001, 1110, dan 0110. Nilainya dalam desimal adalah 9, 14, dan 6 masing-masing. Mengubahnya menjadi heksadesimal akan menghasilkan 9, E, dan 6. Jadi angka kita akan menjadi 9E6 dalam heksadesimal.

Mengonversi Heksadesimal ke Biner

Sekarang kita akan mengubah bilangan heksadesimal A1D 16 menjadi biner. kita mulai dengan mengubah setiap digit terpisah menjadi pasangan desimalnya. Oleh karena itu, A, 1, dan D masing-masing menjadi 10, 1, dan 13. Sekarang kita hanya mengubah desimal ini menjadi biner untuk mendapatkan masing-masing 1010, 0001, dan 1101. Representasi biner terakhir menjadi 101000011101 2 .

Mengonversi Biner ke Oktal

Kita dapat menggunakan teknik serupa untuk mengubah biner menjadi oktal. Kali ini, kita akan membagi bilangan kita menjadi kelompok 3 karena 2 ^ 3 = 8. Misalkan Kalian ingin mengubah 1111101 2 menjadi nilai oktalnya . Membaginya menjadi unit 3 dimulai dari ujung paling kanan akan menghasilkan 1, 111, dan 101. Sekarang, kita tinggal menghitung nilai segmen ini untuk mendapatkan representasi oktal. Tidak ada satupun unit yang memiliki nilai di atas 7, jadi kita bisa langsung menggabungkannya untuk mendapatkan nilai oktal. Nilai 1, 111, dan 101 masing-masing akan menjadi 1, 7, dan 5 dalam oktal. Jadi bilangan kita dalam representasi oktal adalah 175 8 .

Mengonversi Oktal ke Biner

Akhirnya, kita akan mengubah bilangan oktal 7245 8 menjadi biner. Memisahkan angka menjadi digit individu akan menghasilkan 7, 2, 4, dan 5. Sekarang kita dapat mengubahnya menjadi biner sehingga setiap representasi memiliki 3 digit. Artinya 7, 2, 4, dan 5 masing-masing akan menjadi 111, 010, 100, dan 101. Menggabungkan semuanya akan memberi kita 111010100101 sebagai representasi biner yang benar.

Kesimpulan

Mari kita kembali dan mengunjungi kembali game tebak warna.

See the Pen Tebak Warna by Dayat Miftahul Jannah (@dayat-emje) on CodePen.


Saat dikonversikan ke heksadesimal, dua digit pertama mewakili jumlah warna merah, dua digit berikutnya adalah jumlah warna hijau, dan dua digit terakhir mewakili jumlah warna biru. Jadi, jika warna kita adalah 17FF18 16 , kita dapat dengan mudah mengetahui bahwa komponen merah kita adalah 17 16 , atau 23 10 . Komponen hijau kita adalah FF 16 , atau 255 10 . Terakhir, komponen biru kita adalah 18 16 , atau 24 10 . Jika kita diberikan versi base-10 dari warna kita, 1572632 10 , kita perlu mengubahnya menjadi heksadesimal sebelum kita dapat menjelaskannya.

Coba lagi permainannya, dan lihat seberapa baik yang bisa kalian lakukan!

Memahami sistem bilangan yang berbeda sangat berguna di banyak bidang yang berhubungan dengan komputer. Biner dan heksadesimal sangat umum, dan saya mendorong kalian untuk menjadi sangat akrab dengannya. Terima kasih telah membaca, sya harap kalian telah belajar banyak dari artikel ini! Jika kalian memiliki pertanyaan, tanyakan di kolom komentar bawah.