Konverter Sistem Bilangan Online: BIN/HEX/DEC/OCT & Negatif

Dunia komputer berjalan dengan angka nol dan satu, tetapi manusia berpikir dalam angka desimal. Dan programmer? Mereka harus memahami segalanya di antaranya. Baik Anda melakukan debug kode tingkat rendah, mengatur warna di CSS, menghitung mask IP, atau mengerjakan tugas ilmu komputer, Anda akan menemukan kebutuhan untuk mengkonversi angka antar sistem.

Kalkulator biasa di Windows atau ponsel seringkali lambat dan canggung. Konverter sistem bilangan cerdas kami dirancang oleh developer untuk developer. Ia menawarkan konversi instan secara real-time, dukungan untuk angka yang sangat besar, dan sebagai salah satu dari sedikit alat online, ia menangani bilangan negatif dalam bentuk biner dengan benar.

Apa yang bisa dilakukan konverter sistem bilangan ini?

Saat mengembangkan widget ini, kami berfokus untuk mengatasi masalah paling umum bagi programmer:

  1. Reaktivitas Real-time: Tidak ada tombol “Hitung”. Mulailah mengetik di bidang HEX dan Anda akan segera melihat bagaimana BIN dan DEC berubah.
  2. Dukungan Bilangan Negatif (Signed Integers): Sebagian besar konverter online gagal ketika Anda mengetik -5. Kami tidak. Berkat pilihan lebar bit (8, 16, 32, 64 bit), kami mensimulasikan perilaku prosesor yang tepat menggunakan apa yang disebut komplemen dua (Two’s Complement).
  3. Keterbacaan Kode Biner: Melihat 1110101011011110 melelahkan mata. Alat kami dapat secara otomatis memformat output menjadi 1110 1010 1101 1110 setiap 4 bit (nibble), yang secara radikal mengurangi kesalahan saat menyalin.
  4. Dukungan BigInt: Perlu mengkonversi angka 64-bit atau hash? JavaScript standar berhenti pada angka $2^{53}$. Engine kami dapat menangani angka dengan panjang arbitrer dalam mode “Unsigned”.

Panduan Sistem Bilangan: Kapan Menggunakan yang Mana?

1. Sistem Bilangan Desimal (DEC - Decimal)

  • Basis: 10 (angka 0-9)
  • Penggunaan: Kehidupan sehari-hari, keuangan, menghitung iterasi dalam kode.
  • Fakta Menarik: Komputer tidak memahaminya, harus mengkonversinya ke biner.

2. Sistem Bilangan Biner (BIN - Binary)

  • Basis: 2 (angka 0, 1)
  • Penggunaan: Kode mesin, gerbang logika, masking alamat IP.
  • Tips: Setiap digit mewakili satu bit. 8 bit membentuk 1 byte.

3. Sistem Bilangan Heksadesimal (HEX - Hexadecimal)

  • Basis: 16 (angka 0-9, huruf A-F)
  • Penggunaan: Notasi kompak untuk kode biner. Satu karakter HEX mewakili tepat 4 bit (nibble). Dua karakter (misalnya, FF) mewakili satu byte penuh.
  • Contoh:
    • Warna di web: #FF5733 (Merah, Hijau, Biru).
    • Alamat MAC: 00:1A:2B:3C:4D:5E.
    • Dumps memori (Memory dumps).

4. Sistem Bilangan Oktal (OCT - Octal)

  • Basis: 8 (angka 0-7)
  • Penggunaan: Komputer yang lebih tua secara historis, saat ini terutama izin Linux (chmod).
  • Contoh: Perintah chmod 755 mengatur hak akses rwx-rx-rx (baca, tulis, eksekusi).

Cara Benar Bekerja dengan Bilangan Negatif?

Ini adalah fitur paling canggih dari konverter kami. Dalam memori komputer, tidak ada tanda “minus”. Untuk menyimpan bilangan negatif, komputer paling sering menggunakan metode komplemen dua (Two’s Complement).

Namun, hasil konversi bilangan negatif bergantung pada berapa banyak bit yang dialokasikan untuk variabel tersebut. Oleh karena itu, di bilah atas Anda akan menemukan sakelar Lebar Bit.

Contoh: Bagaimana Angka -5 Terlihat?

Cobalah sendiri di konverter kami:

  1. Atur lebar ke 8-bit.

    • Masukkan ke DEC: -5.
    • Hasil HEX: FB.
    • Hasil BIN: 1111 1011.
    • Penjelasan: $256 - 5 = 251$ (yaitu FB).
  2. Atur lebar ke 16-bit.

    • Masukkan ke DEC: -5.
    • Hasil HEX: FFFB.
    • Penjelasan: Karena kita memiliki lebih banyak ruang, “satu” akan mengisi sisa ruang di kiri.
  3. Atur lebar ke Hanya Positif (Unsigned).

    • Jika Anda memasukkan -5, bidang akan berubah merah. Mode ini tidak mendukung bilangan negatif, karena akan membutuhkan jumlah ‘satu’ yang tak terbatas.

Tips Profesional: Jika Anda bekerja dengan warna atau alamat IP, selalu gunakan mode “Hanya Positif”. Jika Anda mengerjakan tugas C/C++ atau assembler, alihkan ke 32-bit atau 64-bit.


Tabel Konversi Cepat (Lembar Cepat)

Untuk referensi cepat, berikut adalah nilai dasar yang harus diketahui oleh setiap “ahli IT” di luar kepala.

Desimal (DEC)Heksadesimal (HEX)Biner (BIN)Catatan
0000000Nol
1010001
100A1010
150F1111Nilai maksimum 4 bit (Nibble)
16100001 0000
1277F0111 1111Nilai maks untuk signed 8-bit (char)
255FF1111 1111Nilai maks untuk unsigned 8-bit (byte)
65 535FFFFNilai maks untuk 16-bit

Pertanyaan yang Sering Diajukan (FAQ)

Apa arti dari "Bit Depth" (Lebar Bit)? Menentukan berapa banyak memori yang kita alokasikan untuk sebuah angka.
  • 8-bit: Nilai 0 hingga 255 (atau -128 hingga 127). Sesuai dengan tipe char atau byte.
  • 16-bit: Nilai hingga 65 535. Sesuai dengan tipe short.
  • 32-bit: int standar dalam bahasa modern.
  • 64-bit: Untuk angka yang sangat besar (long long, BigInt).
Mengapa angka 255 dalam HEX ditulis sebagai FF? Sistem heksadesimal memiliki 16 digit (0-9 dan A-F), di mana F memiliki nilai 15. Angka FF dihitung sebagai: $(15 \times 16^1) + (15 \times 16^0) = 240 + 15 = 255$.
Bagaimana cara mengkonversi warna HEX ke RGB? Warna di web, misalnya #E05412, terdiri dari tiga byte: Merah (E0), Hijau (54), Biru (12). Masukkan "E0" ke bidang HEX konverter kami -> Anda akan mendapatkan 224. Masukkan "54" -> Anda akan mendapatkan 84. Masukkan "12" -> Anda akan mendapatkan 18. Hasilnya adalah rgb(224, 84, 18).
Apa arti dari prefiks 0x, 0b, atau 0o? Untuk membedakan sistem bilangan, programmer menggunakan prefiks:
  • 0x = Heksadesimal (misalnya 0xFF)
  • 0b = Biner (misalnya 0b101)
  • 0o = Oktal (misalnya 0o755)
Konverter kami mengenali notasi ini, tetapi tidak perlu menuliskannya.
Mengapa bidang input saya berubah merah? Itu adalah fitur validasi input. Ini berarti Anda telah memasukkan karakter yang tidak termasuk dalam sistem bilangan tersebut. Contoh:
  • Huruf "G" ke HEX (hanya A-F yang diizinkan).
  • Angka "2" ke BIN (hanya 0 dan 1 yang diizinkan).
  • Angka "8" ke OCT (hanya 0-7 yang diizinkan).
Perbaiki kesalahan ketik dan perhitungan akan dilanjutkan.