Ordinea bytes este

Byte order - metoda de scriere a octeților octeți multibyte în știința informaticii.

În general, pentru a reprezenta un număr M. mai mare de 255 (aici - numărul întreg total maxim scrise cu un octet), este necesar să se utilizeze mai multe octeți octeți. În acest caz, numărul M este scris în sistemul de bază pozițional la baza 256:







Setul de numere întregi, fiecare dintre care se află în intervalul de la 0 la 255, este o secvență de octeți care alcătuiesc M. Se numește octetul cel mai puțin semnificativ. a este octetul de ordin M.

Opțiuni de înregistrare

Comandă de la senior la junior

Comandă de la senior la cel mai tânăr sau în engleză (big-endian: "closed-ended"): înregistrarea începe cu cea mai veche și se încheie cu cea mai tânără. Această comandă este standard pentru protocoalele TCP / IP. Se utilizează în anteturile de pachete de date și în mai multe protocoale de nivel superior concepute pentru a fi utilizate în partea de sus a TCP / IP. Prin urmare, ordinea octeților de la mare la joasă este adesea numită ordinea octeților de rețea. Această comandă de octeți este utilizată de IBM 360/370/390, Motorola 68000. SPARC (prin urmare, al treilea nume este ordinea bytes al Motorola.) Ordin comandă Motorola.

În aceeași formă (folosind reprezentarea în sistemul zecimal), numerele sunt scrise în cifre indo-arabe în literele cu ordinea semnelor de la stânga la dreapta (latină, chirilică). Pentru limbile scrise în ordine inversă (arabă), aceeași notație a numărului este percepută ca fiind "de la cel mai mic la cel în vârstă".

Ordinea octeților de la mare la joasă este folosită în mai multe formate de fișiere - de exemplu, PNG. FLV. EBML.

Comandă de la Junior la Senior

Comandă de la junior la senior sau (engleză puțin-endian, literal: "a subliniat"), despre originea termenului de mai jos), înregistrarea începe cu cea mai tânără și se termină cu senior. Această ordine de înregistrare este acceptată în memoria computerelor personale cu procesoare x86, în legătură cu care uneori este numită ordinea de byte Intelian (după numele firmei care a creat arhitectura x86). În unele cercuri, se utilizează numele de engleză. Comanda VAX. de exemplu, în documentația Perl [1].

Spre deosebire de ordinea "cu capăt îngust", mai puțin [sursa nu specifică 580 de zile] de protocoale și formate de date inter-platformă cu o ordine de "bytes" de octeți; excepții notabile: USB. Configurația PCI. tabela de partiții GUID. Recomandări FidoNet.

Comandă comutare

Mulți procesatori pot lucra în ordine de la mai tineri la mai în vârstă și, în mod invers, de exemplu, ARM. PowerPC (dar nu PowerPC 970), DEC Alpha. MIPS. PA-RISC și IA-64. De obicei, ordinea octeților este selectată programabil în timpul inițializării sistemului de operare. dar pot fi selectate și jumperi hardware pe placa de bază. În acest caz, este mai corect să vorbim despre ordinea octelor din sistemul de operare. Ordinea comutativă a octeților este uneori numită engleza. bi-endian.

Comandă mixtă

Ordinea mixtă de octeți (engleză middle-endian) este folosită uneori atunci când lucrați cu numere mai lungi decât cuvântul mașinii. Numărul este reprezentat de o succesiune de cuvinte ale mașinii. care sunt scrise într-un format care este natural pentru această arhitectură, dar cuvintele în sine urmează ordinea inversă.







Un exemplu clasic de middle-endian este reprezentarea numerelor întregi de 4 octeți pe procesoare pe 16 biți ale familiei PDP-11 (cunoscută sub numele de PDP-endian). Pentru a reprezenta valori dublu-octet (cuvinte), ordinea a fost puțin endian, dar un cuvânt dublu de 4 octeți a fost scris de la cel mai vechi cuvânt la cel mai tânăr.

Procesoarele VAX și ARM utilizează o reprezentare mixtă pentru numere reale lungi.

Iată un exemplu care descrie plasarea unui număr de 4 octeți în memoria RAM a calculatorului, care poate fi accesat fie ca cuvânt pe 32 de biți, fie ca octet.

Toate numerele sunt scrise în notație hexazecimală.

Ordinea bytes este

Plasarea byte-urilor în memoria computerelor Big-endian și Little-endian

Un avantaj important al little-endian, comparativ cu ordinea de intrare big-endian a considerat posibilitatea de a „dactilografiere implicite“ numere întregi de volum mai mic atunci când citesc octeți (cu condiția ca numărul este plasat în intervalul populare). Deci, dacă celula de memorie conține numărul 0x00000022, apoi citiți-o ca int16 (doi octeți), obținem numărul 0x0022, citiți un octet - numărul 0x22. Cu toate acestea, acest lucru poate fi de asemenea considerat un dezavantaj, deoarece provoacă erori de pierdere a datelor.

In schimb, se crede că micul-endian, în comparație cu big-endian este "neevidența" bytes valoare de memorie pentru depanare (o secvență de octeți (A1, B2, C3, D4) înseamnă într-adevăr 0xD4C3B2A1, pentru big-endian, această secvență (A1 , B2, C3, D4) ar fi citit ca "natural" pentru cifrele arabe: 0xA1B2C3D4). Cea mai puțin convenabilă este formatul de înregistrare endian mijlocie; A supraviețuit numai pe platforme mai vechi.

Pentru a înregistra numere lungi (numere, lungimea care depășește substanțial capacitatea mașinii), este preferat de obicei, în alte cuvinte, inclusiv little-endian (din operații aritmetice cu numere lungi sunt produse prin ordin scăzut la ridicat). Ordinea octeților din cuvânt este normală pentru această arhitectură.

Probleme legate de compatibilitate

Scrierea unui număr multibyt de la memoria calculatorului într-un fișier sau transferarea acestuia pe rețea necesită respectarea acordurilor cu privire la care dintre octeți este cel mai vechi și care este cel mai tânăr. Înregistrarea directă a celulelor de memorie conduce la posibile probleme la transferarea aplicațiilor de pe platformă către platformă.

Determinarea ordinii octeților

Ordinea octeților dintr-o anumită mașină poate fi determinată utilizând un program C (testendian.c):

Ieșirea acestui program este semnificativă numai pe platforme unde dimensiunea tipului scurt nesemnat este mai mare decât dimensiunea caracterelor nesemnate. Acest lucru este cu siguranță adevărat pe marea majoritate a calculatoarelor, deoarece acestea au un octet de 8 biți. Cu toate acestea, există și platforme hardware în care dimensiunea octetului este egală cu dimensiunea cuvântului (sau, în termenii limbajului C: sizeof (char) == sizeof (int)). De exemplu, în supercomputerele Cray.

Rezultatele funcționării pe o mașină big-endian (SPARC):

Rezultatele de funcționare pe o mașină puțin-endian (x86):

Vedeți ce "Ordine byte" în alte dicționare:

ordinea inversă a octeților - modul de stocare și de schimb de date în rețea, la care cel mai puțin semnificativ octet este transmis mai întâi, și apoi restul în ordinea opusă plasării lor în blocul de date. [LM Nevdyaev. Tehnologii de telecomunicații. Dicționar explicativ englez-rus ... ... Directorul traducătorului tehnic

ordinea directă a octeților - modul de stocare și schimb de date în rețea, în care cel mai înalt octet este mai întâi transmis și apoi restul în ordinea plasării lor în blocul de date. Miercuri puțin. [LM Nevdyaev. Tehnologii de telecomunicații. Dicționar explicativ englez-rus ... ... Directorul traducătorului tehnic

Ordin de comandă - Ordinea octeților în știința informaticii este metoda de scriere a octeților numerelor multiple. În general, atunci când trebuie să scrieți un număr mai mare de 255 (28-1 = 255 întregul maxim scrise de un byte (octet)), trebuie să utilizați ... ... Wikipedia

byte order - Prin acest termen se înțelege ordinea stocării octeților în cuvântul mașinii (sau cuvântul dublu). Ordinul poate fi "direct" (adică numărul de 32 de biți este stocat astfel 0x12345678) și apoi se spune "endianness mare" (în jargonul intern ... ... Directorul traducătorului tehnic

UTF-16 - (English Unicode Transformation Format) în domeniul informaticii este unul dintre modurile de codificare a simbolurilor din Unicode sub forma unei secvențe de cuvinte de 16 biți. Această codificare vă permite să scrieți caractere Unicode în intervalele U + 0000..U + D7FF și ... ... Wikipedia

  • Comanda byte. Jesse Russell. Această carte va fi realizată în conformitate cu comanda dvs. privind tehnologia Print-on-Demand. Conținut de înaltă calitate prin articole WIKIPEDIA! Procedura este de a înregistra de bytes de multibyte ... Citește mai mult Cumpărați pentru 950 freca






Articole similare

Trimiteți-le prietenilor: