• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Konwertowanie systemów liczbowych

0 głosów
497 wizyt
pytanie zadane 30 maja 2016 w Offtop przez Nicolaus Dyskutant (9,740 p.)
zmienione kategorie 30 maja 2016 przez Arkadiusz Waluk
Cześć! Mam jedno pytanko. Czy znacie jakieś dobre sposoby na konwertowanie: (hex)->(oct) (oct)->(hex) (dec)->(hex) (hex)->(dec) (dec)->(oct) (oct)->(dec) Oczywiście chciałbym aby konwersacja odbywała się bezpośrednio a nie przez system binarny. Z góry dziękuję za odpowiedzi Nicolaus

2 odpowiedzi

0 głosów
odpowiedź 31 maja 2016 przez ZakosiliMiNeta Nałogowiec (30,870 p.)

Przy (hex)->(oct) (oct)->(hex) to musisz się bawić jakoś potęgami ( nic mi nie przychodzi do głowy na szybko ). Co do hex-dec i oct-dex. To poprostu dzielenie z resztą i nic więcej, a z danego systemu na dec to poprostu sumna iloczynów potęg na danej cyfrze. Naprzykład z dec na oct dla liczby 34

to ( krok 1 ) 34 mod 8 =  2 

( krok 2 )34 / 8 = 4  <- potem ten wynik modulujesz  ( krok 1 ) i robisz krok 2 dla wyniku z następnego modulo

4 mod  8  = 4  i wynik to 42 ( oct ). Wynik odczytujesz od końca

 

Teraz na odwrót 

np 105 ( hex ) na = ? ( dec ) 

to 5 * 16^0 + 0 * 16^1 + 1 * 16^2 =  261 ( dec )

W tym przypadku wykładnik jest numerem pozycji ( zaczynamy zawszę od 0 ) 

0 głosów
odpowiedź 31 maja 2016 przez prp35n Użytkownik (940 p.)
Czasami warto użyć przesunięć bitowych.

Podobne pytania

0 głosów
0 odpowiedzi 371 wizyt
0 głosów
2 odpowiedzi 1,297 wizyt
0 głosów
0 odpowiedzi 443 wizyt
pytanie zadane 10 stycznia 2020 w C i C++ przez Programmingc100 Bywalec (2,620 p.)

93,604 zapytań

142,526 odpowiedzi

322,991 komentarzy

63,088 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...