Come convertire i numeri negativi in ​​binario

Hai quasi sicuramente sentito parlare di numeri negativi. Se hai avuto anche solo una piccola esposizione al mondo dell'informatica e della programmazione informatica, il concetto di numeri binari non è del tutto estraneo. Ma a meno che tu non abbia esplorato personalmente il mondo della programmazione, probabilmente non hai mai lavorato in modo sostanziale con i numeri binari.

Poiché i computer non possono "pensare" o "decidere" da soli, ma possono seguire istruzioni ordinate con precisione infallibile, i matematici molto tempo fa arrivarono un modo per i computer (o per gli esseri umani sufficientemente pazienti) di eseguire addizioni, sottrazioni e altre operazioni matematiche utilizzando solo le cifre 0 e 1.

Ma c'è un modo per combinare queste due idee per produrre numeri negativi? È semplice come dire a una macchina di attaccare una piccola barra orizzontale davanti a un numero esistente alla carta e penna, o il fattore "bit e byte" rende le cose più complicate?

Cosa sono i numeri binari?

I computer hanno un'enorme quantità di potenza di elaborazione e persino un vecchio clunker può eseguire calcoli a una velocità che sembrerebbe incomprensibile anche all'essere umano più dotato aritmeticamente. Ma non sono cervelli e l'unico modo per convincerli a gestire informazioni complesse è relegare tutto il possibile in uno dei due stati, ad esempio ON o OFF.

In "computer-ese", un singolo 0 o 1 è indicato come a po. I gruppi di questi includono il sgranocchiare (4 bit), il noto byte (8), il parola (1) e il parola lunga (32).

I numeri decimali che vedi di solito, come 492 e 35, sono "base-10", perché includono 10 simboli progressivi (le cifre da 0 a 9) che "rotola" al prossimo posto a sinistra - la prossima "potenza di 10". I numeri binari, invece, includono solo due simboli (le cifre 0 e 1) e sono "base-2". Ogni movimento verso sinistra dalla fine del numero è una potenza crescente di due: le cifre finali rappresentano 1, il successivo 2, quindi 4, 8, 16 e presto.

  • Un numero decimale è qualsiasi numero nel sistema in base 10, non necessariamente un numero che include un punto decimale.

Esempi di numeri binari

Il binario "nybble" 0101 ha 1 al primo posto e il quarto posto, e 0 al secondo e l'ottavo posto. Quindi il suo equivalente decimale è 1 + 4 = 5.

Allo stesso modo, il byte 1001 1100 è equivalente a 128 + 16 + 8 + 4 (28 + 25 + 24 + 23) = 156.

Il complemento di un numero binario è solo il numero con le sue cifre "commutate". Ad esempio, il complemento di 1001 1100 = 0110 0011.

Conversione di numeri negativi in ​​binario

Il modo in cui converti un numero decimale negativo in un numero binario è probabilmente abbastanza diverso da altre conversioni numeriche ti sei esibito perché la tua mente, nonostante tutta la sua relativa pigrizia, è molto più flessibile nella maggior parte dei modi di qualsiasi altra PROCESSORE. Tuttavia, è un processo semplice.

La conversione viene eseguita utilizzando a binario in complemento a due, che richiede al programmatore di indicare al computer di interpretare qualsiasi numero binario che inizia con 1 come negativo. Il programma quindi costruisce il corrispondente numero positivo in binario, ne prende il complemento e ne aggiunge uno.

Ad esempio, dato il numero -47, il computer creerebbe il numero binario per +47:

0001 1111

Il complemento di questo è:

1110 0000

Aggiungendone uno a questo si ottiene:

1110 0001

Si noti che il computer ha "firmato" questi numeri per trattare un 1 iniziale come negativo ed elaborare i risultati in modo diverso rispetto alla semplice somma delle potenze di 2 occupate dal simbolo 1.

  • Condividere
instagram viewer