tanszek:oktatas:techcomm:utf-8_encoding
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
tanszek:oktatas:techcomm:utf-8_encoding [2024/10/07 11:18] – [UTF-16 Encoding] knehez | tanszek:oktatas:techcomm:utf-8_encoding [2024/11/19 10:59] (current) – [UTF-16 Encoding] knehez | ||
---|---|---|---|
Line 31: | Line 31: | ||
2.) **2-byte encoding**: Characters outside of the ASCII range require more bytes. For example, the Unicode character ' | 2.) **2-byte encoding**: Characters outside of the ASCII range require more bytes. For example, the Unicode character ' | ||
- | * In binary: 00000000 11101001 | + | * In binary: |
- | * UTF-8 encoding: 11000011 10101001 (C3 A9 in hexadecimal). | + | * UTF-8 encoding: |
3.) **3-byte encoding**: Characters with even larger code points require 3 bytes. For instance, the character ' | 3.) **3-byte encoding**: Characters with even larger code points require 3 bytes. For instance, the character ' | ||
- | * In binary: 00000000 00001001 00000101 | + | * In binary: |
- | * UTF-8 encoding: 11100000 10100100 10000101 (E0 A5 85 in hexadecimal). | + | * UTF-8 encoding: |
4.) **4-byte encoding**: Characters from supplementary planes, such as certain emojis or rare historical scripts, use 4 bytes. For example, the emoji ' | 4.) **4-byte encoding**: Characters from supplementary planes, such as certain emojis or rare historical scripts, use 4 bytes. For example, the emoji ' | ||
- | * In binary: 00000001 11111001 10000100 | + | * In binary: |
- | * UTF-8 encoding: 11110000 10011111 10100110 10000100. | + | * UTF-8 encoding: |
=== Example: Encoding the Character ' | === Example: Encoding the Character ' | ||
Line 48: | Line 48: | ||
The Unicode code point for ' | The Unicode code point for ' | ||
- | - Unicode binary: 00000000 00000000 11110011 | + | - Unicode binary: |
- | - UTF-8 binary: 11000011 10110011 (C3 B3 in hexadecimal). | + | |
+ | - UTF-8 binary: | ||
Thus, ' | Thus, ' | ||
- | ==== UTF-16 Encoding ==== | + | ===== UTF-16 Encoding |
**UTF-16** is another encoding standard that uses either 2 or 4 bytes to represent characters. Unlike UTF-8, UTF-16 uses **a minimum of 2 bytes** for each character, which simplifies the encoding of characters but can be less space-efficient for texts containing many ASCII characters. | **UTF-16** is another encoding standard that uses either 2 or 4 bytes to represent characters. Unlike UTF-8, UTF-16 uses **a minimum of 2 bytes** for each character, which simplifies the encoding of characters but can be less space-efficient for texts containing many ASCII characters. | ||
Line 66: | Line 67: | ||
* **FF FE**: Little-endian (least significant byte first) | * **FF FE**: Little-endian (least significant byte first) | ||
- | For example, in Windows text files or Microsoft Office documents, you may encounter this BOM at the beginning, especially when opening files in text editors like Notepad. | + | For example, |
- | === Conclusion === | + | ==== Conclusion |
- | UTF-8 has become the dominant encoding standard because it is backward-compatible with ASCII, space-efficient for texts that are predominantly ASCII, and can represent any character in the Unicode standard. Meanwhile, UTF-16 is commonly used in environments like Windows, | + | **UTF-8** has become the dominant encoding standard because it is backwards-compatible with ASCII, space-efficient for predominantly ASCII texts, and can represent any character in the Unicode standard. Meanwhile, UTF-16 is commonly used in environments like Windows, |
In summary: | In summary: | ||
+ | |||
- **UTF-8** is optimal for web content and multi-language support. | - **UTF-8** is optimal for web content and multi-language support. | ||
+ | |||
- **UTF-16** is preferred in some system environments, | - **UTF-16** is preferred in some system environments, | ||
tanszek/oktatas/techcomm/utf-8_encoding.1728299916.txt.gz · Last modified: 2024/10/07 11:18 by knehez