Jak převést desítkové na binární v C

Jak Prevest Desitkove Na Binarni V C



Počítačové systémy často používají binární čísla k reprezentaci dat a instrukcí, ale protože desítkové číslice jsou pro lidi srozumitelnější než binární, je nutná konverze. Tento článek projde porozuměním mezi desetinnými místy na binární a poskytne programové příklady různých metod, které převádějí desetinná místa na binární v jazyce programování zvaném C.

Jak převést desítkové na binární v C?

Daná desetinná hodnota se několikrát vydělí 2 a zbytek se zaznamená, dokud se nedostaneme k 0 jako konečnému kvocientu. Tento proces se používá k převodu celých čísel z desítkové na binární. Vzorec, který demonstruje proces převodu z desítkové soustavy na binární, se považuje za následující fáze:







Krok 1: Najděte zbytek vydělením čísla 2 a přidejte jej do pole.



Krok 2: Dále vydělte zbytek dvěma.



Krok 3: Proveďte první dva kroky znovu, dokud výsledek nepřekročí 0.





Krok 4: Zobrazte pole pozpátku, abyste získali binární tvar čísla. Nejméně významný bit (LSB) binárního čísla leží nahoře, zatímco nejvýznamnější bit (MSB) je směrem dolů, což je další způsob, jak to interpretovat. Binární ekvivalent zadaného dekadického čísla je toto.

Abychom to lépe pochopili, zde je převod 11 10 v desítkovém převodu na binární:



Dělení podle 2 Kvocient Zbytek
11÷2 5 1 (LSB)
5 ÷ 2 2 1
2-2 1 0
1-2 0 1 (MSB)


Nyní zapište zbytek v opačném pořadí, tedy desítkové (11 10 ) se stává (1011 2 ).

Zbytek se zaznamená a poté zapíše tak, že na prvním místě je (MSB) binárního čísla a potom zbytek. V důsledku toho 1011 2 je binární ekvivalent dané desetinné hodnoty 11 10 . V důsledku toho 11 10 = 1011 2 . Následuje implementace výše zmíněného desítkového do binárního převodu v jazyce C.

Metody používané k převodu desítkové soustavy na binární

Tyto metody, které se používají v jazyce C, převádějí desetinné číslice na binární:

Nyní implementujte převod desetinných míst na binární po jednom výše uvedenými postupy.

Metoda 1: Desetinné až binární v C programování s pro smyčku

Níže je převod desetinné číslice (11) na binární pomocí for-loop v C:

#include
neplatné převést ( int číslo1 ) {
-li ( číslo1 == 0 ) {
printf ( '0' ) ;
vrátit se ;
}
int binární_číslo [ 32 ] ; // Za předpokladu 32 bitové celé číslo.
int i = 0 ;
pro ( ;číslo1 > 0 ; ) {
binární_číslo [ i++ ] = číslo1 % 2 ;
číslo1 / = 2 ;
}
pro ( int j = i- 1 ; j > = 0 ; j-- )
printf ( '%d' , binární_číslo [ j ] ) ;
}
int main ( ) {
int num1;
printf ( 'Zadejte desetinné číslo: ' ) ;
scanf ( '%d' , & číslo1 ) ;
konvertovat ( číslo1 ) ;
vrátit se 0 ;
}


Výše uvedený program používá cyklus for k převodu desítkového čísla poskytnutého uživatelem na binární. Výstup je:

Metoda 2: Dekadické až binární v C programování s while smyčkou

V této metodě se smyčka while v C používá k převodu desetinné číslice (11) na binární, jak je uvedeno níže:

#include
int main ( ) {
int decimal_num, binary_num = 0 , základ = 1 , zbytek;
printf ( 'Zadejte desetinné číslo: ' ) ;
scanf ( '%d' , & desetinné_číslo ) ;
zatímco ( desetinné_číslo > 0 ) {
zbytek = decimal_num % 2 ;
binary_num = binární_num + zbytek * základna;
desetinné_číslo = desetinné_číslo / 2 ;
základ = základ * 10 ;
}
printf ( 'Binární číslo daného dekadického čísla se smyčkou while je: %d' , binární_číslo ) ;
vrátit se 0 ;
}


V tomto programu jsou nejprve deklarovány čtyři celočíselné proměnné decimal_num, binary_num, base a zbytek. Uživatel zadá desetinné_číslo, které převedeme na jeho binární_číslo. Binární převod se provádí pomocí smyčky while.

Metoda 3: Desetinné až binární v C programování se zásobníkem

Toto je přímočará metoda s programem C založeným na zásobníku, který mění desetinnou hodnotu na binární:

#include

#define MAX_SIZE 32 // maximální počet bitů v binární reprezentaci
int main ( ) {
int decimal_num, binární [ MAX_SIZE ] , nahoře = -1 ;
printf ( 'Zadejte prosím libovolné desetinné číslo: ' ) ;
scanf ( '%d' , & desetinné_číslo ) ;
zatímco ( desetinné_číslo > 0 ) {
binární [ ++horní ] = desetinné_číslo % 2 ;
desetinné_číslo / = 2 ;
}
printf ( 'Binární soubor %d pomocí metody zásobníku je: ' ) ;
zatímco ( horní > = 0 ) {
printf ( '%d' , binární [ horní-- ] ) ;
}
vrátit se 0 ;
}


Nejprve v tomto programu deklarujeme tři celočíselné proměnné top, binary a decimal_num. Nahoře je index nejvyššího prvku v zásobníku, dekadické je číslo v desítkovém tvaru, které zadá uživatel, binární je pole, které bude obsahovat bity v binární podobě jako MAX_SIZE bitů a decimal_num je binární pole. Poté se provede binární převod pomocí smyčky while.

Výstup je:

Metoda 4: Desetinné až binární v programování C s bitovým operátorem

Operátor známý jako bitová operace manipuluje s každým z bitů binárních symbolů, které představují celá čísla. Následuje základní skript v jazyce C, který používá bitové operace k převodu čísla v desítkové soustavě do binární soustavy:

#include

// Tato metoda ukáže všechny 4 bity čísla
neplatná konverze ( int číslo1 ) {
// Zvažte a 4 -bitové číslo
pro ( int i = 3 ; i > = 0 ; já-- ) {
int bit = ( 1 << i ) ;
-li ( číslo1 & bit )
printf ( '1' ) ;
jiný
printf ( '0' ) ;
}
}
int main ( ) {
int num1;
printf ( 'Zadejte desetinné číslo: ' ) ;
scanf ( '%d' , & číslo1 ) ;
konverze ( číslo1 ) ;
vrátit se 0 ;
}


Tento program provede cyklus for přes číslo začínající na nejvýznamnějším bitu a končící na bitu s nejmenší významností. Provedením operace „bitový AND“ na masce a num můžeme určit, zda je bit buď 0 nebo 1. Pokud je nenulový, současný bit je 1; jinak je 0.

Chcete-li zobrazit binární formu num1, zadejte bit po každé iteraci. Konečný výstup po dokončení bude následující:

Závěr

Převod čísel z desítkových na binární je základní dovedností v počítačovém programování. Transformace desetinných čísel na binární nám umožňuje provádět různé operace v programování C. Tento článek poskytuje 4 metody převodu desítkových hodnot na binární hodnoty.