Lewati ke konten utama
CalcMax

Kalkulator Biner

Hasil

10001

Biner

Desimal
17
Heksadesimal
11
Sisa
0

Kalkulator biner menjumlahkan, mengurangkan, mengalikan, dan membagi bilangan yang ditulis pada basis dua, lalu menampilkan jawabannya sekaligus dalam biner, desimal, dan heksadesimal. Basis dua hanya memakai angka 0 dan 1, dan aritmetikanya sama persis dengan aritmetika yang sudah Anda kenal — yang berubah hanyalah di mana penyimpanan terjadi. Pada desimal, 9 ditambah 1 menyimpan satu ke kolom berikutnya karena basisnya sepuluh; pada biner, 1 ditambah 1 menyimpan karena basisnya dua. Fakta tunggal itulah seluruh penjumlahan biner, dan pengurangan, perkalian, serta pembagian mengikutinya dengan cara yang sama seperti yang Anda duga. Jawabannya dicetak tiga kali karena ketiga bacaan itu berguna untuk hal yang berbeda: bentuk binernya yang Anda cari, bentuk desimalnya yang bisa Anda periksa sekilas, dan bentuk heksadesimalnya adalah bit yang sama yang dikelompokkan empat-empat, yaitu cara orang yang menulis kode mesin membacanya. Pembagiannya adalah pembagian bilangan bulat, jadi sisanya mendapat barisnya sendiri alih-alih menghilang ke dalam tanda desimal.

Rumus

1011 + 110 = 10001 (11 + 6 = 17)

1011
Bilangan pertama, ditulis pada basis dua. Membacanya sebagai basis dua itulah yang membuat nilainya sebelas — rangkaian angka yang sama, kalau dibaca sebagai desimal, berarti seribu sebelas, dan justru kekeliruan itulah yang hendak dicegah halaman ini
+ − × ÷
Operasinya. Bekerja angka per angka persis seperti pada desimal, hanya saja sepuluh diganti dua di setiap tempat yang menyimpan atau meminjam
1 + 1 = 10
Satu-satunya fakta aritmetika biner yang belum Anda kenal. Dua angka satu menghasilkan satu angka nol dengan satu disimpan ke posisi berikutnya, karena angkanya habis setelah satu. Tiga angka satu menghasilkan 11 — satu di jawaban dan satu disimpan
jumlah digit × 2ⁿ
Cara bacaan desimalnya dihasilkan: setiap digit biner dikalikan nilai tempatnya lalu hasilnya dijumlahkan. Dari sinilah 10001 menjadi tujuh belas, dan inilah satu-satunya jembatan antara jawaban biner dan jawaban desimal
sisa
Yang tersisa ketika sebuah pembagian tidak habis. Membagi 1011 dengan 10 memberi 101 dengan sisa 1, karena sebelas adalah lima kali dua tambah satu. Baris sisa selalu ditampilkan, dan nilainya nol untuk tiga operasi yang tidak mungkin menyisakan apa pun
53 bit
Selebar apa masukan yang diterima halaman ini: sampai 9007199254740991, yaitu angka satu diikuti lima puluh tiga digit biner. Di atas lebar itu sebuah bilangan mesin berhenti bisa membedakan tetangganya, dan aritmetikanya diam-diam berhenti tepat

Siapa pun yang membaca atau menulis biner memerlukan halaman ini dengan alasan yang sama seperti ia memerlukan kalkulator desimal: aritmetikanya tidak sulit, tetapi mengerjakannya dengan tangan lambat dan kesalahannya tidak terlihat. Pemakaian sehari-harinya adalah membaca register perangkat keras atau bitmask — bit mana yang menyala pada sebuah byte status, atau topeng mana yang harus di-AND — dan memeriksa nilai yang dicetak dalam biner oleh kompilator, debugger, atau perkakas jaringan. Subnet mask, bit izin pada sebuah berkas, kolom flag pada register status CPU, dan keadaan pin pada mikrokontroler semuanya bilangan biner yang perlu dihitung orang, dan bacaan heksadesimal di samping jawabannya adalah bentuk yang sebenarnya dipakai ketika nilai-nilai itu didokumentasikan. Kegunaan lainnya adalah belajar: aturan menyimpan adalah hal yang setiap orang salah tulis di kertas tepat sekali, dan mengetik contoh di atas lalu melihat hasilnya muncul lebih cepat memperbaikinya daripada satu contoh di buku. Pelajar yang mengerjakan soal basis bilangan dengan tangan, dan siapa pun yang mengubah daftar kode mesin kembali menjadi sesuatu yang bisa diperiksa, akan mendapati bacaan desimal dan heksadesimalnya mengerjakan sebagian besar pekerjaan.

Contoh hitungan

  1. Menjumlahkan 1011 dan 110

    1. Sejajarkan kedua bilangan di sisi kanan: 1011 dan 0110
    2. Kolom paling kanan: 1 + 0 = 1
    3. Kolom berikutnya: 1 + 1 = 10, jadi tulis 0 dan simpan 1
    4. Kolom berikutnya: 0 + 1 + simpanan 1 = 10, jadi tulis 0 dan simpan 1
    5. Kolom paling kiri: 1 + simpanan 1 = 10, jadi tulis 0 dan simpan 1 ke posisi yang baru
    6. Hasilnya terbaca 10001, yaitu 16 + 1 = 17 dalam desimal

    Contoh pembuka halaman ini, dan cara tercepat melihat aturan menyimpan bekerja: hasilnya lebih panjang daripada kedua masukannya karena simpanan terakhir memerlukan posisinya sendiri. Bacaan desimalnya, 17, adalah alat pemeriksaannya — 11 ditambah 6 memang 17 — dan heksadesimal 11 adalah bit yang sama yang dikelompokkan empat-empat, itulah sebabnya bentuknya kebetulan mirip sebelas pada desimal. Kebetulan itu hilang begitu bilangannya membesar.

  2. Membagi 1011 dengan 10

    1. Ini sebelas dibagi dua, jadi jawabannya lima dengan sisa satu
    2. Lima dalam biner adalah 101, dan satu adalah 1
    3. Halaman ini melaporkan hasil baginya sebagai 101 dan sisanya sebagai 1, bukan mencetak 101,1

    Contoh yang menunjukkan mengapa baris sisa ada. Kalau hanya hasil baginya yang dicetak, 101 akan mengatakan bahwa sebelas dibagi dua adalah lima, dan baris di bawahnya itulah yang membuat pernyataan itu benar. Ada alasan kedua untuk tidak meraih tanda desimal di sini: begitu hasilnya punya bagian pecahan, perhitungannya bisa gagal berakhir — satu dibagi tiga dalam biner berjalan tanpa henti — sementara masukan dan keluaran halaman ini seluruhnya bilangan bulat.

  3. Mengurangkan 1011 dari 110

    1. Ini enam dikurangi sebelas, jadi jawabannya negatif
    2. Selisihnya lima, dan tandanya dibawa di depan hasilnya
    3. Lima adalah 101, jadi jawabannya -101

    Tidak ada yang memakai komplemen dua di sini, yaitu skema yang dipakai prosesor untuk menyimpan bilangan negatif. Tanda minus dipertahankan sebagai tanda di depan bilangan, yaitu bentuk yang dipakai orang ketika menulis di kertas dan bentuk yang tetap terbaca ketika nilainya dicetak bersanding dengan bacaan desimal dan heksadesimalnya. Representasi mesin untuk nilai yang sama adalah pola bit dengan lebar tetap, dan lebar itu bukan sesuatu yang dimiliki halaman ini.

Batasan

Halaman ini hanya bekerja pada bilangan bulat. Tidak ada titik biner dan tidak ada pecahan biner, jadi 1,01 tidak diterima — artinya pembagian yang tidak habis pun menghasilkan hasil bagi dan sisa, bukan uraian desimal, dan hasil baginya dipotong ke arah nol alih-alih dibulatkan. Masukan dibatasi sampai 9007199254740991, yaitu angka satu diikuti lima puluh tiga digit biner; di atas lebar itu aritmetikanya tidak lagi bisa dijamin tepat, dan masukan sebesar itu ditolak alih-alih dijawab secara hampiran. Hasilnya dibatasi pada langit-langit yang sama, sehingga perkalian yang melampauinya melaporkan galat alih-alih angka yang salah. Bilangan negatif ditulis dengan tanda minus di depan, bukan dalam komplemen dua, dan tidak ada lebar bit tetap yang ditawarkan maupun diasumsikan: 1011 di sini adalah empat bit, bukan empat bit rendah sebuah register. Pembagian dengan nol ditolak.

Pertanyaan yang sering diajukan

Mengapa 1 + 1 sama dengan 10 dan bukan 2?
Karena pada basis dua tidak ada angka untuk dua. Angkanya hanya 0 dan 1, lalu kolomnya habis, persis seperti kolom satuan pada desimal yang habis setelah 9. Jadi dua angka satu menghasilkan nol di kolom itu dan menyimpan satu ke kolom berikutnya, yang ditulis 10 — dan itu pernyataan yang sama dengan 9 + 1 = 10 pada desimal, hanya basisnya yang berganti. Tiga angka satu menghasilkan 11: satu di jawaban dan satu disimpan.
Mengapa baris sisa selalu ada padahal saya sedang menjumlah atau mengali?
Karena panel hasil di halaman ini adalah daftar baris yang tetap, bukan daftar yang memanjang dan memendek mengikuti operasi yang Anda pilih, dan baris yang muncul lalu hilang lebih sulit dibaca daripada baris yang selalu di tempat yang sama. Pengurangan, penjumlahan, dan perkalian bilangan bulat tidak mungkin menyisakan sisa, jadi barisnya terbaca 0 — nol itu adalah cara baris tersebut mengatakan bahwa operasinya tidak menyisakan apa pun, bukan tanda gagal menghitung. Pembagian satu-satunya operasi di sini yang bisa menyisakan, dan baris itulah yang mencegah hasil bagi yang dipotong tampak seperti jawaban yang tepat.
Berapa bilangan terbesar yang bisa saya masukkan?
9007199254740991, yaitu lima puluh tiga angka satu dalam biner, atau 1FFFFFFFFFFFFF dalam heksadesimal. Batas itu adalah lebar saat sebuah bilangan mesin berhenti bisa membedakan bilangan bulat yang bersebelahan, jadi di atasnya aritmetikanya diam-diam berhenti tepat — hasilnya akan tampak seperti sebuah angka padahal bukan. Masukan yang lebih lebar ditolak dengan pesan, bukan dipotong atau dibulatkan, dan hasil yang melampaui langit-langit yang sama juga ditolak.
Bisakah saya mengurang dan mendapat jawaban negatif?
Bisa. Taruh bilangan yang lebih besar di kotak kedua, dan jawabannya kembali dengan tanda minus di depan, pada ketiga bacaannya. Ini bukan komplemen dua, yaitu representasi yang dipakai prosesor ketika menyimpan bilangan negatif dalam bit berlebar tetap — ini bentuk tanda di depan, yaitu yang akan Anda tulis di kertas dan yang tetap terbaca di samping bacaan desimal dan heksadesimal. Tidak ada lebar bit yang diasumsikan, jadi jawaban negatif tidak dilipat menjadi pola angka satu.
Mengapa pembagiannya tidak tepat?
Karena halaman ini bekerja pada bilangan bulat, jadi pembagian yang tidak habis memberi hasil bagi yang dipotong ke arah nol ditambah sisanya. Sebelas dibagi dua adalah lima sisa satu, dan halaman ini melaporkan 101 serta 1, bukan 101,1. Itu pilihan yang disengaja, bukan kekurangan: begitu hasilnya punya bagian pecahan, perhitungannya bisa gagal berakhir — satu dibagi tiga dalam biner adalah uraian yang berulang — dan halaman yang diam-diam membulatkannya akan mencetak angka yang bukan jawabannya.
Untuk apa bacaan heksadesimalnya?
Itu nilai yang sama yang dikelompokkan empat bit sekali, yaitu cara orang yang menulis kode mesin membaca biner. Satu byte adalah delapan bit dan karena itu tepat dua digit heksadesimal, sehingga FF, 2A, dan B2 adalah bentuk yang muncul di dokumentasi, debugger, dan lembar data. Mengubah antara biner dan heksadesimal sebenarnya bukan perhitungan sama sekali — melainkan pengelompokan ulang — itulah sebabnya bacaan itu gratis di sini.

Referensi

Kalkulator terkait