16-bit binary place values

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

16-bit binary place values

Name:
Date:
Class:

Quick Questions

Shade in the A or B circle for each question.

1. What is the place value of the leftmost bit in a 16-bit binary number?
A 65535
B 32768
2. Which is true about 16-bit place values?
A Each is double the one to its right
B Each is 2 more than the one to its right
3. What place value comes straight after 4096 when moving left?
A 6144
B 8192
4. The right-hand byte of a 16-bit number uses which place values?
A 128 64 32 16 8 4 2 1
B 32768 16384 8192 4096 2048 1024 512 256
5. What is the place value of the 9th bit from the right in a 16-bit number?
A 256
B 512

Match the Pairs

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

Left columnRight column
132768 16384 8192 4096 2048 1024 512 256 AThe largest 16-bit binary number, which is 65535 in denary
21111111111111111 BThe place values of the left-hand byte (the top 8 bits) of a 16-bit binary number
3The right-hand byte of a 16-bit number uses the same place values as an 8-bit number CThe largest 16-bit value is 65535, not 65536. 65536 is the number of different values, because 0 counts as one of them.
4Each place value is double the one to its right, so the place value left of 256 is 512 D128 64 32 16 8 4 2 1
532768 16384 8192 4096 2048 1024 512 128 256 EThe place values are out of order. 256 must come before 128, because each place value is double the one on its right.
6Largest 16-bit value = 65536 F256 x 2 = 512

Definitions

32768 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1

Fill in the Blanks

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

1.
32768 16384 ____ 4096 2048 1024 512 256
2.
Right-hand byte: ___ 64 32 16 8 4 2 1
3.
Largest 16-bit value: _____
4.
1000000000000000 = _____
5.
0000000100000000 = ___

Spot the Error

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

Question 1
A bits = 16
B top = 32768
C next = top - 2
D print(next)
Question 2
A a = [32768, 16384, 8192, 4096]
B b = [2048, 1024, 512, 256]
C c = [128, 64, 36, 16]
D d = [8, 4, 2, 1]
Question 3
A bits = 16
B values = 2 ** bits
C print(values) # 65536
D print(values + 1) # 65535
Question 4
A place = 128
B for i in range(8):
C print(place)
D place = place * 2
Question 5
A place = 1
B for i in range(8):
C print(place)
D place = place * 2

Answer Key

16-bit binary place values
Section A: Quick Questions
Q1
B — 32768
Q2
A — Each is double the one to its right
Q3
B — 8192
Q4
A — 128 64 32 16 8 4 2 1
Q5
A — 256
Section B: Match the Pairs
Q1
32768 16384 8192 4096 2048 1024 512 256 → The place values of the left-hand byte (the top 8 bits) of a 16-bit binary number
Q2
1111111111111111 → The largest 16-bit binary number, which is 65535 in denary
Q3
The right-hand byte of a 16-bit number uses the same place values as an 8-bit number → 128 64 32 16 8 4 2 1
Q4
Each place value is double the one to its right, so the place value left of 256 is 512 → 256 x 2 = 512
Q5
32768 16384 8192 4096 2048 1024 512 128 256 → The place values are out of order. 256 must come before 128, because each place value is double the one on its right.
Q6
Largest 16-bit value = 65536 → The largest 16-bit value is 65535, not 65536. 65536 is the number of different values, because 0 counts as one of them.
Section C: Definitions
Q1
32768 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1 — The 16 place values of a 16-bit binary number. Each is double the one on its right, and the right-hand byte uses 128 to 1. All 16 bits set to 1 make the largest value, 65535.
Section D: Fill in the Blanks
Q1
32768 16384 8192 4096 2048 1024 512 256
Q2
Right-hand byte: 128 64 32 16 8 4 2 1
Q3
Largest 16-bit value: 65535
Q4
1000000000000000 = 32768
Q5
0000000100000000 = 256
Section E: Spot the Error
Q1
C — Each place value is double the one on its right, so the next one down is half of 32768. It should be next = top // 2, which gives 16384, not top - 2.
Q2
C — The place values keep halving: 128, 64, 32, 16. The value 36 is not a power of 2, so the line should be c = [128, 64, 32, 16].
Q3
D — With all 16 bits set to 1 the largest value is 65535, which is one less than the 65536 possible patterns. It should be values - 1, not values + 1.
Q4
D — Moving right along the byte, each place value is half the previous one (128, 64, 32 ... 1). It should be place // 2, not place * 2.
Q5
B — A 16-bit number has 16 place values, so the loop must run 16 times: range(16). Using range(8) stops at 128 and misses the left-hand byte.