Konverter basis bilangan
Ubah bilangan antara biner, oktal, desimal, heksadesimal, dan basis apa pun dari 2 sampai 36, dengan bilangan besar, komplemen dua, dan tampilan bit.
Contoh kode
Salin contoh ini ke proyek Anda sendiri. Masing-masing hanya memakai pustaka standar bahasanya, jadi tidak ada yang perlu diinstal.
const value = 255n
console.log([2, 8, 16].map((base) => value.toString(base)).join(' '))Fungsinya
Mengubah bilangan antara biner, oktal, desimal, heksadesimal, dan basis apa pun dari 2 sampai 36. Setiap angka dari bilangan panjang tetap terjaga, pola komplemen dua ditampilkan dalam 8, 16, 32, atau 64 bit, dan Anda bisa membalik bit satu per satu.
Cara memakainya
- Ketik atau tempel bilangan di kolom input atau di salah satu baris.
- Pilih Basis input, Basis kustom dari 2 sampai 36, dan Lebar bit.
- Baca baris lainnya, klik sebuah bit untuk membaliknya, lalu salin hasilnya.
Contoh
255 adalah 1111 1111 dalam biner, 377 dalam oktal, dan FF dalam heksadesimal.
-1 pada 8 bit adalah 1111 1111 dalam komplemen dua, dan FF yang dibaca bertanda pada 8 bit kembali menjadi -1.
Perlu diketahui
- Awalan
0b,0o, dan0xditerima, begitu juga garis bawah dan spasi di antara angka. - Bilangan tidak dibatasi 64 bit atau 2^53; tampilan bit hanya muncul jika nilainya muat dalam lebar yang dipilih.
- Aktifkan Baca input sebagai pola komplemen dua agar
FFdibaca sebagai-1, bukan 255.
Bagaimana bilangan negatif bekerja dalam biner?
Komputer menyimpan bilangan negatif sebagai komplemen dua: balikkan semua bit lalu tambah satu. Dalam 8 bit, -1 adalah 1111 1111 dan -128 adalah 1000 0000. Pola yang sama dibaca 255 atau 128 tanpa tanda, jadi lebar dan tanda berpengaruh.
Pertanyaan umum
Mengapa konverter ini bisa menangani bilangan di atas 2^53?
Banyak konverter memakai bilangan floating-point yang kehilangan angka di atas 9.007.199.254.740.992. Alat ini memakai bilangan bulat berpresisi bebas, sehingga setiap angka tetap terjaga.
Apa arti awalan 0x, 0b, dan 0o?
Awalan itu menandai basis di kode sumber: 0x untuk heksadesimal, 0b untuk biner, dan 0o untuk oktal. Anda boleh mengetiknya atau tidak. Garis bawah dan spasi antar angka diabaikan.
Apakah alat ini mengirim bilangan saya ke mana pun?
Tidak. Semuanya terjadi di browser Anda. Apa yang Anda ketik tidak pernah dikirim ke server kami.