Jak przekonwertować hex na bin?

0

Np mam taką liczbe 0xfc37d12e
Jak można to przekonwertować na binarne? Zawsze to bez problemu robiłem, gdy hex liczba miala max 3-4 znaki np 2D5

2

zakladanie tematu na forum > poswiecenie 5sek zeby wpisac w google

0

@marcyse: Sory ale nie wystarczy mi jakiś webowy konwerter.

1

Bierzesz nibbla po kolej i jedziesz.
Hex | Dec | Bin
0xF | 15 | 8 + 4 + 2 +1 - 1111 wszystkie bity zapalone
0xC | 12 | 8 + 4 + 0 + 0 - 1100
0x3 | 3 | 0 + 0 + 2 + 1 - 0011
0x7 | 7 | 0 + 4 + 2 + 1 - 0111
I tak sklejasz w całość
1111 1100 0011 0111

0xf0 00 00 00
możesz sobie przetłumaczyć na 1111 0000 0000 0000 0000 0000 0000 0000.
15 << 28 lub 15 * 2^28 lub 15 * 16^7

1
Descendant napisał(a):

@marcyse: Sory ale nie wystarczy mi jakiś webowy konwerter.

A w jakim języku to robisz? Może da się łatwiej niż na piechotę?

4

To chyba nie jest nietuzinkowy temat? :P

4

każdą literkę osobno na BIN

f|c|3|7|d|1|2|e

1111 | 1011 | 0011 | 0111 | itd. itd. tu będzie te d.

0

Dzięki już ogarnięte, chodziło mi tylko o to czy to 12 na końcu traktować jako 12 czy 1 , 2

0

1 i 2 to są osobne bity

1

Najprościej, jak chcesz to maksymalnie ręcznie zrobić, będzie for po cyfrach i zamieniasz switchem każdą cyfrę na jedynki albo zera. Będzie 16 kombinacji.

Czyli np.:

x=wejscie.Length();
for (i=0;i<x;i++)
    switch wejscie[i]:
        case '0':
            return "0000";
            break;
        case '1':
            return "0001";
            break;

I tak dalej.

4
Descendant napisał(a):

@marcyse: Sory ale nie wystarczy mi jakiś webowy konwerter.

A co masz do webowego convertera ?
Klikasz w pierwszy wynik, naciskasz F12 i masz gotowy kod.

screenshot-20210517012407.png

0

Każda cyfra hex to dokładnie cztery cyfry binarne. Czyli wystarczy podstawianie z ewentualnym obcięciem początkowych zer; nie trzeba obliczeń.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.