Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Teknologi Industri

Memahami Angka Negatif dalam Biner: Sign-Magnitude, Komplement, dan Two’s Complement

Pengurangan dapat diubah menjadi penjumlahan dengan memperlakukan subtrahend sebagai nilai negatif; contohnya, 7 − 5 menjadi 7 + (−5).

Setelah representasi biner positif dikuasai, langkah selanjutnya adalah mengkodekan angka negatif sehingga pengurangan dapat dilakukan menggunakan rutinitas penjumlahan yang sama.

Dalam desimal, tanda minus mendahului digit paling signifikan (misalnya, −5). Dalam perangkat keras biner, kita hanya memiliki dua keadaan—tinggi atau rendah—jadi kita harus mengkodekan tanda dalam pola bit itu sendiri.

Dalam konteks ini, kita tidak memiliki simbol ketiga seperti tanda "minus". Salah satu solusi adalah menyisihkan bit yang mewakili tanda matematis:

Memahami Angka Negatif dalam Biner: Sign-Magnitude, Komplement, dan Two’s Complement

Menggunakan bit untuk tujuan di luar bobot posisionalnya dapat menyebabkan kebingungan; contohnya, 1101₂ mungkin dibaca sebagai tiga belas kecuali bit leading diperlakukan sebagai tanda.

Pertama, tentukan lebar bit total yang diperlukan untuk menampung magnitudo terbesar, lalu pastikan semua operasi tetap dalam lebar itu.

Dalam contoh di bawah ini, kami membatasi rentang dari −7 (1111₂) hingga +7 (0111₂) dengan memperlakukan bit paling signifikan sebagai tanda, sehingga mencegah salah interpretasi.

Mengkodekan −5 sebagai 1101₂ mengilustrasikan sistem sign-magnitude, di mana bit leading menunjukkan tanda daripada nilai, menggantikan keurnian posisional untuk praktikalitas.

Bit paling signifikan menunjukkan tanda; sisa bit mempertahankan nilai posisional standar (kuasa dua).

Komplementasi

Sementara sign-magnitude konseptual sederhana, itu menyulitkan penjumlahan biner. Bagaimana cara menambahkan −5 (1101₂) ke angka lain menggunakan penjumlahan biasa?

Menciptakan algoritma penjumlahan kustom meniadakan tujuannya; itu setara dengan pengurangan manual, menghilangkan manfaat komputasi apa pun.

Alternatif—komplementasi—memungkinkan angka negatif ditambahkan menggunakan metode penjumlahan biner standar dan selaras secara alami dengan bobot posisional.

Dalam skema ini, bit paling signifikan masih membatasi rentang tetapi sekarang membawa bobot tempat negatif (misalnya, −8). Contohnya, −5 dikodekan sebagai berikut:

Memahami Angka Negatif dalam Biner: Sign-Magnitude, Komplement, dan Two’s Complement

Dengan tiga bit kanan yang dapat mewakili magnitudo dari 0 hingga 7, dan bit paling kiri yang mewakili 0 atau −8, kita dapat mewakili bilangan bulat dari −7 (1001₂ = −8 + 1 = −7) hingga +7 (0111₂ = 0 + 7 = 7).

Nilai positif tetap tidak berubah, tetapi nilai negatif memerlukan operasi komplement.

Memahami Angka Negatif dalam Biner: Sign-Magnitude, Komplement, dan Two’s Complement

Angka biner negatif di kolom kanan adalah jumlah tiga bit kanan plus delapan negatif dari bit paling kiri, jadi mereka tidak mengikuti progresi yang sama dengan angka positif.

Alih-alih, tiga bit kanan harus disetel sehingga, saat ditambahkan ke bobot tempat delapan negatif, menghasilkan total negatif yang diinginkan.

Two’s Complement

Tiga bit kanan adalah two’s complement dari kontrapart positifnya. Contohnya:

Memahami Angka Negatif dalam Biner: Sign-Magnitude, Komplement, dan Two’s Complement

Dengan bit bobot negatif sebagai bit keempat (−8), two’s complement untuk bilangan positif apa pun adalah nilai yang perlu ditambahkan ke −8 untuk mendapatkan setara negatif dari bilangan itu.

Menghitung two’s complement sederhana: balik semua bit (one’s complement) dan tambahkan satu. Contohnya, untuk mendapatkan two’s complement dari lima (101₂), pertama-tama balik menjadi 010₂, lalu tambahkan satu untuk mendapatkan 011₂, yang mewakili −5 dalam two’s complement tiga-bit.

Menghasilkan two’s complement bekerja sama jika Anda memanipulasi semua bit, termasuk bit paling signifikan, sekaligus. Contohnya, mengonversi 0101₂ (lima) menjadi negatif lima:

Balik semua bit → 1010₂; tambahkan satu → 1011₂, mewakili −5 dalam two’s complement empat-bit.

Penting agar posisi bit bobot negatif tetap ditetapkan sebelum melakukan konversi two’s complement apa pun. Jika bit kedelapan adalah bit bobot negatif (10000000₂), two’s complement dari 0000101₂ akan menjadi 1111011₂, mewakili −5 dalam two’s complement delapan-bit.

Oleh karena itu, dalam sistem delapan-bit, +5 adalah 00000101₂ dan −5 adalah 11111011₂.

LEMBAR KERJA TERKAIT:

Teknologi Industri

  1. Counter Biner 3-Bit dengan Timer 555 dan Flip-Flop 4027
  2. Numerasi Oktal dan Heksadesimal: Panduan Praktis untuk Insinyur
  3. Angka vs Numerasi: Memahami Perbedaan dan Dampak Praktisnya
  4. Pengurangan Biner Menggunakan Two's Complement
  5. Memahami Umpan Balik Negatif pada Op-Amp: Penguat Pengikut dan Stabilitas
  6. Menguasai Algoritma Koleksi Java: Pengurutan, Pengacakan, dan Lainnya
  7. Menguasai Tipe Numerik C++: Panduan Praktis
  8. MATLAB – Angka: Tipe, Penyimpanan, dan Konversi
  9. Angka Python: Memahami Tipe Data Numerik yang Tidak Dapat Diubah
  10. Membuat Aplikasi Go Pertama di PLCnext: Panduan Pemula