Biner, desimal, dan heksadesimal: cara mengubah satu ke yang lain

Mengubah antarbasis terasa seperti sulap sampai kamu sadar bahwa idenya selalu sama: setiap digit bernilai sesuai tempat yang ditempatinya. Di sini kamu belajar mengubah biner ke desimal dan desimal ke biner secara manual, membaca heksadesimal tanpa takut, dan menerjemahkan teks menjadi bit, lengkap dengan hitungan yang sudah dikerjakan dan tabel 0 sampai 15 untuk dijadikan pegangan.

Diperbarui:

Apa itu sistem posisional

Pada bilangan desimal 4.095, angka 4 tidak bernilai 4: nilainya 4.000, karena ia berada di tempat ribuan. Setiap posisi mengalikan digitnya dengan pangkat 10 (1, 10, 100, 1.000…). Itulah sistem posisional, dan basisnya adalah jumlah digit berbeda yang dipakai: sepuluh pada desimal.

Biner bekerja sama, tetapi berbasis 2: hanya ada 0 dan 1, dan setiap tempat bernilai dua kali tempat sebelumnya. Heksadesimal berbasis 16: enam belas digitnya adalah 0 sampai 9 dan huruf A sampai F, dan setiap tempat bernilai 16 kali tempat sebelumnya. Komputer bekerja dengan biner karena sebuah sirkuit cukup membedakan dua keadaan (mati dan menyala), dan heksadesimal adalah cara singkat menuliskan bit-bit itu.

Nilai tiap tempat. Menghafal pangkat 2 sampai 128 menghemat hampir semua hitungan.
Posisi (dari kanan ke kiri)Nilai dalam binerNilai dalam heksadesimal
Ke-111
Ke-2216
Ke-34256
Ke-484.096
Ke-51665.536
Ke-6321.048.576
Ke-76416.777.216
Ke-8128268.435.456

Dari biner ke desimal, secara manual

Tulis tiap digit beserta nilai tempatnya, lalu jumlahkan hanya tempat yang berisi angka 1. Contoh dengan 1101: dari kanan ke kiri tempatnya bernilai 1, 2, 4, dan 8.

  1. Tulis bilangannya dan di bawahnya nilai tiap posisi: 1 1 0 1 di atas 8 4 2 1.
  2. Lihat isi tiap tempat: angka 1 di tempat 8, angka 1 di tempat 4, angka 0 di tempat 2, dan angka 1 di tempat 1.
  3. Abaikan tempat yang berisi 0 (di sini, tempat 2).
  4. Jumlahkan: 8 + 4 + 0 + 1 = 13. Jadi 1101 dalam biner adalah 13 dalam desimal.

Dengan lebih banyak digit caranya sama: 11111111 adalah 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255, nilai terbesar yang muat dalam 8 bit. Dan 10110110 adalah 128 + 32 + 16 + 4 + 2 = 182.

Dari desimal ke biner, dengan pembagian berulang

Bagi bilangan dengan 2 berulang kali, catat sisa tiap pembagian (selalu 0 atau 1), sampai hasil baginya 0. Sisa-sisa itu, dibaca dari bawah ke atas, adalah bilangan binernya. Contoh dengan 45:

Membaca sisa dari bawah ke atas menghasilkan 101101. Untuk memeriksa, jumlahkan: 32 + 8 + 4 + 1 = 45.

Ada cara lain yang disukai banyak orang: mengurangi pangkat 2 dari yang terbesar ke yang terkecil. Untuk 200: 128 muat (sisa 72), 64 muat (sisa 8), 32 dan 16 tidak muat, tetapi 8 muat (sisa 0). Tempat yang dipakai adalah 128, 64, dan 8, jadi 200 = 11001000.

Heksadesimal: enam belas digit dan tabel untuk pegangan

Karena tidak ada digit untuk 10 sampai 15, dipakai huruf A, B, C, D, E, dan F. Satu digit heksadesimal setara persis dengan empat bit (satu «nibble»), dan itu sebabnya ia sangat praktis: satu byte, yang 8 bit, ditulis hanya dengan dua digit heksadesimal.

Untuk mengubah heksadesimal ke desimal, kalikan tiap digit dengan pangkat 16 sesuai tempatnya lalu jumlahkan. Misalnya, 3F = 3 × 16 + 15 = 63 dan A3 = 10 × 16 + 3 = 163.

Dari 0 sampai 15 dalam empat basis yang ditampilkan alat ini.
DesimalBiner (4 bit)OktalHeksadesimal
0000000
1000111
2001022
3001133
4010044
5010155
6011066
7011177
81000108
91001119
10101012A
11101113B
12110014C
13110115D
14111016E
15111117F

Mengapa heksadesimal dipakai: byte, warna, dan alamat

Satu byte adalah 8 bit dan bernilai 0 sampai 255 (00000000 sampai 11111111). Menulis bit secara manual lambat dan mudah salah; dalam heksadesimal byte yang sama hanya dua karakter, dari 00 sampai FF. Untuk mengubah biner ke heksadesimal, pisahkan bit menjadi kelompok empat mulai dari kanan, lalu ganti tiap kelompok dengan digit dari tabel. Contoh: 11010111 dipecah menjadi 1101 dan 0111, yaitu D dan 7, sehingga nilainya D7. Dalam desimal, itu 13 × 16 + 7 = 215.

Contoh yang paling dikenal adalah warna web. Pada #FF8800 ada tiga byte: FF untuk merah (255), 88 untuk hijau (136), dan 00 untuk biru (0). Itu warna oranye pekat: merah penuh, hijau sedikit lebih dari setengah, dan tanpa biru. Heksadesimal juga muncul pada alamat memori, kode kesalahan, dan pengenal jaringan.

Dari teks ke biner dengan ASCII

Komputer menyimpan setiap huruf sebagai angka, dan angka itu sebagai bit. Dalam tabel ASCII, A adalah 65, yang dalam biner 8 bit adalah 01000001. Kata «Hi» terdiri dari dua huruf: H adalah 72 (01001000) dan i adalah 105 (01101001), sehingga ditulis 01001000 01101001. Untuk «Halo», angkanya 72, 97, 108, dan 111, yaitu 01001000 01100001 01101100 01101111, atau dalam heksadesimal 48 61 6C 6F.

Alat ini memakai pengodean UTF-8: untuk huruf dasar bahasa Inggris tiap karakter menempati satu byte 8 bit, tetapi huruf beraksen seperti é, atau emoji, menempati beberapa byte, sehingga hasilnya lebih dari 8 bit. Misalnya, huruf é adalah dua byte: 11000011 10101001 (C3 A9 dalam heksadesimal).

Cara melakukan semua ini dengan alat

Konverter «Biner, desimal, dan heksadesimal» berguna untuk memeriksa hitungan manualmu atau menyelesaikan bilangan panjang tanpa kesalahan.

  1. Ketik bilangan di kolom basisnya: «Desimal (basis 10)», «Biner (basis 2)», oktal, atau «Heksadesimal (basis 16)». Ketiga kolom lain terisi sendiri.
  2. Kalau ada digit yang tidak sesuai dengan basisnya (angka 2 pada biner, misalnya), alat akan memberi tahu.
  3. Untuk teks, ketik di kolom «Teks» dan lihat «Biner (8 bit per karakter)» serta heksadesimal per byte. Kamu juga bisa menempelkan bit dalam kelompok 8 untuk kembali ke teks.
  4. Untuk basis yang tidak umum, pakai «Basis apa saja (2 sampai 36)»: pilih basis asal, basis tujuan, dan angkanya.

Batasannya: hanya mengubah bilangan bulat non-negatif (tanpa desimal atau tanda) dan tidak menambahkan nol di depan untukmu, jadi kalau kamu ingin 8 bit tetap, lengkapi sendiri (13 menjadi 00001101). Apa pun yang kamu ketik tidak keluar dari browser kamu.

Kesalahan yang sering terjadi

Latihan beserta jawabannya

Coba selesaikan tiap soal sebelum melihat jawabannya, lalu periksa dengan alat.

Pertanyaan umum

Bagaimana mengubah 1101 dari biner ke desimal?

Jumlahkan nilai tempat yang berisi angka 1: 8 + 4 + 1 = 13. Digit kedua dari kanan adalah 0, jadi 2 tidak dijumlahkan.

Berapa 255 dalam biner dan heksadesimal?

255 adalah 11111111 dalam biner dan FF dalam heksadesimal. Itu nilai terbesar yang muat dalam satu byte 8 bit.

Mengapa heksadesimal memakai huruf?

Karena membutuhkan enam belas simbol berbeda, sedangkan sistem desimal hanya menyediakan sepuluh (0 sampai 9). Itu sebabnya A bernilai 10, B bernilai 11, C bernilai 12, D bernilai 13, E bernilai 14, dan F bernilai 15.

Berapa banyak angka berbeda yang bisa ditulis dengan 8 bit?

256, dari 0 sampai 255. Secara umum, dengan n bit bisa diwakili 2 pangkat n nilai.

Apakah alat ini mengubah bilangan negatif atau berdesimal?

Tidak, hanya bilangan bulat non-negatif. Untuk teks dipakai UTF-8, jadi huruf beraksen dan emoji menghasilkan lebih dari 8 bit.