← IGCSE Computer Science Paper 1

ASCII and its bits per character

A character set that gives each character a 7-bit code (128 characters), usually stored in 8 bits. Extended ASCII uses 8 bits for 256 characters.

Understanding ASCII and its bits per character in IGCSE Computer Science Paper 1

What it does: The code for A is 65, which is 1000001 in 7 bits. Stored in 8 bits it becomes 01000001 with an extra 0 at the front. ASCII only has 128 characters for English letters, digits and punctuation, so other alphabets need a bigger set like Unicode. 2^7 = 128. The value 256 is for extended ASCII, which uses 8 bits (2^8). ASCII stands for American Standard Code for Information Interchange. 8 bits make 1 byte, so each stored ASCII character usually takes one byte. With 7 bits there are 2^7 = 128 different codes, so standard ASCII has 128 characters.

Common mistakes: The number of different codes is 2 to the power of the bits, so it must be 2 ** bits. 2 ** 7 = 128 characters. 2 * bits gives 14, which is wrong. To get the ASCII number for a character you use ord(). chr() goes the other way (number to character) and would cause an error here. It should be code = ord(char).

Class: _____________________  ·  Name: _____________________  ·  Date: _________

Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.

This module's key terms are also in a printable crossword (Modules 28–41) and word search (Modules 28–58).

Take this worksheet further — free with Cloodit

Each concept is reinforced from every angle — learned, then applied, then tested.

Learning
Duo
How many bits does standard ASCII use for each character's code?
7 bits16 bits
Matches
Standard ASCII uses 8 bits to give 128 characters
↓
Standard ASCII uses 7 bits for 128 characters. 8 bits would give 256, which is extended ASCII.
Applying
Meanings
Term
ASCII
Meaning
A character set that gives each character a 7-bit code (128 characters), usually stored in 8 bits. Extended ASCII uses 8 bits for 256 characters.
Practice
ASCIIBits ← 7
Testing
Gaps
Information Interchange =
Check Answer
Spots
1bits = 7
2chars = 2 * bits

Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.

The 'Chambered Nautilus' badge — File Explorer, one of Cloodit's 106 collectible badges
Students earn collectable badges

Over 100 of them, across seven natural biomes.

Study Buddy
Students build a real study resource

Turns their work into revision material ready for Flash Cards and Exam study.

Diamond Dash — one of Cloodit's live, competitive Sprint games
Students lock in with Sprints

Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.

A Cloodit certificate of achievement, ready to personalise and print
Custom printable certificates

Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.

Quick Questions

1. How many bits does standard ASCII use for each character's code?
A. 7 bits ✓
B. 16 bits
Standard ASCII uses 7 bits per character code. It is usually stored in an 8-bit byte.
2. How many different characters can standard 7-bit ASCII represent?
A. 128 ✓
B. 256
2^7 = 128. The value 256 is for extended ASCII, which uses 8 bits (2^8).
3. What does ASCII stand for?
A. Advanced System Code for Internet Interaction
B. American Standard Code for Information Interchange ✓
ASCII stands for American Standard Code for Information Interchange.
4. Extended ASCII uses 8 bits per character. How many characters can it represent?
A. 256 characters ✓
B. 512 characters
8 bits give 2^8 = 256 different values, so extended ASCII has 256 characters.
5. Which set of characters does ASCII cover?
A. Letters from every world language and emoji
B. English letters, digits and punctuation ✓
ASCII only covers English letters, digits and punctuation. Unicode is used for other languages and emoji.

Match the Pairs

2^7 = 128 → The number of characters that standard 7-bit ASCII can represent
2^8 = 256 → The number of characters that extended ASCII (8 bits) can represent
Standard ASCII gives every character a 7-bit code, but it is usually stored in 8 bits with a leading 0 → A = 01000001
ASCII covers only English letters, digits and punctuation, so it cannot hold characters from other languages → ASCII: A b 7 ! ? (no Chinese characters)
Standard ASCII uses 8 bits to give 128 characters → Standard ASCII uses 7 bits for 128 characters. 8 bits would give 256, which is extended ASCII.
ASCII stands for All Standard Character Information Index → ASCII stands for American Standard Code for Information Interchange.

Key Term

ASCII
A character set that gives each character a 7-bit code (128 characters), usually stored in 8 bits. Extended ASCII uses 8 bits for 256 characters.

Fill in the Blanks

1. American Standard Code for Information Interchange = ASCII
Hint: Type the acronym of the character set named by these words.
2. Original ASCII uses 7 bits per character
Hint: Type the number of bits in the original ASCII code for each character.
3. 7 bits give 2^7 = 128 different codes
Hint: Type the number of different characters that standard ASCII can represent.
4. Extended ASCII: 8 bits = 256 characters
Hint: Type the number of bits per character that extended ASCII uses.
5. ASCII covers only English letters, digits, and punctuation
Hint: Type the language whose letters ASCII is limited to.

Spot the Error

Question 1
A bits = 7
B chars = 2 * bits
C print(chars)
Line B — The number of different codes is 2 to the power of the bits, so it must be 2 ** bits. 2 ** 7 = 128 characters. 2 * bits gives 14, which is wrong.
Question 2
A char = 'A'
B code = chr(char)
C print(code) # 65
Line B — To get the ASCII number for a character you use ord(). chr() goes the other way (number to character) and would cause an error here. It should be code = ord(char).
Question 3
A word = 'HELLO'
B bits = 8
C n = len(word)
D total = n + bits
Line D — Each character is stored in 8 bits, so the total is the number of characters multiplied by the bits per character: n * bits (5 x 8 = 40 bits), not added.
Question 4
A ascii_chars = 2 ** 8
B extended_chars = 2 ** 8
C print(ascii_chars)
Line A — Standard ASCII uses 7 bits, giving 2 ** 7 = 128 characters. 2 ** 8 = 256 is the size of extended ASCII, which has its own variable on the next line.
Question 5
A bits = 8
B values = 2 ** bits
C print('Extended:', bits)
Line C — The label says how many characters extended ASCII holds, which is stored in values (256). Printing bits would only show 8. It should print values.

Student with a class code? Join your class →