Character Sets: ASCII & Unicode Explained (OCR A-Level CS 1.4.1)
OCR A-Level CS 1.4.1: how character sets represent text, how ASCII and Unicode work, their similarities and differences, and why Unicode is needed.

Free ASCII Unicode revision resources (OCR A-Level Computer Science, 1.4.1)
We’ve made exam-style practice for this exact topic, free to download: ASCII Unicode question sheet, mark scheme and cheat sheet. Grab them, have a go, then read the full guide below.
Computers store numbers as binary — but how do they store text? The answer is a character set: an agreed table that maps every character to a number. Spec point 1.4.1(j) covers how character sets (ASCII and Unicode) are used to represent text, and the examiners love asking for the similarities and differences between the two, plus why Unicode exists.
Let's see how a character becomes binary, and exactly how ASCII and Unicode compare.

What is a character set?
A character set is an agreed standard that gives every character — letters, digits, punctuation, symbols — a unique numeric code. The computer stores that number in binary. As long as every device uses the same character set, they all interpret the codes the same way, so text typed on one machine displays correctly on another.
How does ASCII work?
ASCII (American Standard Code for Information Interchange) is an early character set that uses 7 bits per character. Seven bits give 2⁷ = 128 possible codes (0–127), which is enough for the English alphabet (upper and lower case), digits 0–9, punctuation and some control characters.
A couple of patterns worth knowing because they let you work codes out:
The digits
0–9are codes0110000–0111001(48–57 in denary).The capital letters
A–Zare codes1000001–1011010(65–90), and lower-casea–zfollow at 97–122.
Because the letters are in order, you can find any letter's code by counting from A. For example A is 65 (1000001), so D is 65 + 3 = 68. The word BEAD in 8-bit ASCII would be stored as 01000010 01000101 01000001 01000100.
Why isn't ASCII enough? Enter Unicode

ASCII's 128 codes only cover the English alphabet and basic symbols. It can't represent Greek, Arabic, Chinese, emoji, or thousands of other characters used worldwide. Unicode was created to fix this: it uses more bits per character (commonly 16 or more), giving it room for over a million code points — enough to cover virtually every writing system in the world, plus symbols and emoji.
Crucially, Unicode was designed so the first 128 codes are the same as ASCII, so ASCII text is also valid Unicode. The trade-off is storage: because Unicode uses more bits per character, the same text takes up more memory than it would in ASCII.
ASCII vs Unicode at a glance
ASCII | Unicode | |
|---|---|---|
Bits per character | 7 (often stored in 8) | 16+ (variable in practice) |
Number of characters | 128 | over a million |
Languages covered | English only | (almost) all world languages |
Storage per character | Less | More |
Relationship | — | First 128 codes match ASCII |
Similarities (a common 1-mark question): both are character sets that map characters to binary codes, and Unicode includes ASCII as its first 128 characters.
Worked example: choosing a character set
A new social media app will have users worldwide posting in many languages and using emoji. Which character set?
Unicode — because ASCII can only represent English characters, so users writing in Arabic, Hindi or Japanese, or adding emoji, simply couldn't be represented. The cost is that each character uses more storage than ASCII would, but for an international app that's a price worth paying. If the app only ever stored plain English usernames, ASCII would be smaller and sufficient — but that's rarely the case today.
Common exam mistakes
Saying ASCII uses 8 bits. Standard ASCII is 7 bits (128 codes); it's often stored in a byte, but the code itself is 7-bit.
Forgetting why Unicode exists. It's to represent the characters of many languages (and symbols/emoji), which ASCII can't.
Missing the storage trade-off. Unicode needs more bits per character, so text takes more memory than ASCII.
Not knowing the overlap. Unicode's first 128 codes are identical to ASCII — that's the key similarity.
Confusing the character with its code.
'5'(the character) has ASCII code 53, which is not the number 5.
Quick recap
A character set maps each character to a numeric binary code so text can be stored; all devices must use the same set.
ASCII: 7 bits, 128 characters, English only; digits at 48–57, capitals at 65–90.
Unicode: many more bits, over a million code points, covers (almost) all languages and emoji.
Similarity: both are character sets mapping to binary; Unicode's first 128 codes equal ASCII.
Difference / trade-off: Unicode covers far more characters but uses more storage per character.
Frequently asked questions
What is a character set? A character set is an agreed standard that gives every character — letters, digits, punctuation and symbols — a unique numeric code, which the computer stores in binary. As long as all devices use the same character set, text displays the same way on each.
What is ASCII? ASCII (American Standard Code for Information Interchange) is a character set that uses 7 bits per character, giving 128 possible codes. It covers the English alphabet in upper and lower case, the digits 0–9, punctuation and some control characters.
What is Unicode and why is it needed? Unicode is a character set that uses more bits per character than ASCII, giving over a million code points. It is needed because ASCII can only represent English, whereas Unicode can represent the characters of almost every language in the world, plus symbols and emoji.
What is one similarity between ASCII and Unicode? Both ASCII and Unicode are character sets that map characters to numeric binary codes. In addition, the first 128 codes of Unicode are identical to ASCII, so ASCII text is also valid Unicode.
What are the differences between ASCII and Unicode? ASCII uses 7 bits and represents 128 characters covering English only, while Unicode uses more bits per character, represents over a million characters covering almost all languages, and therefore uses more storage per character.
Why does Unicode text take up more memory than ASCII? Unicode uses more bits per character than ASCII's 7 bits in order to represent a far larger range of characters. Because each character is stored using more bits, the same piece of text occupies more memory in Unicode than it would in ASCII.


