This is because it's possible to have text in a different font (per selection) to include symbols and characters like these in text without the need of images. Emoji is also a font FYI.
All text in computer are just numbers, each character is represented as a byte (8 bits like 00000001).
A bit is always binary (1 or 0), within a byte (or bitmask) a fixed power of 8 is used to allow for 256 possible combinations. 00000000 = 0, 11111111 = 255.
Each byte (8 bits) is assigned a character (by font).
By default this is known as ASCII which allows for 226 possible characters per font-type.
But because other scripts have more symbols (like Chinese which wel over 10000!) they needed a way make number assignment to characters bigger, which is accomplished with UTF-16 and UTF-32 which use 16bits and 32bits respectively.
This however introduced some challenges and problems as now every character must be presented as 32bits! 11111111111111111111111111111111 (4 bytes to be exact). And all software must be compatible with this convention as well.
And thus UTF-8 was introduced which builds upon the 8bit formation, but uses so-called code points (for numbers not previously used) to indicate that a number is extended and you basically get 11111111 11111111 as a single bit stream, even though it's stored as two bytes.
Emoji actually uses UTF-8 exclusively as these characters sit in there own script range, like Chinese and Cyrillic.
The great thing about UTF-8 is that it's fully compatible with ASCII (for all the common characters that is. a-z, 0-9, and umlauts) while allowing for a more extended letter script that also allows scripts from other languages (without the need for different fonts within in the same text) then the classic standard, and without the hassle of UTF-16 and 32.
But for arithmetic operations (performed by the CPU for example) are much bigger, 64 bits as of today, so each chunk (not byte) is 64 bits big.
It's important to have a defined length so that you know how when the chunk ends a new one begins.
CPU instructions are actually a lot more complex and use logic gates, which is a bit (no pun) to complex to explain here.
In short: A logic gate requires a condition (always works with one bit per gate) is met to produce 1 (or true) to pass, or will produce 0 (false) otherwise.
* or(x | y) (left or right must be 1)
* and (x & y) (both left and right must be 1)
* nor(x | y) (left or right must be 0)
* nand (x & y) (both left and right must be 0)
* xor (left or right must be 1, but not both so: xor(1 | 1) is zero)
The first digital computer had a lot of logic gates, each the size a light bulb (vacuum tube) and spread across the size a small wear house. Today's CPU contain billions of nano-size logic gates!