What's the Difference Between ASCII and Unicode?
Learn the difference between ASCII and Unicode for GCSE Computer Science, including character sets, code points, UTF-8 and a common exam mistake to avoid.
ASCII is a small character set for basic English text. Unicode is a much larger system designed to represent characters from many languages, as well as symbols and emoji. The key difference is which characters each can represent.
How ASCII works
ASCII assigns a number to each of 128 characters, including English letters, digits, punctuation and control characters such as a line break. It uses seven bits for each character’s code. For example, the capital letter A has the ASCII code 65.
That is useful for basic text, but ASCII cannot represent a character such as é, a Chinese character or an emoji. You may see references to “extended ASCII”, but that name covers different eight-bit character sets, not one universal standard.
How Unicode works
Unicode gives characters unique identifiers called code points. The capital letter A is U+0041; an emoji has a different code point. Unicode includes the original ASCII characters, so the same basic letters and digits are covered by both systems.
A code point still needs an encoding: a method for storing it as bytes. UTF-8 is a common Unicode encoding. It uses one byte for the original ASCII characters and more bytes for many other characters. For instance, A is stored as 41 in hexadecimal in UTF-8, while é needs two bytes. This means Unicode does not use the same number of bytes for every character.
In an exam answer, avoid saying “Unicode is just ASCII with more bits.” ASCII is a limited character set; Unicode identifies a far wider range of characters, and encodings such as UTF-8 determine how those characters are stored.