Warum big-endian / little endian?



  • Bringt das "Vertauschen" der Bytes irgendwelche Vorteile?



  • Die beiden Anordnungsmodi haben ihren Ursprung in den nicht einheitlichen Prozessorarchitekturen. Intel hat z.B. Little Endian. (<- edit)

    Vorteile von big endian: Inkrementieren der Adresse liefert das nächste Zeichen; Verlängern ist einfacher als bei Little Endian.

    Vorteile von little endian: Nummerierung entspricht üblicher Wertigkeit der Binärziffern. Bei der Erweiterung entstehen keine negativen Bitnummern.

    Einzelne Bytes sind allerdings Endianlos. Der Endian spielt nur bei mehreren zusammengehörigen Bytes eine Rolle.



  • Btw: Es gab afaik auch mal sowas wie Middle Endian. Die Vorteile erschließen sich mir aber nicht so ganz. Wird wohl eher eine Parodie gewesen sein.



  • Es gibt auf jeden Fall bi-endian Prozessoren, die beides können. Der PowerPC ist so einer....



  • Jo, das nennt man dann "bytesexual" 😉 .



  • @MasTaH
    Intel ist little Endian! Und Solaris ist ein Betriebssystem, was auf Intel läuft und da AFAIK little Endian ist und auf SPARC CPUs big Endian!

    und Middle Endian gab es wirklich!

    http://foldoc.doc.ic.ac.uk/foldoc/foldoc.cgi?query=endian&action=Search



  • @Mastah: Ich glaub das Dinghieß PDP-10, und hatte "NUXI" Byteorder, also "1234" wurde als "2143" abgespeichert.

    War wohl eher ein hack, um eine 2-byte-little-endian-Architektur auf 4 byte aufzubohren. irgendein Opa hier, der noch dabei war??

    little endian hat den vorteil, daß man beim lesen eines Bytes von einer Wort-Adresse, das niedere Byte bekommt, also:

    mov eax, 16
    mov [mem],  eax  ; schreibe 4-Byte-Wort nach mem, nur least significant byte ist genutzt
    mov al, [mem]    ; lese ein Byte von der Adresse - das gibt mir tatsächlich die 16 wieder raus
    

    Das kann tatsächlich manchmal sinn machen. Auf einer Big Endian-Architektur würde man das höchste Wort bekommen.
    Dafür ist Big Endian "natürlicher" (für die meisten), was auch ein Vorteil sein kann.

    Eigentlich ist es eh' nur an Übergängen little/big endian interessant, oder wenn man die interne Darstellung von mehr-byte-worten auseinandernimmt.



  • Args, Riesendreher drin gehabt. Nicht mein Tag heute! 🙄

    Hab ich grade auf Kingruedis Link gelesen:
    *ENDIAN: The term comes from Swift's "Gulliver's Travels" via the famous paper "On Holy Wars and a Plea for Peace" by Danny Cohen, USC/ISI IEN 137, 1980-04-01. The Lilliputians, being very small, had correspondingly small political problems. The Big-Endian and Little-Endian parties debated over whether soft-boiled eggs should be opened at the big end or the little end.
    *


Anmelden zum Antworten