Kalkulator komplemen dua

Ketik bilangan bertanda, atau bit sebuah bilangan, untuk melihat pola yang disimpan komputer. Bentuk komplemen satu dan magnitudo-tanda ditampilkan di sebelahnya, sehingga ketiga sistem mudah dibandingkan.

Gratis Berjalan di peramban Anda Diperiksa Selasa, 10 November 2026

Bilangan bertanda seperti -5, atau bit sebuah bilangan dalam heksadesimal atau biner, seperti FB atau 11111011.

Ditulis sebagai

Hasil

Bit komplemen dua — Bit yang dimuat lebar itu untuk bilangan tersebut, dalam kelompok empat.
Heksadesimal —
Nilai sebagai bertanda — Bilangan yang diwakili bit-bit itu dalam komplemen dua.
Nilai sebagai tak bertanda —
Rentang untuk lebar ini —
Pemeriksaan — Menyatakan apakah bilangan muat dalam lebar itu.
Bentuk yang dibandingkan

Alat ini berjalan di peramban Anda. Apa yang Anda masukkan tidak dikirim kepada kami.

Cara memakai

  1. Ketik bilangan di Bilangan atau bit. Untuk bit, pilih heksadesimal atau biner di bawah Ditulis sebagai.
  2. Pilih Lebar: jumlah bit yang disimpan komputer, 8, 16, 32, atau 64.
  3. Baca Bit komplemen dua untuk pola yang tersimpan, dan Bentuk yang dibandingkan untuk dua sistem lainnya.
  4. Bila Pemeriksaan menyatakan bilangan tidak muat, bit yang ditampilkan adalah yang akan disimpan komputer sebagai gantinya.

Cara bilangan negatif disimpan

Komputer menyimpan bilangan bulat bertanda dalam jumlah bit yang tetap. Dalam komplemen dua, bit teratas mewakili −2^(n−1), dan bit lainnya dijumlahkan seperti biasa. Untuk menulis −5 dalam 8 bit, tulis 5 sebagai 00000101, balik setiap bit, lalu tambahkan 1: 11111010 + 1 = 11111011.

−5  →  00000101  →  11111010  →  11111011 (FB dalam heksadesimal)

Komplemen satu dan magnitudo-tanda

  • Komplemen satu membalik setiap bit magnitudo: −5 adalah 11111010.
  • Magnitudo-tanda menyimpan magnitudo dan menjadikan bit teratas sebagai tanda: −5 adalah 10000101.
  • Keduanya punya dua nol. Semua satu pada komplemen satu, dan bit tanda yang menyala sendirian pada magnitudo-tanda, adalah −0.
  • Komplemen dua punya satu nol dan satu nilai negatif lebih banyak daripada nilai positif. Ini sistem yang dipakai sebagian besar prosesor untuk bilangan bulat.

Rentang dan luapan

Dengan n bit, rentang komplemen dua adalah −2^(n−1) sampai 2^(n−1) − 1: −128 sampai 127 untuk 8 bit, dan −2.147.483.648 sampai 2.147.483.647 untuk 32 bit. Nilai di luar rentang membungkus: 200 memerlukan delapan bit dan terbaca sebagai −56, karena 11001000 adalah −56 dalam komplemen dua.

Yang tidak dicakup alat

  • Aritmetika: alat ini menunjukkan cara bilangan disimpan, bukan hasil menjumlahkan atau mengalikan dua bilangan.
  • Pecahan desimal dan bilangan titik-mengambang, yang punya formatnya sendiri: lihat konverter IEEE 754.
  • Bahasa yang memunculkan galat saat luapan, bukan membungkus. Alat ini menampilkan hasil membungkus, dan menandainya.

Contoh: −5 dalam 8 bit

Ketik −5 dengan Ditulis sebagai diatur ke desimal dan Lebar diatur ke 8 bit. Pola komplemen dua adalah 11111011, yaitu FB dalam heksadesimal dan 251 sebagai bilangan tak bertanda.

−5 yang sama dalam dua sistem lainnya: komplemen satu adalah 11111010 dan magnitudo-tanda adalah 10000101.

Sistem Bit Heks Nilai
Komplemen dua 1111 1011 FB −5
Komplemen satu 1111 1010 FA −5
Magnitudo-tanda 1000 0101 85 −5
Tak bertanda 1111 1011 FB 251

Pertanyaan yang sering diajukan

Mengapa komputer memakai komplemen dua, bukan tanda minus?

Tanda minus akan memerlukan aturannya sendiri di setiap rangkaian penjumlahan. Dalam komplemen dua, penjumlahan dan pengurangan bekerja dengan cara yang sama untuk bilangan negatif dan positif, dan hanya ada satu nol.

Mengapa rentang negatif lebih besar satu nilai daripada rentang positif?

Nol menempati salah satu dari 2^n pola, sehingga nilai positif berjalan dari 1 sampai 2^(n−1) − 1 dan nilai negatif turun sampai −2^(n−1). Dalam 8 bit nilai ekstranya adalah −128, yang tidak punya pasangan positif.

Apa arti luapan di halaman ini?

Bilangan memerlukan lebih banyak bit daripada lebar yang tersedia. Halaman menampilkan bit yang akan dimuat lebar itu, dan baris Pemeriksaan menyatakan nilainya tidak muat. Misalnya 128 dalam 8 bit memuat 10000000, yang terbaca sebagai −128.

Mengapa kalkulator memakai bilangan bulat persis untuk 64 bit?

Bilangan JavaScript persis hanya sampai 2^53, sedangkan nilai 64-bit mencapai 2^64. Halaman memakai BigInt, sehingga setiap bit dipertahankan dan batas −9.223.372.036.854.775.808 ditampilkan dengan tepat.

Apakah Java memakai komplemen dua untuk bilangan bulatnya?

Ya. Java Language Specification mendefinisikan tipe bilangan bulatnya dalam komplemen dua, sehingga int adalah 32 bit komplemen dua dan long adalah 64 bit darinya.

Sumber

Angka dan teks terakhir diperiksa pada Selasa, 10 November 2026.

Kami memakai cookie yang diperlukan agar situs berjalan. Dengan persetujuan Anda, Google juga memakai cookie iklan untuk menampilkan iklan yang dipersonalisasi. Jika Anda menolaknya, iklan tetap tampil, tetapi tidak dipersonalisasi.