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]

Reply via email to