Opis: Temat obejmuje omówienie algorytmu zamiany liczby dziesiętnej na binarną.
Zamiana liczby dziesiętnej na binarną
Zamiana liczby dziesiętnej na binarną polega na znalezieniu odpowiednich potęg liczby 2, które sumują się do liczby wejściowej.
Każda pozycja w liczbie binarnej odpowiada kolejnej potędze dwójki:
Najmłodsza cyfra (z prawej strony) to 20,
Kolejna to 21,
Następnie 22,
I tak dalej.
Dziel liczbę dziesiętną przez 2 i zapisuj reszty:
Reszta z dzielenia przez 2 to kolejna cyfra binarna, liczona od prawej strony.
Kontynuuj dzielenie wyniku całkowitego przez 2, aż do uzyskania 0.
Odczytaj wynik binarny od dołu do góry:
Pierwsza reszta to najmłodsza cyfra (LSB – least significant bit),
Ostatnia reszta to najstarsza cyfra (MSB – most significant bit).
Zamiana liczby dziesiętnej 26 na system binarny krok po kroku z użyciem dzielenia przez 2:
26÷2=13 (reszta 0)
13÷2=6 (reszta 1)
6÷2=3 (reszta 0)
3÷2=1 (reszta 1)
1÷2=0 (reszta 1)
Czytając reszty od dołu, mamy: 11010.
Źródło: Jakub Piskorowski
Funkcja algorytmu konwersji liczby dziesiętnej na binarną:
Wejście:
liczba - liczba dziesietna
Lista kroków:
K1: tab[15] deklaracja tablicy o rozmiarze 31
K2: i ← 0 deklaracja iteratora
K3: dopóki liczba jest różna od zera
wykonuj kroki k4...k5
K4: tab[i++] ← liczba modulo 2 zapisujemy resztę z dzielenia w kolejnym elemencie tablicy
K5: liczba ← liczba / 2
K6: od j ← i-1 do j >=0
wykonuj krok k7
K7: wyświetl element tablicy z indeksem j
Wynik działania programu:
Podaj liczbe dziesietna: 26
Liczba 26 po zamianie na postac binarna: 11010