A negatív számok konvertálása binárisra

Szinte biztosan hallott már negatív számokról. Ha volt egy kis kitettsége a számítástechnika és a számítógépes programozás világába, a bináris számok fogalma nem teljesen idegen. De hacsak nem személyesen fedezte fel a programozási világot, valószínűleg soha nem dolgozott érdemben bináris számokkal.

Mivel a számítógépek nem képesek önmagukban "gondolkodni" vagy "dönteni", hanem csalódhatatlan pontossággal képesek követni az elrendelt utasításokat, a matematikusok már régen olyan módon, hogy a számítógépek (vagy kellően türelmes emberek) összeadást, kivonást és egyéb matematikai műveleteket végezzenek, csak a 0 és 1.

De van-e mód arra, hogy ezt a két ötletet negatív számok előállítására kombináljuk? Olyan egyszerű ez, mint mondani egy gépnek, hogy ragasszon egy kis vízszintes sávot egy meglévő szám a la toll és papír elé, vagy a "bitek és bájtok" tényező jobban bevonja a dolgokat?

Mik azok a bináris számok?

A számítógépeknek óriási a feldolgozási teljesítményük, és még egy régi clunker is képes olyan számításokat végrehajtani, amelyek a számtani tehetségű emberek számára is érthetetlennek tűnnek. De ezek nem agyak, és az egyetlen módja annak, hogy a komplex információkat kezeljék, ha mindent visszaállítanak két állapot egyikébe, például BE vagy KI.

A "számítógépes esetekben" egyetlen 0-ra vagy 1-re a bit. Ezek csoportjai a rágcsál (4 bit), a jól ismert byte (8), a szó (1) és a hosszú szó (32).

Az általában látott tizedesjegyek, például a 492 és a 35, "alap-10", mivel 10 progresszív szimbólumot tartalmaznak (0 és 9 közötti számjegyek), amelyek "gurulj át" a következő helyre balra - a következő "10-es hatvány". A bináris számok ehelyett csak két szimbólumot (a 0 és 1 számjegyet) tartalmaznak, és azok "alap-2". A szám végétől számított minden bal oldali lépés növekvő hatvány: A végjegyek 1-et, a következő 2-t, majd 4, 8, 16 és hamar.

  • Tizedes szám bármely szám az alap-10 rendszerben, nem feltétlenül olyan szám, amely tizedespontot tartalmaz.

Példák bináris számokra

A 0101 bináris "nybble" -nek 1-e van az 1. és a 4. helyen, és 0-a a 2. és a 8. helyen. Így tizedesegyenértéke 1 + 4 = 5.

Hasonlóképpen, az 1001 1100 bájt egyenértékű 128 + 16 + 8 + 4 (28 + 25 + 24 + 23) = 156.

A kiegészítés A bináris szám értéke csak az a szám, amelynek számai "kapcsolva" vannak. Például az 1001 1100 = 0110 0011 komplementere.

Negatív számok konvertálása binárisra

Az, hogy miként konvertál negatív tizedes számot bináris számgá, valószínűleg eltér a többi numerikus konverziótól azért léptél fel, mert elméd minden összehasonlító lajhár ellenére a legtöbb szempontból sokkal rugalmasabb, mint bármi más PROCESSZOR. Ez azonban egyenes folyamat.

Az átalakítás az a használatával történik kettő bináris komplementer, amely megköveteli, hogy a programozó utasítsa a számítógépet, hogy az 1-től kezdődő bináris számokat negatívumként értelmezze. A program akkor binárisan konstruálja a megfelelő pozitív számot, felveszi annak kiegészítését és hozzáad egyet.

Például a −47 számot figyelembe véve a számítógép létrehozza a +47 bináris számát:

0001 1111

Ennek kiegészítése:

1110 0000

Ehhez hozzáadva egyet:

1110 0001

Ne feledje, hogy a számítógép "aláírta" ezeket a számokat, hogy negatívként kezelje az első 1-et, és az eredményeket másképp dolgozza fel, mint egyszerűen összeadja az 1-es szimbólum által elfoglalt 2-es értékeket.

  • Ossza meg
instagram viewer