Endianita
Z Wikipédie
Endianita je v informatike spôsob uloženia čísel v pamäti počítača, ktorý definuje, v akom poradí sa ukladajú jednotlivé jednotky informácie príslušného dátového typu. Ak sa jedná konkrétne o bajty, označuje sa tiež ako poradie bajtov (angl. byte order).
Rôzne platformy môžu používať rôznu endianitu a tento problém je potrebné brať do úvahy pri prenose binárnych súborov alebo sieťovej komunikácii medzi platformami s rôznou endianitou.
Obsah |
[upraviť] Big-endian
V tomto prípadě sa na pamäťové miesto s najnižšou adresou uloží najvýznamnejší bajt (MSB) a zaň sa ukladajú ostatné bajty až po najmenej významný bajt (LSB) na konci. Architektúry uplatňujúce tento princíp sa nazývajú big-endian (mnemotechnická pomôcka: big end first) a patria medzi ne Motorola 68000, SPARC a System/370.
Napr. 32-bitové číslo 0x4A3B2C1D
sa na adresu 100
uloží nasledovne:
100 |
101 |
102 |
103 |
||
... |
4A |
3B |
2C |
1D |
... |
[upraviť] Little-endian
V tomto prípade sa na pamäťové miesto s najnižšou adresou uloží najmenej významný bajt (LSB) a zaň sa ukládajú ostatné bajty až po najvýznamnejší bajt (MSB). Architektúry uplatňujúce tento princíp sa nazývajú little-endian (mnemotechnická pomôcka: little end first) a patria medzi ne MOS Technology 6502, Intel x86 a DEC VAX.
Napr. 32-bitové číslo 0x4A3B2C1D
sa na adresu 100
uloží nasledovne:
100 |
101 |
102 |
103 |
||
... |
1D |
2C |
3B |
4A |
... |
[upraviť] Middle-endian
Niektoré architektúry označované ako middle-endian (alebo niekedy mixed-endian) používajú zložitejší spôsob určenia poradia jednotlivých bajtoc, ktorý je daný kombináciou oboch výššie spomenutých spôsobov. Medzi takéto architektúry patrí napr. rodina procesoroc PDP-11. Tento formát sa tiež používa na ukladanie čísiel s pohyblivou desatinnou čiarkou a dvojitou presnosťou v systémoch VAX a ARM.
Např. 32-bitové číslo 0x4A3B2C1D
sa na adresu 100
uloží nasledovne:
100 |
101 |
102 |
103 |
||
... |
3B |
4A |
1D |
2C |
... |
alebo prípadne:
100 |
101 |
102 |
103 |
||
... |
2C |
1D |
4A |
3B |
... |
[upraviť] Zdroje
Tento článok je sčasti alebo úplne založený na preklade článku Endianita zverejneného na českej Wikipédii.