So konvertieren Sie Dezimalzahlen in Binärzahlen in C

So Konvertieren Sie Dezimalzahlen In Binarzahlen In C



Computersysteme verwenden häufig Binärzahlen zur Darstellung von Daten und Anweisungen. Da Dezimalzahlen für Menschen jedoch einfacher zu verstehen sind als Binärzahlen, ist eine Konvertierung erforderlich. In diesem Artikel wird das Verständnis zwischen Dezimalzahlen und Binärzahlen erläutert und Programmbeispiele für verschiedene Methoden bereitgestellt, die Dezimalzahlen in der Programmiersprache C in Binärzahlen umwandeln.

Wie konvertiert man Dezimalzahlen in Binärzahlen in C?

Der angegebene Dezimalwert wird mehrmals durch 2 geteilt und der Rest aufgezeichnet, bis wir als endgültigen Quotienten 0 erhalten. Dieser Prozess wird verwendet, um Ganzzahlen von Dezimalzahlen in Binärzahlen umzuwandeln. Die Formel, die den Konvertierungsprozess von dezimal in binär demonstriert, besteht aus den folgenden Schritten:







Schritt 1: Finden Sie den Rest, indem Sie die Zahl durch 2 dividieren und ihn dann einem Array hinzufügen.



Schritt 2: Als nächstes dividieren Sie den Rest durch zwei.



Schritt 3: Führen Sie die ersten beiden Schritte erneut durch, bis das Ergebnis 0 überschreitet.





Schritt 4: Zeigen Sie das Array rückwärts an, um die binäre Form der Zahl zu erhalten. Das Least-Significant-Bit (LSB) einer Binärzahl liegt oben, während das Most-Significant-Bit (MSB) unten liegt, was eine andere Möglichkeit ist, dies zu interpretieren. Das binäre Äquivalent der angegebenen Dezimalzahl ist diese.

Um dies besser zu verstehen, finden Sie hier eine Umrechnung von 11 10 bei der Dezimal-Binär-Konvertierung:



Division durch 2 Quotient Rest
11÷2 5 1 (LSB)
5 ÷ 2 2 1
2-2 1 0
1-2 0 1 (MSB)


Schreiben Sie nun den Rest in umgekehrter Reihenfolge, also dezimal (11). 10 ) wird (1011 2 ).

Der Rest wird notiert und dann so geschrieben, dass das (MSB) der Binärzahl zuerst kommt und dann der Rest. Folglich 1011 2 ist das binäre Äquivalent des angegebenen Dezimalwerts 11 10 . Infolgedessen 11 10 = 1011 2 . Es folgt die Implementierung der oben erwähnten Dezimal-Binär-Umwandlung in der C-Sprache.

Methoden zum Konvertieren von Dezimalzahlen in Binärzahlen

Diese in der C-Sprache verwendeten Methoden konvertieren Dezimalziffern in Binärziffern:

Implementieren Sie nun die Umwandlung von Dezimalzahlen in binäre Einsen nacheinander mit den oben genannten Ansätzen.

Methode 1: Dezimal zu Binär in der C-Programmierung mit for-Schleife

Unten sehen Sie die Umwandlung der Dezimalziffer (11) in eine Binärziffer mit Hilfe der for-Schleife in C:

#include
Leere Konvertierung ( int num1 ) {
Wenn ( num1 == 0 ) {
printf ( „0“ ) ;
zurückkehren ;
}
int binäre_num [ 32 ] ; // Vorausgesetzt 32 Bit-Ganzzahl.
int ich = 0 ;
für ( ;num1 > 0 ; ) {
binäre_num [ i++ ] = num1 % 2 ;
num1 / = 2 ;
}
für ( int j = i- 1 ; J > = 0 ; J-- )
printf ( '%D' , binäre_num [ J ] ) ;
}
int main ( ) {
int num1;
printf ( „Geben Sie eine Dezimalzahl ein:“ ) ;
scanf ( '%D' , & num1 ) ;
Konvertieren ( num1 ) ;
zurückkehren 0 ;
}


Das obige Programm verwendet die for-Schleife, um die vom Benutzer bereitgestellte Dezimalzahl in eine Binärzahl umzuwandeln. Die Ausgabe ist:

Methode 2: Dezimal zu Binär in der C-Programmierung mit while-Schleife

Bei dieser Methode wird die While-Schleife in C verwendet, um die Dezimalziffer (11) in eine Binärziffer umzuwandeln, wie unten gezeigt:

#include
int main ( ) {
int dezimalzahl, binärzahl = 0 , Basis = 1 , Rest;
printf ( „Geben Sie eine Dezimalzahl ein:“ ) ;
scanf ( '%D' , & decimal_num ) ;
während ( decimal_num > 0 ) {
rest = decimal_num % 2 ;
binäre_num = binäre_num + Rest * Base;
dezimalzahl = dezimalzahl / 2 ;
Basis = Basis * 10 ;
}
printf ( „Die Binärzahl der gegebenen Dezimalzahl mit while-Schleife ist: %d“ , binäre_num ) ;
zurückkehren 0 ;
}


In diesem Programm werden zunächst die vier ganzzahligen Variablen dezimal_num, binär_num, basis und rest deklariert. Der Benutzer gibt eine dezimale_Zahl ein, die wir in ihre binäre_Zahl umwandeln. Die binäre Konvertierung erfolgt über die while-Schleife.

Methode 3: Dezimal zu Binär in der C-Programmierung mit Stack

Dies ist die unkomplizierte Methode mit einem stapelbasierten C-Programm, das einen Dezimalwert in einen Binärwert umwandelt:

#include

#define MAX_SIZE 32 // maximale Anzahl von Bits in binärer Darstellung
int main ( ) {
int decimal_num, binär [ MAXIMALE GRÖSSE ] , oben = -1 ;
printf ( „Bitte geben Sie eine beliebige Dezimalzahl ein:“ ) ;
scanf ( '%D' , & decimal_num ) ;
während ( decimal_num > 0 ) {
binär [ ++oben ] = decimal_num % 2 ;
decimal_num / = 2 ;
}
printf ( „Die Binärdatei von %d mit der Stack-Methode lautet:“ ) ;
während ( Spitze > = 0 ) {
printf ( '%D' , binär [ Spitze-- ] ) ;
}
zurückkehren 0 ;
}


In diesem Programm deklarieren wir zunächst die drei Integer-Variablen „top“, „binary“ und „decimal_num“. Oben ist der Index des höchsten Elements im Stapel, dezimal ist die vom Benutzer eingegebene Zahl in Dezimalform, binär ist ein Array, das die Bits in binärer Form als MAX_SIZE-Bits enthält, und dezimal_num ist das binäre Array. Anschließend erfolgt die Binärkonvertierung mittels einer While-Schleife.

Die Ausgabe ist:

Methode 4: Dezimal zu Binär in der C-Programmierung mit bitweisem Operator

Ein als bitweise Operation bekannter Operator manipuliert jedes Bit von Binärsymbolen, die ganze Zahlen darstellen. Das Folgende ist ein einfaches C-Skript, das bitweise Operationen verwendet, um eine Zahl in Dezimalzahlen in Binärzahlen zu übersetzen:

#include

// Diese Methode zeigt alles an 4 Bits einer Zahl
ungültige Umwandlung ( int num1 ) {
// Betrachten Sie a 4 -Bit-Nummer
für ( int i = 3 ; ich > = 0 ; ich-- ) {
int bit = ( 1 << ich ) ;
Wenn ( num1 & Bit )
printf ( „1“ ) ;
anders
printf ( „0“ ) ;
}
}
int main ( ) {
int num1;
printf ( „Geben Sie eine Dezimalzahl ein:“ ) ;
scanf ( '%D' , & num1 ) ;
Wandlung ( num1 ) ;
zurückkehren 0 ;
}


Dieses Programm führt eine for-Schleife durch die Zahl aus, beginnend beim höchstwertigen Bit und endend beim Bit mit der niedrigsten Wertigkeit. Indem wir eine „bitweise UND“-Operation an Maske und Zahl durchführen, können wir bestimmen, ob das Bit entweder 0 oder 1 ist. Wenn es ungleich Null ist, ist das aktuelle Bit 1; andernfalls ist es 0.

Um die binäre Form von num1 anzuzeigen, geben Sie das Bit nach jeder Iteration aus. Die endgültige Ausgabe nach vollständiger Ausführung sieht wie folgt aus:

Abschluss

Es ist eine wesentliche Fähigkeit in der Computerprogrammierung, Zahlen von Dezimalzahlen in Binärzahlen umzuwandeln. Durch die Umwandlung von Dezimalzahlen in Binärzahlen können wir verschiedene Operationen in der C-Programmierung ausführen. In diesem Artikel werden vier Methoden zum Konvertieren von Dezimalwerten in Binärwerte vorgestellt.