Revise Computing
Revision notesQuestionsFor schools
Log inStart revising free
Revision notesQuestionsFor schoolsLog in
Knowledge organisers/GCSE Computer Science (J277)

GCSE Computer Science (J277)

Revision notes for OCR J277 Paper 1 (Computer systems) and Paper 2 (Computational thinking, algorithms and programming).

138 specification notes, plus supplementary programming practice below.

  • Paper 1 — Computer systems
  • Paper 2 — Computational thinking, algorithms and programming
  • Supplementary programming practice

Paper 1 — Computer systems

18 topics · 89 notes

1.1.1

Systems Architecture

aThe Fetch-Execute cycle

bALU, CU, Cache, Registers

cMAR, MDR, Program Counter, Accumulator

1.1.2

CPU performance

aClock speed, Cache size, Number of cores

1.1.3

Embedded Systems

aThe purpose and characteristics of…

bExamples of embedded systems

1.2.1

Primary Storage (memory)

aThe need for primary storage

bThe difference between RAM and ROM

cROM in a computer system

dRAM in a computer system

eVirtual memory

fCache memory

1.2.2

Secondary Storage

aThe need for secondary storage

bOptical, Magnetic, Solid State

cSuitable storage devices and storage…

dCapacity, speed, portability…

1.2.3

Units

aBit, Nibble, Byte, KB, MB, GB, TB, PB

bHow data needs to be converted into a…

cData capacity and calculation of data…

1.2.4a

Data Storage: Numbers

aHow to convert positive denary whole…

bHow to add two binary integers together…

cHow to convert positive denary whole…

dHow to convert binary integers to their…

eBinary shifts

1.2.4b

Data Storage: Characters

c.iiCalculate file sizes of text

Characters

  • fThe use of binary codes to represent…
  • gThe term 'character set'
  • hThe relationship between the number of…

1.2.4c

Data Storage: Images

c.iiCalculate file sizes of image

Images

  • iHow an image is represented as a series…
  • jMetadata
  • kThe effect of colour depth and…

1.2.4d

Data Storage: Sound

c.iCalculate file sizes of sound

Sound

  • lHow sound can be sampled and stored in…
  • mThe effect of sample rate, duration and…

1.2.5

Compression

aThe need for compression

bLossy, Lossless

1.3.1

Networks and topologies

aLAN (Local Area Network), WAN (Wide Area…

bFactors that affect the performance of…

cThe different roles of computers in a…

dWireless access points, Routers…

eDNS (Domain Name Server), Hosting, The…

  • e.iDNS (Domain Name Server)
  • e.iiHosting
  • e.iiiThe cloud
  • e.ivWeb servers and clients

fStar and Mesh network topologies

1.3.2

Wired and wireless networks, protocols and layers

aWired - Ethernet; Wireless - Wi-Fi…

bEncryption

cIP addressing and MAC addressing

dStandards

eCommon protocols

  • e.iTCP/IP (Transmission Control…
  • e.iiHTTP (Hyper Text Transfer Protocol)
  • e.iiiHTTPS (Hyper Text Transfer Protocol…
  • e.ivFTP (File Transfer Protocol)
  • e.vPOP (Post Office Protocol)
  • e.viIMAP (Internet Message Access Protocol)
  • e.viiSMTP (Simple Mail Transfer Protocol)

fThe concept of layers

1.4.1

Threats to computer systems and networks

aForms of attack

  • a.iMalware
  • a.iiSocial engineering, e.g. phishing…
  • a.iiiBrute-force attacks
  • a.ivDenial of service attacks
  • a.vData interception and theft
  • a.viThe concept of SQL injection

1.4.2

Identifying and preventing vulnerabilities

aCommon prevention methods

  • a.iPenetration testing
  • a.iiAnti-malware software
  • a.iiiFirewalls
  • a.ivUser access levels
  • a.vPasswords
  • a.viEncryption
  • a.viiPhysical security

1.5.1

Operating Systems

aUser interface, Memory management and…

  • a.iUser interface
  • a.iiMemory management and multitasking
  • a.iiiPeripheral management and drivers
  • a.ivUser management
  • a.vFile management

1.5.2

Utility software

aThe purpose and functionality of utility…

bEncryption software; Defragmentation…

1.6.1

Ethical, legal, cultural and environmental impact

aEthical issues; Legal issues; Cultural…

bThe Data Protection Act 2018; Computer…

  • b.iThe Data Protection Act 2018
  • b.iiComputer Misuse Act 1990
  • b.iiiCopyright Designs and Patents Act 1988
  • b.ivSoftware licences (i.e. open source and…

Paper 2 — Computational thinking, algorithms and programming

11 topics · 49 notes

2.1.1

Computational Thinking

aAbstraction; Decomposition; Algorithmic…

2.1.2

Designing, creating and refining algorithms

aThe inputs, processes, and outputs for a…

bStructure diagrams

Create, interpret, correct, complete, and refine algorithms using

  • cPseudocode
  • dFlowcharts
  • eReference language/high-level…

fCommon errors

gTrace tables

2.1.3

Searching and sorting algorithms

Standard searching algorithms

  • aBinary search
  • bLinear search

Standard sorting algorithms

  • cBubble sort
  • dMerge sort
  • eInsertion sort

2.2.1

Programming Fundamentals

aVariables, constants, operators, inputs…

The use of the three basic programming constructs used to control the flow of a program

  • bSequence
  • cSelection
  • dIteration (count- and…

eArithmetic operators

fBoolean operators AND, OR and NOT

2.2.2

Data Types

aData types

bCasting

2.2.3

Additional Programming Techniques

The use of basic string manipulation

  • aConcatenation
  • bslicing

cOpen, Read, Write, Close

dRecords to store data

eSQL to search for data

The use of arrays (or equivalent) when solving problems

  • fone-dimensional (1D)
  • gtwo-dimensional arrays(2D)

hSub programs (functions and procedures)…

Functions and Procedures

  • ilocal variables
  • jglobal variables
  • karrays

lRandom number generation

2.3.1

Defensive Design

aAnticipating misuse, Authentication

bInput validation

cUse of sub programs; Naming conventions…

2.3.2

Testing

aTesting

bIterative, Final/terminal

cSyntax and logic errors

dNormal; Boundary; Invalid/Erroneous

eRefining algorithms

2.4.1

Boolean Logic

aAND, OR and NOT

bTruth tables

cAND, OR and NOT

dTruth tables to solve problems

2.5.1

Languages

aHigh-level languages; Low-level…

bTranslators

cThe characteristics of a compiler and an…

2.5.2

IDEs

aEditors; Error diagnostics; Run-time…

Supplementary programming practice

18 topics · 70 notes

Short Python practice that supports Paper 2 programming. The specification notes are in the Paper 2 topics above.

301.1

Output and Sequence

aBasic print / output

bLiterals vs variables

cSequence execution

301.2

Arithmetic Operators

aArithmetic operators

bDIV and MOD

cExponentiation

dOperator precedence

301.3

Variables and Constants

aDeclare variables

bConstants

cTracing variables

dNaming conventions

301.4

Data Types and Casting

aCommon data types

bChoosing types

cCasting

dFix type errors

301.5

Concatenation and Basic Strings

aString concatenation

bStrings + Numbers

cReadable output

301.6

Input

aInput basics

bNumeric input

cIPO Pattern

301.7

Maintainable Code

aMeaningful names

bIndentation

cComments

dTidy code comparison

301.8

Boolean Expressions

aComparison operators

bLogical operators

cTranslate logic

301.9

Selection

aIF and Else

bELIF chains

cNested IF

dMatch Case

301.10

Iteration

aFOR loops

bWHILE loops

cLoop patterns

dLoop bugs

301.11

String Manipulation

aString length

bSubstring slicing

cCase conversion

dString validation

301.12

Subprograms

aWhy subprograms

bProcedures

cFunctions

dScope + parameters

301.13

Testing

aWhy test?

bTest data types

cDry run tracing

dExpected vs actual

eTest tables

fDebugging

301.14

Random Number Generation

aRandom integers

bGames

cOff-by-one

301.15

File Handling Techniques

aOpening files

bReading files

cWriting files

dClosing files

301.16

Defensive Design

aAnticipate misuse

bValidation checks

cAuthentication

dValidation subprograms

eError messaging

301.17

Arrays and Records

a1D arrays

b2D arrays

cArrays in subprograms

dRecords

301.18

IDE Skills

aEditor usage

bError messages

cRunning code

dDebugging tools

© 2026 Revise Computing · revisecomputing.co.uk

Privacy noticeTermsContact

Revise Computing is an independent revision resource. It is not affiliated with, or endorsed by, OCR (Oxford Cambridge and RSA Examinations).