Endian-Format
Die Bytereihenfolge ist ein Datenattribut, das die Bytereihenfolge beschreibt. Wenn Anwendungen Daten austauschen, müssen sie die Konventionen für die Reihenfolge von Multibyte-Daten kennen. Andernfalls können Daten falsch interpretiert werden.
Daten können die folgenden Byte-Reihenfolge-Formate haben:
- Big Endian
- Ein Format, bei dem das höchstwertige Byte zuerst gespeichert wird. Die anderen Bytes folgen in absteigender Reihenfolge ihrer Bedeutung. Bei einem 4-Byte-Wort ist die Byte-Reihenfolge beispielsweise 0, 1, 2, 3. Für ein Zwei-Byte-Wort ist es 0, 1.
Das Big-Endian-Format wird von pSeries,, IBM Z®, iSeries, Sun und HP verwendet.
- Little Endian
- Ein Format, bei dem das Byte mit dem niedrigsten Stellenwert zuerst gespeichert wird. Die anderen Bytes folgen in aufsteigender Reihenfolge ihrer Bedeutung. Bei einem 4-Byte-Wort ist die Byte-Reihenfolge beispielsweise 3, 2, 1, 0. Für ein Zwei-Byte-Wort ist es 1, 0.
Das Little-Endian-Format wird von Intel-basierten Computern verwendet, einschließlich xSeries.
Die Reihenfolge der Bytes betrifft nur Multi-Byte-Daten. Innerhalb eines einzelnen Bytes sind die Bits immer auf dieselbe Weise angeordnet. Die Bit-Reihenfolge innerhalb eines Bytes ist immer 7, 6, 5, 4, 3, 2, 1, 0.
| UTF-16 | UTF-321 | |
|---|---|---|
| Big Endian | X'0041' | X'00000041' |
| Little Endian | X'4100' | X'41000000' |
- Db2 for z/OS® speichert keine Daten in UTF-32
Die Reihenfolge der Bytes wird zu einem potenziellen Problem, wenn Daten zwischen Systemen und Anwendungen ausgetauscht werden, die unterschiedliche Bytereihenfolgen verwenden, und die Daten nicht ordnungsgemäß konvertiert werden. Achten Sie auf das Endian-Format der Daten, die Ihr System oder Ihre Anwendung verarbeitet. Möglicherweise stellen Sie Probleme mit der Bytereihenfolge fest, wenn Sie sich die Werte der Zeichenkodierung in den Traces ansehen. Ein solches Problem könnte bestehen, wenn Sie feststellen, dass numerische Byte-Werte vertauscht wurden. Zum Beispiel erwarten Sie X'0041 ', sehen aber X'4100 '.