logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jakie to kodowanie 0x7530?

evolucja 10 Wrz 2011 17:12 1292 5
REKLAMA
  • #1 9913793
    evolucja
    Poziom 20  
    Posty: 552
    Pomógł: 3
    Ocena: 25
    W jaki sposób zostały zakodowane liczby, które teraz wyglądają tak: 0x3e8 lub 0x7530?
  • REKLAMA
  • #2 9913884
    McMonster
    Poziom 32  
    Posty: 1942
    Pomógł: 182
    Ocena: 57
    Nie zostały zakodowane, tylko zapisane w systemie heksadecymalnym. Rozpoznać to można łatwo przez "0x" poprzedzające właściwą liczbę, taki zapis jest standardowo stosowany szczególnie w językach programowania.
  • REKLAMA
  • #3 9913926
    Madrik
    VIP Zasłużony dla elektroda
    Posty: 12503
    Pomógł: 623
    Ocena: 1175
    Otwórz kalkulator windowsa, wybierz w opcjach "naukowy". Zaznacz ikonkę HEX i wpisz te liczby z klawiatury (po kolei).
    Potem zaznacz ikonkę DEC (obok hex) - i już.

    System szesnastkowy wygląda tak - Masz 15 "cyfr" 1-9, A-F. A to 10, B-11 itd.
    Pierwsza cyfra zapisu to potęga 1. Druga, to potęga 2, trzecia to potęga 4, czwarta to potęga 8.

    Czyli zapis np. 3E12

    To: 3^1 + 14^2 + 1^4 + 2^8 = 456.

    Chyba, że zamienisz kolejność zapisu, co się czasem spotyka w systemach programistycznych. I wtedy liczbę, "czyta" się od prawej strony.

    To taka sama liczba będzie wynosić w/w przypadku 15890. ;)
  • REKLAMA
  • #4 9913991
    evolucja
    Poziom 20  
    Posty: 552
    Pomógł: 3
    Ocena: 25
    Umiałem kiedyś te wszystkie zapisy. Zmyliło mnie to 0x na początku.
    Dziękuję wam za pomoc :)
  • REKLAMA
  • #5 9914155
    McMonster
    Poziom 32  
    Posty: 1942
    Pomógł: 182
    Ocena: 57
    Można jeszcze spotkać, ale nie tak często, liczby poprzedzone "0b" dla systemu binarnego i "0" dla ósemkowego.
  • #6 9916245
    nsvinc
    Poziom 35  
    Posty: 2870
    Pomógł: 262
    Ocena: 88
    Madrik napisał:

    Czyli zapis np. 3E12

    To: 3^1 + 14^2 + 1^4 + 2^8 = 456.

    Co to jest za herezja?

    Od kiedy liczby jakiekolwiek czyta się w informatyce/elektronice od lewej strony?
    Lewa strona to zawsze jest najstarsza pozycja!
    Prawidłowo powinno być:

    3*(2^12) + E*(2^8) + 1*(2^4) + 2*(2^0) = 15890, gdzie
    A - 10
    B - 11
    C - 12
    D - 13
    E - 14
    F - 15

    Zgodnie z samą ideologią systemu szesnastkowego, powyższy zapis powinien wyglądać tak:

    3*(16^3) + E*(16^2) + 1*(16^1) + 2*(16^0)

    W systemie szesnastkowym każdy znak (0..9,A..F) to 4 bity (1 nibble), przy czym najmłodszy nibble jest z prawej.

    McMonster napisał:
    Można jeszcze spotkać, ale nie tak często, liczby poprzedzone "0b" dla systemu binarnego i "0" dla ósemkowego.

    "Można spotkać"? Ładnie powiedziane...

    Liczby poprzedzone 0 (zerem) w standardzie ANSI C oznaczają liczbę podaną w systemie ósemkowym.
    Liczby poprzedzone 0b oznaczają liczbę podaną w systemie binarnym (dwójkowym), przy czym nie jest to zdefiniowane w standardzie ANSI C, a jest tylko rozszerzeniem wprowadzonym przez producentów niektórych kompilatorów (i bodajrze definiuje to standard C99, ale nie jestem tego pewny).
REKLAMA