Kuinka muuntaa negatiiviset luvut binaariksi

Olet melkein varmasti kuullut negatiivisista luvuista. Jos sinulla on ollut edes pieni altistuminen tietojenkäsittelytieteen ja tietokoneohjelmoinnin maailmalle, binäärilukujen käsite ei ole täysin vieras. Mutta ellet ole tutkinut ohjelmointimaailmaa henkilökohtaisesti, et todennäköisesti ole koskaan työskennellyt sisällöllisesti binäärilukujen kanssa.

Koska tietokoneet eivät voi "ajatella" tai "päättää" yksin, mutta ne voivat seurata järjestettyjä ohjeita vääjäämättömällä tarkkuudella, matemaatikot tulivat kauan sitten jopa tapa, jolla tietokoneet (tai riittävän kärsivälliset ihmiset) voivat tehdä yhteen-, vähennys- ja muita matemaattisia operaatioita käyttämällä vain numeroita 0 ja 1.

Mutta onko olemassa tapa yhdistää nämä kaksi ideaa negatiivisten lukujen tuottamiseksi? Onko se yhtä yksinkertaista kuin käskeä koneita kiinnittämään pieni vaakasuora palkki olemassa olevan numeron a la kynän ja paperin eteen, vai tekeekö bitit ja tavut tekijät entistä paremmin asiaan?

Mitä ovat binääriluvut?

instagram story viewer

Tietokoneilla on valtava määrä prosessoritehoa, ja jopa vanha clunker pystyy suorittamaan laskutoimituksia nopeudella, joka tuntuu käsittämättömältä jopa aritmeettisesti lahjakkaimmalle ihmiselle. Mutta ne eivät ole aivoja, ja ainoa tapa saada heidät käsittelemään monimutkaista tietoa on sijoittaa kaikki mahdollinen toiseen tilaan, esimerkiksi PÄÄLLE tai POIS.

"Tietokoneessa" yksittäiseen 0 tai 1 viitataan nimellä bitti. Näihin kuuluvat ryhmät napata (4 bittiä), tunnettu tavu (8), sana (1) ja pitkä sana (32).

Desimaaliluvut, joita tyypillisesti näet, kuten 492 ja 35, ovat "base-10", koska ne sisältävät 10 progressiivista symbolia (numerot 0-9), jotka "kaatu" seuraavalle vasemmalle - seuraava "10: n voima". Binääriluvut sisältävät sen sijaan vain kaksi symbolia (numerot 0 ja 1) ja ovat "base-2". Jokainen vasemmalle siirtyminen luvun lopusta on kahden kasvava voima: Loppunumerot edustavat 1, seuraavat 2, sitten 4, 8, 16 ja pian.

  • Desimaaliluku on mikä tahansa luku perus-10-järjestelmässä, ei välttämättä luku, joka sisältää desimaalipilkun.

Esimerkkejä binääriluvuista

Binaarisessa "työkappaleessa" 0101 on 1: t yhdellä ja 4: llä paikalla ja 0: lla 2 ja 8. Siten sen desimaaliekvivalentti on 1 + 4 = 5.

Vastaavasti tavu 1001 1100 vastaa 128 + 16 + 8 + 4 (28 + 25 + 24 + 23) = 156.

täydentää binääriluvun numero on vain luku, jonka numerot ovat "kytketty". Esimerkiksi komplementin 1001 1100 = 0110 0011.

Negatiivisten lukujen muuntaminen binaariksi

Negatiivisen desimaaliluvun muuntaminen binääriluvuksi on luultavasti toisin kuin muut numeeriset muunnokset olet esiintynyt, koska mielesi kaikesta vertailevasta laiskuudestaan ​​huolimatta on paljon joustavampi useimmilla tavoilla kuin mikään muu PROSESSORI. Se on kuitenkin yksinkertainen prosessi.

Muunnos tehdään käyttämällä a kahden komplementti binaarinen, joka vaatii ohjelmoijan opastamaan tietokonetta tulkitsemaan kaikki binääriluvut, jotka alkavat 1: llä, negatiivisina. Ohjelma sitten konstruoi vastaavan positiivisen luvun binäärisenä, ottaa sen komplementin ja lisää yhden.

Esimerkiksi, kun otetaan huomioon luku −47, tietokone luo binääriluvun +47: lle:

0001 1111

Tämän täydennys on:

1110 0000

Yhden lisääminen tähän antaa:

1110 0001

Huomaa, että tietokone on "allekirjoittanut" nämä luvut käsittääkseen johtavan 1 negatiivisena ja käsittelemällä tulokset eri tavalla kuin yksinkertaisesti laskemalla yhteen symbolin 1 käyttämät 2: n tehot.

Teachs.ru
  • Jaa
instagram viewer