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).