Nibble

Tip: Choose Save as PDF in the print dialog to download. Use A4 paper size.

Nibble

Name:
Date:
Class:

Quick Questions

Shade in the A or B circle for each question.

1. How many bits are in one nibble?
A 8 bits
B 4 bits
2. How many nibbles make 1 byte?
A 2 nibbles
B 4 nibbles
3. Which statement is correct?
A A nibble is double a byte
B A nibble is half a byte
4. How many bits are in 2 nibbles?
A 8 bits
B 2 bits
5. Which binary value is exactly one nibble?
A 1011
B 10110

Match the Pairs

Draw a line connecting each item on the left to its match on the right.

Left columnRight column
11 nibble = 4 bits AA nibble is 4 bits, not 8 bits. 8 bits is a whole byte, not a nibble.
21 byte = 2 nibbles BTwo nibbles joined together make one byte (8 bits), so a nibble is half a byte.
3A nibble is half a byte, so the number of bits in a nibble is the bits in a byte divided by 2. CA nibble is a group of 4 bits, so it can hold a binary pattern such as 1010.
4One hexadecimal digit fits exactly in one nibble, so the binary 1111 is the single hex digit F. DA byte is made of 2 nibbles, not 4. Four nibbles would be 16 bits, which is two bytes.
51 nibble = 8 bits E1111 = F
61 byte = 4 nibbles FnibbleBits = 8 / 2

Definitions

nibble

Fill in the Blanks

Complete each line of code by filling in the missing parts.

1.
nibbleBits ← _
2.
nibblesInByte ← _
3.
nibbles ← 2 bits ← nibbles * _
4.
byteBits ← 8 nibbleBits ← byteBits _ 2
5.
byteBits ← 8 hexDigits ← byteBits DIV _

Spot the Error

Shade in the letter of the line that contains an error.

Question 1
A nibble = 4
B per_byte = 3
C byte = nibble * per_byte
D print(byte)
Question 2
A byte_bits = 8
B nibble_bits = 4
C count = byte_bits // nibble_bits
D total = count + nibble_bits
E print(total)
Question 3
A nibble_bits = 8
B per_byte = 2
C print(nibble_bits * per_byte)
Question 4
A byte_bits = 8
B nibble_bits = byte_bits * 2
C print(nibble_bits)
Question 5
A hex_digit = 'FF'
B nibble = '1111'
C print(int(nibble, 2))

Answer Key

Nibble
Section A: Quick Questions
Q1
B — 4 bits
Q2
A — 2 nibbles
Q3
B — A nibble is half a byte
Q4
A — 8 bits
Q5
A — 1011
Section B: Match the Pairs
Q1
1 nibble = 4 bits → A nibble is a group of 4 bits, so it can hold a binary pattern such as 1010.
Q2
1 byte = 2 nibbles → Two nibbles joined together make one byte (8 bits), so a nibble is half a byte.
Q3
A nibble is half a byte, so the number of bits in a nibble is the bits in a byte divided by 2. → nibbleBits = 8 / 2
Q4
One hexadecimal digit fits exactly in one nibble, so the binary 1111 is the single hex digit F. → 1111 = F
Q5
1 nibble = 8 bits → A nibble is 4 bits, not 8 bits. 8 bits is a whole byte, not a nibble.
Q6
1 byte = 4 nibbles → A byte is made of 2 nibbles, not 4. Four nibbles would be 16 bits, which is two bytes.
Section C: Definitions
Q1
nibble — A nibble is a group of 4 bits, so half a byte. Two nibbles make 1 byte. One hexadecimal digit fits exactly in one nibble.
Section D: Fill in the Blanks
Q1
nibbleBits ← 4
Q2
nibblesInByte ← 2
Q3
nibbles ← 2 bits ← nibbles * 4
Q4
byteBits ← 8 nibbleBits ← byteBits / 2
Q5
byteBits ← 8 hexDigits ← byteBits DIV 4
Section E: Spot the Error
Q1
B — 2 nibbles make 1 byte, not 3. It should be per_byte = 2, so the byte is 4 * 2 = 8 bits.
Q2
D — There are 2 nibbles of 4 bits each, so the total bits is count * nibble_bits = 8. Adding gives 6, which is wrong. It should be total = count * nibble_bits.
Q3
A — A nibble is a group of 4 bits, not 8. 8 bits is a whole byte. It should be nibble_bits = 4.
Q4
B — A nibble is half a byte, so divide the 8 bits by 2 to get 4 bits. Multiplying gives 16. It should be nibble_bits = byte_bits / 2.
Q5
A — One hexadecimal digit fits in one nibble (4 bits). 'FF' is two hex digits, which need 2 nibbles (a whole byte). It should be hex_digit = 'F'.