https://github.com/python/cpython/commit/177b9cb52e57da4e62dd8483bcd5905990d03f9e commit: 177b9cb52e57da4e62dd8483bcd5905990d03f9e branch: main author: Simon A. Eugster <[email protected]> committer: hauntsaninja <[email protected]> date: 2024-02-18T23:50:09-08:00 summary:
Docs: Add explanation about little/big endian (#109841) Co-authored-by: Adam Turner <[email protected]> Co-authored-by: Shantanu <[email protected]> files: M Doc/library/struct.rst diff --git a/Doc/library/struct.rst b/Doc/library/struct.rst index e2e6fc542e3e67..3e507c1c7e7c85 100644 --- a/Doc/library/struct.rst +++ b/Doc/library/struct.rst @@ -160,6 +160,21 @@ following table: If the first character is not one of these, ``'@'`` is assumed. +.. note:: + + The number 1023 (``0x3ff`` in hexadecimal) has the following byte representations: + + * ``03 ff`` in big-endian (``>``) + * ``ff 03`` in little-endian (``<``) + + Python example: + + >>> import struct + >>> struct.pack('>h', 1023) + b'\x03\xff' + >>> struct.pack('<h', 1023) + b'\xff\x03' + Native byte order is big-endian or little-endian, depending on the host system. For example, Intel x86, AMD64 (x86-64), and Apple M1 are little-endian; IBM z and many legacy architectures are big-endian. _______________________________________________ Python-checkins mailing list -- [email protected] To unsubscribe send an email to [email protected] https://mail.python.org/mailman3/lists/python-checkins.python.org/ Member address: [email protected]
