Come scrivere il sistema di numeri binari in codice C

Come scrivere il sistema di numeri binari in codice C
IL binario Il sistema numerico è parte integrante dell'informatica e richiede una comprensione di base sia dell'hardware di calcolo che dei linguaggi di programmazione. Binario I numeri sono numeri di base-2, il che significa che ogni cifra in un numero binario può avere un valore di 0 o 1.

Scrivere a Numero binario Il sistema nel codice C è una capacità fondamentale per gli sviluppatori, ma è uno che deve essere padroneggiato attraverso la pratica e lo studio. La pratica delle convenzioni di codifica di base, come l'uso di tipi di dati, la dichiarazione di variabili e l'utilizzo di operazioni bitwise e logiche consentirà a qualsiasi programmatore di acquisire competenza per scrivere sistemi di numeri binari nel codice C.

Segui questo articolo per imparare a scrivere sistemi di numeri binari nel codice C.

Metodi per scrivere numeri binari in C

Esistono quattro metodi per scrivere numeri binari in C.

  • Metodo iterativo
  • Metodo ricorsivo.
  • Metodo ricorsivo usando l'operatore bitwise
  • Usando bitset

Metodo 1: metodo iterativo

Un modo per scrivere un sistema di numeri binari in linguaggio C usando un metodo iterativo è ripetersi attraverso un ciclo e bitwise e fare qualsiasi numero intero con "2^i" e determinare se il bit "I'th è 0 (OFF) o 1 ( SU).

Per una buona comprensione, vedi questo codice.

#includere
void bin (non firmato N)

non firmato i;
per (i = 1 << 31; i > 0; i = i / 2)
(N & I) ? printf ("1"): printf ("0");

int main (vuoto)

Bin (3);
printf ("\ n");
Bin (2);

In questo codice, abbiamo preso un numero intero non firmato (32 bit), che ha bit da 0 a 31. Inizia al bit 31 e controlla se è acceso o spento. Se è acceso, stampare "1"; Se è spento, stampa “0."Questo mostrerà la rappresentazione binaria dell'intero non firmato. Successivamente, determinare se il bit 30 è acceso o spento; Se on, stampare "1"; se spento, stampare “0."La rappresentazione binaria del numero può essere ottenuta ripetendo questa procedura per bit da 31 a 0.

Produzione

Metodo 2: metodo ricorsivo

Per stampare la forma binaria di un numero usando un metodo ricorsivo, il primo passo sarà verificare se il numero> 1. Se lo è, spingi il tuo numero sullo stack e dividilo per 2 in modo ricorsivo fino a quando non è ancora maggiore di 1. Successivamente, fai scoppiare quel numero dallo stack e prendi il suo 'mod'da 2 e stampare il resto.

Per avere un'idea di come funziona il metodo ricorsivo, controlla questo esempio.

#includere
Utilizzo dello spazio dei nomi std;
void bin (non firmato N)

if (n> 1)
Bin (N / 2);
cout << n % 2;

int main (vuoto)

Bin (1);
cout << endl;
Bin (2);

In questo codice, all'interno della funzione bin (), prima determineremo se il numero è maggiore di 1. In tal caso, posizioniamo il numero sullo stack e lo dividiamo in modo ricorsivo per 2 fino a quando non è ancora più di 1 prima di continuare. Quindi, visualizziamo il residuo dopo aver preso il "mod" di quel numero da 2 e averlo fatto saltare fuori dallo stack. Quindi la funzione principale chiamerà la funzione bin () per i numeri 1 e 2 per stampare la loro forma binaria.

Produzione

Metodo 3: metodo ricorsivo usando l'operatore bitwise

Per seguire questo metodo, controlla se il tuo numero è maggiore di 0. Se lo è, sposta il numero destro il numero di 1 bit e la funzione di chiamata in modo ricorsivo e quindi stampare i bit come output.

Guarda questo esempio.

#includere
Utilizzo dello spazio dei nomi std;
void bin (non firmato N)

if (n> 1)
bin (n >> 1);
printf ("%d", n & 1);

int main (vuoto)

Bin (638);
printf ("\ n");
Bin (498);
restituzione 0;

In questo codice verifichiamo che il numero sia superiore a 0. In tal caso, spostano a destra l'intero di un bit, eseguire ripetutamente la funzione e quindi i bit verranno stampati.

Produzione

Metodo 4: usando il bitset

Possiamo salvare la rappresentazione binaria di qualsiasi intero usando il bitset classe (positivo e un numero negativo). Ci dà la libertà di avere qualsiasi pezzo che scegliamo, come un 32 bit binario Rappresentazione di un numero o solo una rappresentazione a 8 bit.

Ecco un esempio per una migliore comprensione.

#includere
Utilizzo dello spazio dei nomi std;
int main ()

int n = 2, m = -2;
bitset<8> B (N);
bitset<8> b1 (m);
cout << "Binary of 2:" << b << endl;
cout << "Binary of -2:" << b1 << endl;
restituzione 0;

In questo codice che archiviamo 2 E -2 In M E N rispettivamente. Saranno convertiti in binario forma e immagazzinato in B E B1, che verrà quindi stampato.

Produzione

Conclusione

Quando si scrive binario Sistema numerico nel codice C, è importante comprendere i principi di base del linguaggio di programmazione C. In primo luogo, ciò include la comprensione dei tipi di dati utilizzati in C (byte, parole e numeri interi) e come utilizzare i tipi di dati per la scrittura di numeri binari. Inoltre, si deve avere una comprensione delle convenzioni di codifica e del linguaggio sintattico per mettere in azione i comandi C. Nell'articolo di cui sopra, ti vengono forniti 4 metodi per scrivere binario Sistema numerico in C.