Konverter Biner ke Oktal

biner

Oktal masih hidup di izin file Unix (chmod 755), manual lama era PDP, dan beberapa toolchain mikrokontroler. Konverter ini mengambil string biner apa pun, mengelompokkan bit tiga per tiga dari kanan, dan memetakan setiap grup ke digit basis-8 antara 0 dan 7. Outputnya digit oktal polos tanpa awalan; jika bahasa yang Anda pakai memerlukan nol di depan (0755) atau awalan 0o (0o755), tambahkan sendiri.

Cara mengonversi biner ke oktal

  1. 1

    Masukkan nilai biner

    Spasi dibuang. Panjang apa pun boleh; grup paling kiri otomatis diberi padding nol sampai tiga bit.

  2. 2

    Kelompokkan bit bertiga dari kanan

    `111101100` menjadi `111 101 100`. Arah pengelompokan penting - selalu kanan-ke-kiri.

  3. 3

    Petakan tiap kelompok tiga bit

    000 = 0, 001 = 1, 010 = 2, sampai 111 = 7. Setiap kelompok tiga bit tepat menjadi satu digit oktal.

  4. 4

    Baca dan salin hasil

    Hasilnya digit oktal polos seperti `754`, tanpa awalan. Jika bahasa tujuan memerlukan nol di depan (`0754`) atau awalan `0o` (`0o754`), tambahkan sendiri.

Peta kelompok tiga bit ke oktal

Biner Oktal
000 0
001 1
010 2
011 3
100 4
101 5
110 6
111 7

Contoh: izin file Unix

rwxr-xr-x berarti pemilik punya baca/tulis/eksekusi, sedangkan grup dan lainnya punya baca/eksekusi. Dalam biner itu adalah 111 101 101, yang langsung berkelompok menjadi oktal 755 - angka persis yang Anda berikan ke chmod.

Kapan oktal berguna

  • Izin file: chmod 644, umask 022, stat -c %a semuanya bicara oktal.
  • Urutan escape: \100 di C adalah oktal untuk @ (64 desimal).
  • Kode mesin lama: Dokumen PDP-8, PDP-11, dan DEC awal mencantumkan opcode dalam oktal karena ukuran word mereka kelipatan 3 bit.
  • Kejelasan visual: pengelompokan tiga bit lebih cepat dibaca daripada biner tanpa alfabet lengkap milik heksadesimal.

Jebakan umum

  • Nol di depan berarti oktal di C: 0755 adalah oktal 755 (= desimal 493), 755 adalah desimal 755. Periksa bahasa Anda sebelum menempel.
  • JavaScript menghapus oktal lama: mode strict menolak 0755. Gunakan 0o755 sebagai gantinya.
  • Arah pengelompokan: jika Anda mengelompokkan kiri-ke-kanan, jawabannya salah untuk deret bit apa pun yang panjangnya bukan kelipatan 3.

Pertanyaan yang Sering Diajukan

Karena flag izin hadir dalam grup rapi berisi tiga (baca, tulis, eksekusi) per peran (pemilik, grup, lainnya). Setiap kelompok tiga bit memetakan 1-ke-1 ke digit oktal, sehingga rwxr-xr-x terbaca sebagai 755 dalam satu langkah.

Output di sini berupa digit polos tanpa awalan. Saat memakai nilai tersebut dalam kode, ikuti bahasa tujuan: C, Perl, dan shell memakai 0 di depan, Python 3, Rust, dan Swift memakai 0o, sedangkan chmod pada baris perintah tanpa awalan.

Bilangan negatif membutuhkan lebar bit bertanda (komplemen dua), dan konverter ini tidak punya opsi lebar: semua masukan dianggap tak bertanda. Untuk nilai negatif, tulis dulu polanya sebagai komplemen dua dengan lebar tetap, lalu konversikan pola itu.

Tidak. Konverter memberi padding nol pada grup paling kiri hingga tiga bit. 1111 menjadi 001 111, yaitu oktal 17.

Alat Terkait

Alat ini tersedia dalam bahasa lain