Lewati ke konten utama
CalcMax

Konverter Biner ke Hexadesimal

Hasil

B2

Heksadesimal

Dikelompokkan per empat
1011 0010

Mengubah biner menjadi heksadesimal tidak memerlukan perhitungan sama sekali, hanya pemotongan ulang. Empat bit selalu bernilai sama dengan satu digit heksadesimal, jadi seluruh konversinya adalah memotong rangkaian biner menjadi kelompok empat bit lalu membaca tiap kelompok sebagai satu digit — dan karena empat bit hanya punya enam belas kemungkinan susunan, hasilnya adalah tabel yang tertutup, bukan deretan angka yang harus dihitung satu per satu. Pemotongannya dimulai dari ujung kanan, karena ujung kanan adalah nilai tempat terkecil dan justru di situlah batas antara satu digit heksadesimal dan digit berikutnya berada. Kalau panjang bilangannya bukan kelipatan empat, kelompok paling kiri yang kekurangan bit diisi angka nol di depannya; nol itu tidak mengubah nilainya, dan gunanya semata supaya setiap kelompok tetap empat bit sehingga batas antardigit heksadesimalnya tetap terbaca. Halaman ini menampilkan hasilnya dua kali: rangkaian biner yang sudah dikelompokkan empat-empat, dan digit heksadesimalnya, karena yang pertama memperlihatkan bagaimana jawabannya diperoleh dan yang kedua adalah bentuk yang Anda cari.

Keenam belas kelompok empat bit dan digit heksadesimal yang diwakili masing-masingnya

NibbleDigit heksadesimalDesimal
000000
000111
001022
001133
010044
010155
011066
011177
100088
100199
1010A10
1011B11
1100C12
1101D13
1110E14
1111F15

Tabel ini adalah seluruh konversinya, ditulis terbuka. Setiap kelompok empat bit yang ada muncul tepat sekali, jadi tidak ada yang perlu dihitung pada saat dipakai — tabelnya tertutup, dan siapa pun yang sudah menelusurinya sekali bisa membaca rangkaian biner apa pun pada basis ini dengan memotongnya menjadi empat lalu mencari setiap potongannya di sini. Tabel ini tetap dan bukan turunan dari masukan di atasnya, jadi isinya tidak berubah ketika bilangannya berubah, dan tidak ada pertentangan ketika keduanya tampak berbeda: panel menjawab apa yang baru saja diketik, tabel menjawab pertanyaan umum tentang apa saja keenam belas kelompok itu. Bacalah kolom tengah dari atas ke bawah dan isinya menghitung dari nol sampai F tanpa lompatan, dan itulah intinya — huruf-hurufnya bukan sandi, melainkan kelanjutan angka setelah sembilan. Bacalah kolom pertama dari atas ke bawah dan isinya menghitung naik dalam biner dengan besar yang sama, dan itulah yang membuat korespondensinya mekanis. Tabelnya berhenti di 1111 karena di situlah satu digit heksadesimal berakhir: nilai berikutnya memerlukan digit kedua, dan pengelompokan ulang itu yang sudah dikerjakan halaman di atasnya.

Rumus

10110010 (biner) = 1011 0010 = B2

biner
Bilangan yang diubah, ditulis pada basis dua. Digitnya hanya 0 dan 1, dan panjangnya tidak harus kelipatan empat — kalau tidak, kelompok paling kiri yang ditambahi angka nol
nibble
Kelompok empat bit, yaitu satuan yang membuat konversi ini berjalan. Namanya datang dari byte: satu byte adalah delapan bit, jadi satu byte tepat dua kelompok, dan satu kelompok tepat satu digit heksadesimal. Empat bit dipilih karena empat bit punya enam belas susunan yang mungkin, dan enam belas adalah jumlah digit pada sistem bilangan heksadesimal — kecocokan itulah seluruh dasarnya
0-9, A-F
Enam belas digit yang dipakai basis enam belas: sepuluh angka yang sudah Anda kenal, ditambah enam huruf yang melanjutkan hitungan setelah sembilan. A bernilai sepuluh, B sebelas, dan seterusnya sampai F yang bernilai lima belas. Hurufnya bukan sandi, melainkan kelanjutan angka
penambahan nol
Yang dilakukan pada kelompok paling kiri kalau bitnya belum genap empat. Nol itu tidak menambah nilai apa pun, tetapi tanpa nol itu kelompoknya menjadi lebih pendek daripada yang lain sehingga batas antardigit heksadesimalnya kabur dan jawabannya salah dibaca
dari kanan
Arah pemotongan. Pengelompokan selalu dimulai dari ujung kanan, bukan dari ujung kiri, karena ujung kanan adalah nilai tempat terkecil dan batas tiap digit heksadesimal selalu jatuh pada posisi kelipatan empat dihitung dari sana
53 bit
Seberapa panjang masukan yang boleh: lima puluh tiga digit biner, yaitu 1FFFFFFFFFFFFF dalam heksadesimal. Batas itu adalah lebar terbesar yang masih bisa dibedakan sebuah bilangan mesin, sehingga biner yang lebih panjang ditolak dengan pesan alih-alih dibaca secara hampiran

Konversi ini dipakai setiap kali sebuah nilai biner perlu ditulis dalam bentuk yang lebih pendek tanpa kehilangan satu bit pun. Itu terjadi terus-menerus di pekerjaan yang bersentuhan dengan perangkat keras: alamat memori, kode operasi, dan isi register semuanya ditulis dalam heksadesimal di dokumentasi dan di debugger, sementara nilainya tiba dalam bentuk biner; warna pada halaman web ditulis sebagai enam digit heksadesimal karena setiap pasangannya tepat satu kanal delapan bit; dan tabel yang memuat bitmask serta kolom flag hampir selalu memakai basis enam belas supaya empat bit per karakter tetap terbaca. Konversinya juga berguna sebagai pemeriksaan cepat: karena tidak ada aritmetika di dalamnya, kesalahan selalu berasal dari pemotongan yang meleset atau dari kelompok paling kiri yang lupa ditambahi nol, dan kedua kekeliruan itu langsung terlihat kalau hasilnya dikelompokkan ulang. Pelajar yang sedang mengerjakan soal basis bilangan mendapat manfaat yang sama, karena mengubah biner ke heksadesimal adalah cara tercepat memeriksa jawaban konversi ke basis lain: hasil heksadesimalnya harus cocok dengan hasil binernya, dan kalau tidak cocok, kesalahannya ada di salah satu dari keduanya.

Contoh hitungan

  1. Mengubah 10110010

    1. Potong dari kanan menjadi kelompok empat bit: 1011 dan 0010
    2. Kelompok pertama, 1011, adalah 8 + 0 + 2 + 1 = 11, yaitu B
    3. Kelompok kedua, 0010, adalah 0 + 0 + 2 + 0 = 2, yaitu 2
    4. Gabungkan kedua digitnya: B2

    Contoh pembuka halaman ini, dan satu byte penuh — delapan bit, jadi tepat dua kelompok dan dua digit. Perhatikan bahwa tidak ada penambahan nol di sini: panjangnya sudah kelipatan empat, sehingga pemotongannya jatuh tepat dan setiap kelompok sudah empat bit sejak awal. Perhatikan juga bahwa kedua kelompok itu dibaca sebagai nilai, bukan sebagai bit: 1011 menjadi sebelas lalu ditulis B, dan itulah satu-satunya langkah yang menyerupai perhitungan di seluruh halaman ini.

  2. Satu kelompok saja, 1111

    1. Panjangnya sudah empat bit, jadi hanya ada satu kelompok
    2. 1111 adalah 8 + 4 + 2 + 1 = 15
    3. Nilai lima belas ditulis F

    Masukan terpendek yang masih punya arti di halaman ini, dan kebalikan dari contoh sebelumnya: satu kelompok menghasilkan satu digit saja — F, bukan 0F. Halaman ini tidak menambahkan angka nol di depan jawabannya, karena nol di depan pada heksadesimal hanya berguna kalau lebarnya memang sedang dinyatakan, dan di sini yang dinyatakan adalah nilainya. Kalau Anda memang perlu menuliskan nilai ini sebagai satu byte penuh, bentuknya 0F, tetapi angka nol itu datang dari lebar byte yang Anda pilih, bukan dari konversinya.

  3. Menambahi nol pada masukan pendek, 10110

    1. Panjangnya lima bit, bukan kelipatan empat, jadi kelompok paling kiri kekurangan satu bit
    2. Tambahkan satu angka nol di depan: 0001 0110
    3. 0001 adalah 1, dan 0110 adalah 4 + 2 = 6
    4. Gabungkan: 16

    Contoh yang memperlihatkan aturan penambahan nol, dan sekaligus alasan aturan itu ada. Tanpa penambahan nol, pemotongan dari kanan menghasilkan 1 dan 0110 — kelompok pertama hanya satu bit — dan membacanya sebagai digit heksadesimal menghasilkan jawaban yang salah. Nol yang ditambahkan tidak mengubah nilai bilangannya: 10110 dan 0001 0110 adalah bilangan yang sama. Yang berubah hanyalah panjangnya, dan panjang itulah yang memastikan setiap kelompok tetap empat bit sehingga batas antardigit heksadesimalnya terbaca.

  4. Nilai negatif, -10110

    1. Tanda minus dipisahkan lebih dulu dan tidak ikut dipotong
    2. Sisa digitnya dikonversi seperti biasa: 10110 menjadi 0001 0110, yaitu 16
    3. Tandanya diletakkan kembali di depan hasilnya, jadi jawabannya -16

    Perhatikan bentuk hasilnya: tanda minus berada di luar kelompok, bukan di dalamnya. Itu disengaja — kalau tandanya ikut masuk ke dalam kelompok empat bit, kelompok pertama yang tadinya 0001 akan berubah panjang dan batas antardigitnya rusak. Tanda di depan adalah cara yang sama dengan yang Anda tulis di kertas, dan bukan komplemen dua, yaitu representasi yang dipakai prosesor ketika menyimpan bilangan negatif dalam bit berlebar tetap.

Batasan

Halaman ini hanya mengubah bilangan biner yang bulat. Tidak ada titik biner, jadi 1,01 tidak diterima dan tidak bisa diubah — pembacaan pecahan menuntut aturan pemotongan yang berbeda di sisi lain titik itu, dan aturan itu tidak ditawarkan di sini. Masukannya dibatasi lima puluh tiga digit biner, yaitu 1FFFFFFFFFFFFF dalam heksadesimal; biner yang lebih panjang tidak bisa lagi dijamin tepat kalau dibaca sebagai bilangan mesin, jadi ditolak dengan pesan alih-alih dijawab secara hampiran. Angka nol di depan tidak mengubah nilai dan boleh ditulis sebanyak yang Anda suka, sedangkan tanda minus hanya diterima di paling depan sebagai tanda nilai negatif, bukan sebagai komplemen dua. Jawabannya juga tidak diberi angka nol di depan untuk mengejar lebar tertentu — nol di depan pada heksadesimal menyatakan lebar, dan lebar bukan sesuatu yang dimiliki halaman ini.

Pertanyaan yang sering diajukan

Mengapa keluarannya lebih panjang daripada yang saya ketik?
Yang lebih panjang biasanya baris rangkaian binernya, bukan digit heksadesimalnya. Rangkaian itu ditampilkan dalam bentuk yang sudah dikelompokkan empat-empat, dan kelompok paling kiri yang tadinya kurang dari empat bit ditambahi angka nol di depannya supaya lebarnya genap. Jadi 10110 yang lima digit muncul sebagai 0001 0110 yang sembilan karakter, padahal nilainya sama persis. Digit heksadesimalnya sendiri selalu lebih pendek daripada masukannya — sekitar seperempat panjangnya — dan itulah alasan orang memakai basis ini.
Apakah ada perhitungan aritmetika di dalam konversi ini?
Tidak ada. Konversi ini tidak menjumlahkan dan tidak membagi apa pun; yang terjadi hanyalah pemotongan rangkaian menjadi kelompok empat bit dan pencarian setiap kelompok pada tabel keenam belas kemungkinan yang sudah tetap. Namanya konversi, tetapi pekerjaannya lebih menyerupai penerjemahan satu per satu. Itu juga sebabnya kesalahan di halaman ini hampir selalu berupa pemotongan yang meleset atau kelompok paling kiri yang lupa ditambahi nol, bukan salah hitung.
Mengapa satu digit heksadesimal sama dengan empat bit, bukan tiga atau lima?
Karena empat bit punya enam belas susunan yang mungkin — dua pangkat empat — dan enam belas adalah jumlah digit pada basis enam belas. Kecocokan itu bukan kebetulan yang kebetulan dipilih, melainkan syarat supaya setiap digit heksadesimal bisa dipetakan ke tepat satu kelompok bit tanpa sisa dan tanpa pengulangan. Dengan tiga bit hanya ada delapan susunan, sehingga basis delapan yang cocok; dengan lima bit ada tiga puluh dua, dan tidak ada basis yang umum dipakai untuknya. Empat bit adalah satu-satunya lebar yang membuat konversi ini berjalan tanpa perhitungan.
Berapa bilangan biner terpanjang yang bisa saya konversi?
Lima puluh tiga digit biner, yaitu 1FFFFFFFFFFFFF dalam heksadesimal. Batas itu bukan pilihan halaman ini melainkan lebar saat sebuah bilangan mesin berhenti bisa membedakan bilangan bulat yang bersebelahan; di atas lebar itu dua bilangan yang berbeda bisa tersimpan sebagai nilai yang sama, jadi jawabannya akan tampak masuk akal padahal sudah tidak tepat. Masukan yang lebih panjang ditolak dengan pesan, bukan dipotong atau dibulatkan, dan hasilnya pun dibatasi pada langit-langit yang sama.
Bisakah saya mengonversi bilangan biner yang punya bagian pecahan?
Belum. Halaman ini mengubah bilangan bulat saja, jadi 1,01 ditolak. Membaca pecahan biner sebenarnya mungkin dan mirip dengan cara desimal bekerja — posisi di sebelah kanan titik bernilai setengah, seperempat, seperdelapan, dan seterusnya — tetapi pengelompokan empat bit tidak berlaku di sisi lain titik itu, sehingga konversinya memerlukan aturan yang berbeda. Diberikan masukan yang memuat tanda desimal, halaman ini menolak alih-alih menebak maksudnya.
Apakah huruf besar dan huruf kecil berpengaruh pada jawabannya?
Tidak berpengaruh sama sekali. Heksadesimal adalah notasi, dan nilainya tidak berubah karena hurufnya diketik dengan huruf besar atau huruf kecil: b2 dan B2 adalah bilangan yang sama. Halaman ini menerima keduanya dan selalu menuliskan jawabannya dengan huruf besar, karena itulah bentuk yang dipakai di dokumentasi, di debugger, dan pada lembar data. Kebiasaan menuliskan jawabannya dengan huruf kecil tidak salah, tetapi akan tampak berbeda dari sumber mana pun yang Anda bandingkan.

Referensi

Kalkulator terkait