Level:
Correct: 0
Incorrect: 0
Marks: 0/0
Exam Practice
Subject:
Topics:
Cambridge IGCSE Computer Science (Paper 1) Smart practice A mixed round aimed at your weak spots
Unit 1
Data representation
Unit 2
Data transmission
Unit 3
Hardware
Unit 4
Software
Unit 5
The internet and its uses
Unit 6
Automated and emerging technologies
Automated systems
Automated systems
0%
Artificial intelligence
Artificial intelligence
0%
Avg
score:
–
Topics
done:
0/39

Logical binary shifts

Practise 23 exam-style questions on Logical binary shifts for Cambridge IGCSE Computer Science (Paper 1). Write your answer as you would in the exam and get it marked in seconds against the mark scheme, point by point, with an AI tutor on hand if you get stuck.

  • 23 questions
  • 1–6 marks each
  • Instant marking
  • No sign-up needed
20 questions, marked as you go

Sample questions with model answers

Here are 4 of the questions in this topic, each with a model answer, an explanation of why it earns the marks and the mark scheme an examiner would use.

Question 1

1 mark

State the direction and the number of places of the logical shift that will multiply a positive binary integer by 8.

Model answer

A logical left shift of 3 places.

Explanation

Each left shift multiplies by 2, so 3 left shifts multiply by 2 × 2 × 2 = 8. A common error is to shift 8 places or to shift right.

Mark scheme
  1. 1 mark

    Left, 3 places

    both needed

Question 2

2 marks

The microcontroller in a set of kitchen scales multiplies a weight reading by 4 using a logical shift. The reading is the positive 8-bit binary integer 00011010.

State the shift that is used, and give the result in 8-bit binary.

Model answer

A logical left shift of 2 places.
00011010 shifted 2 places left = 01101000 (26 × 4 = 104)

Explanation

Multiplying by 4 = 2 × 2 needs two left shifts. The two bits lost on the left are 0s, so the result is exactly 4 times the reading.

Mark scheme
  1. 1 mark

    A logical left shift of 2 places

    both direction and places needed

  2. 1 mark

    01101000

    accept with or without spaces

Question 3

3 marks

The positive 8-bit binary integer 10110010 has a logical left shift of one place applied to it.

Give the result, and explain why it is not double the original value.

Model answer

10110010 shifted 1 place left = 01100100
The original value is 178, so double would be 356. This is greater than 255 and needs 9 bits. The left-most bit, a 1, is shifted out and lost, so the register holds 100 instead of 356.

Explanation

A left shift only multiplies correctly if the bits lost are 0s. Losing a 1 from the most significant end throws away 128 × 2 = 256 from the answer, so 356 − 256 = 100.

Mark scheme
  1. 1 mark

    01100100

    accept with or without spaces

  2. 1 mark

    The most significant bit, a 1, is shifted out and lost

    max 2 for the explanation

  3. 1 mark

    Double the original (178 × 2 = 356) is greater than 255 / does not fit in 8 bits

  4. 1 mark

    So the result is 100, which is wrong / an overflow occurs

Question 4

4 marks

The diagram shows an 8-bit register holding a positive integer. Two separate shifts are performed on this original value: a logical left shift of three places, and a logical right shift of three places.

Give the 8-bit result of each shift, and explain which result is a correct multiplication or division of the original value.

An 8-bit register drawn as a row of 8 boxes, with the place values 128, 64, 32, 16, 8, 4, 2, 1 above the columns. Row 1 (labelled "Original"): 00101000.

Model answer

Left shift of 3 places: 01000000
Right shift of 3 places: 00000101
The original is 40. The right shift gives 5, which is exactly 40 ÷ 8, because the three bits lost on the right were all 0. The left shift should give 40 × 8 = 320, but this is greater than 255; the bits shifted out on the left were 001, so a 1 was lost and the register holds 64, which is wrong.

Explanation

Look at which bits fall off each end. Right: 000 is lost, so the division is exact. Left: 001 is lost, so part of the answer (256) disappears and 320 − 256 = 64 is left.

Mark scheme
  1. 1 mark

    Left shift of 3: 01000000

    accept with or without spaces

  2. 1 mark

    Right shift of 3: 00000101

  3. 1 mark

    The right shift is correct: 40 ÷ 8 = 5 (only 0s were lost)

  4. 1 mark

    The left shift is incorrect: 40 × 8 = 320 is greater than 255 / a 1 was shifted out, so the result is 64 not 320

Ready to try the rest? Every answer you write is marked against the mark scheme, so you can see exactly where the marks are.

AI Tutor Hints first, answers after you try

Hi! Stuck? Ask me for a hint and I’ll help you work it out. Once you’ve checked your answer I can explain exactly where the marks are.