Kako pretvoriti decimalno v binarno v C

Kako Pretvoriti Decimalno V Binarno V C



Računalniški sistemi pogosto uporabljajo binarna števila za predstavitev podatkov in navodil, a ker so decimalne številke preprostejše za razumevanje kot binarne, je potrebna pretvorba. Ta članek bo obravnaval razumevanje med decimalkami in dvojiškimi in ponudil primere programov različnih metod, ki pretvorijo decimalke v dvojiške v programskem jeziku, imenovanem C.

Kako pretvoriti decimalno v binarno v C?

Podano decimalno vrednost večkrat delimo z 2, ostanek pa beležimo, dokler ne pridemo do 0 kot končnega količnika. Ta postopek se uporablja za pretvorbo celih števil iz decimalnih v dvojiška. Formula, ki prikazuje postopek pretvorbe iz decimalne v dvojiško, se šteje za naslednje stopnje:







Korak 1: Poiščite ostanek tako, da število delite z 2, nato pa ga dodajte matriki.



2. korak: Nato preostanek delite z dva.



3. korak: Ponovno izvedite prva dva koraka, dokler rezultat ne preseže 0.





4. korak: Prikažite matriko nazaj, da dobite dvojiško obliko števila. Najmanjši bit (LSB) binarnega števila leži na vrhu, medtem ko je najpomembnejši bit (MSB) proti dnu, kar je še en način za razlago tega. Dvojiški ekvivalent navedenega decimalnega števila je ta.

Da bi to bolje razumeli, je tukaj pretvorba  11 10 v decimalni v binarno pretvorbo:



Deljenje z 2 količnik Ostanek
11÷2 5 1 (LSB)
5 ÷ 2 2 1
2-2 1 0
1-2 0 1 (MSB)


Zdaj zapišite ostanek v obratnem vrstnem redu, torej decimalno (11 10 ) postane (1011 2 ).

Preostanek bo zabeležen in nato zapisan tako, da bo najprej (MSB) binarnega števila, nato preostanek. Posledično 1011 2 je dvojiški ekvivalent dane decimalne vrednosti 11 10 . Kot rezultat, 11 10 = 1011 2 . Sledi implementacija zgoraj omenjene decimalne v binarno pretvorbo v jeziku C.

Metode, uporabljene za pretvorbo decimalnega v dvojiško

Te metode, ki se uporabljajo v jeziku C, pretvorijo decimalne številke v dvojiške:

Zdaj implementirajte pretvorbo decimalnih mest v binarne eno za drugo z zgoraj omenjenimi pristopi.

1. način: decimalno v binarno v programiranju C z zanko for

Spodaj je pretvorba decimalne števke (11) v dvojiško s pomočjo for-zanke v C:

#include
void convert ( int št.1 ) {
če ( num1 == 0 ) {
printf ( '0' ) ;
vrnitev ;
}
int dvojiško_število [ 32 ] ; // Ob predpostavki 32 bitno celo število.
int jaz = 0 ;
za ( ; št.1 > 0 ; ) {
dvojiško_število [ i++ ] = št.1 % 2 ;
št.1 / = 2 ;
}
za ( int j = i- 1 ; j > = 0 ; j-- )
printf ( '%d' , dvojiško_število [ j ] ) ;
}
int main ( ) {
int num1;
printf ( 'Vnesite decimalno število: ' ) ;
scanf ( '%d' , & št.1 ) ;
Pretvorba ( št.1 ) ;
vrnitev 0 ;
}


Zgornji program uporablja zanko for za pretvorbo decimalnega števila, ki ga poda uporabnik, v binarno. Rezultat je:

2. način: decimalno v binarno v programiranju C z zanko while

Pri tej metodi se zanka while v C uporablja za pretvorbo decimalne števke (11) v dvojiško, kot je prikazano spodaj:

#include
int main ( ) {
int decimalno_število, binarno_število = 0 , osnova = 1 , ostanek;
printf ( 'Vnesite decimalno število: ' ) ;
scanf ( '%d' , & decimalno_število ) ;
medtem ( decimalno_število > 0 ) {
ostanek = decimalno_število % 2 ;
dvojiško_število = dvojiško_število + ostanek * osnova;
decimalno_število = decimalno_število / 2 ;
baza = osnova * 10 ;
}
printf ( 'Binarno dano decimalno število z zanko while je: %d' , dvojiško_število ) ;
vrnitev 0 ;
}


Štiri cele spremenljivke decimal_num, binary_num, osnova in ostanek so najprej deklarirane v tem programu. Uporabnik vnese decimal_num, ki ga bomo pretvorili v njegovo binary_num. Binarno pretvorbo izvedemo s pomočjo zanke while.

3. način: decimalno v binarno v programiranju C s skladom

To je preprosta metoda s programom C, ki temelji na skladu in spremeni decimalno vrednost v binarno:

#include

#define MAX_SIZE 32 // največje število bitov v binarni predstavitvi
int main ( ) {
int decimalno_število, binarno [ MAX_SIZE ] , zgoraj = -1 ;
printf ( 'Prosimo, vnesite poljubno decimalno število: ' ) ;
scanf ( '%d' , & decimalno_število ) ;
medtem ( decimalno_število > 0 ) {
dvojiško [ ++vrh ] = decimalno_število % 2 ;
decimalno_število / = 2 ;
}
printf ( 'Dvojiška datoteka %d z uporabo metode sklada je: ' ) ;
medtem ( vrh > = 0 ) {
printf ( '%d' , binarno [ vrh-- ] ) ;
}
vrnitev 0 ;
}


V tem programu najprej deklariramo tri celoštevilske spremenljivke top, binary in decimal_num. Vrh je indeks najvišjega elementa v skladu, decimal je številka v decimalni obliki, ki jo vnese uporabnik, binary je matrika, ki bo vsebovala bine v binarni obliki kot MAX_SIZE bitov, decimal_num pa je binarna matrika. Po tem se izvede binarna pretvorba z uporabo zanke while.

Rezultat je:

Metoda 4: Decimalno v binarno v programiranju C z bitnim operatorjem

Operator, znan kot bitna operacija, manipulira z vsakim od bitov binarnih simbolov, ki predstavljajo cela števila. Sledi osnovni skript C, ki uporablja bitne operacije za prevajanje števila v decimalkah v dvojiško:

#include

// Ta metoda bo pokazala vse 4 bitov številke
void pretvorba ( int št.1 ) {
// Razmislite o a 4 - bitna številka
za ( int i = 3 ; jaz > = 0 ; jaz-- ) {
int bit = ( 1 << jaz ) ;
če ( št.1 & bit )
printf ( '1' ) ;
drugače
printf ( '0' ) ;
}
}
int main ( ) {
int num1;
printf ( 'Vnesite decimalno število: ' ) ;
scanf ( '%d' , & št.1 ) ;
pretvorba ( št.1 ) ;
vrnitev 0 ;
}


Ta program bo izvedel zanko for skozi število, ki se začne pri najpomembnejšem bitu in konča pri bitu z najmanjšim pomenom. Z izvedbo operacije »bitno IN« na maski in num lahko ugotovimo, ali je bit 0 ali 1. Če ni nič, je trenutni bit 1; drugače pa je 0.

Če želite prikazati binarno obliko num1, izpišite bit po vsaki ponovitvi. Končni rezultat po popolni izvedbi bo naslednji:

Zaključek

Pri računalniškem programiranju je bistvena veščina pretvorbe števil iz decimalnih v binarne. Pretvorba decimalnih števil v binarna nam omogoča izvajanje različnih operacij v programiranju C. Ta članek ponuja 4 metode za pretvorbo decimalnih vrednosti v binarne vrednosti.