A-LEVEL Exam A-LEVEL Computer Science

4.1.1.2 Programming concepts
4.1.1.3 Arithmetic operations in a programming language
4.1.1.4 Relational operations in a programming language
4.1.1.5 Boolean operations in a programming language
4.1.1.8 Random number generation in a programming language
4.1.1.10 Subroutines (procedures/functions)
4.1.1.11 Parameters of subroutines
4.1.1.13 Local variables in subroutines
4.1.1.15 Role of stack frames in subroutine calls
4.1.1.16 Recursive techniques
4.1.2.1 Programming paradigms
4.2.1.1 Data structures
4.2.1.2 Single- and multi-dimensional arrays (or equivalent)
4.2.1.3 Fields, records and files
4.2.1.4 Abstract data types/data structures
4.2.3.1 Stacks
4.2.4.1 Graphs
4.2.5.1 Trees (including binary trees)
4.4.4.2 Maths for Big-O notation
4.4.4.3 Order of complexity
4.4.4.4 Limits of computation
4.4.4.5 Classification of algorithmic problems
4.4.4.6 Computable and non-computable problems
4.4.4.7 Halting problem
4.4.5.1 Turing machine
4.5.1.1 Natural numbers
4.5.1.2 Integer numbers
4.5.1.3 Rational numbers
4.5.1.4 Irrational numbers
4.5.1.5 Real numbers
4.5.1.6 Ordinal numbers
4.5.1.7 Counting and measurement
4.5.2.1 Number base
4.5.3.1 Bits and bytes
4.5.3.2 Units
4.5.4.1 Unsigned binary
4.5.4.2 Unsigned binary arithmetic
4.5.4.4 Numbers with a fractional part
4.5.4.7 Range and precision
4.5.4.9 Underflow and overflow
4.5.5.1 Character form of a decimal digit
4.5.5.2 ASCII and Unicode
4.5.5.3 Error checking and correction
4.5.6.1 Bit patterns, images, sound and other data
4.5.6.2 Analogue and digital
4.5.6.3 Analogue/digital conversion
4.5.6.4 Bitmapped graphics
4.5.6.5 Vector graphics
4.5.6.6 Vector graphics versus bitmapped graphics
4.5.6.7 Digital representation of sound
4.5.6.8 Musical Instrument Digital Interface (MIDI)
4.5.6.9 Data compression
4.6.1.1 Relationship between hardware and software
4.6.1.2 Classification of software
4.6.1.3 System software
4.6.1.4 Role of an operating system (OS)
4.6.2.1 Classification of programming languages
4.6.4.1 Logic gates
4.6.5.1 Using Boolean algebra
4.7.1.1 Internal hardware components of a computer
4.7.2.1 The meaning of the stored program concept
4.7.3.1 The processor and its components
4.7.3.2 The Fetch-Execute cycle and the role of registers within it
4.7.3.3 The processor instruction set
4.7.3.4 Addressing modes
4.7.3.5 Machine-code/assembly language operations
4.7.3.7 Factors affecting processor performance
4.7.4.1 Input and output devices
4.7.4.2 Secondary storage devices
4.8.1 Individual (moral), social (ethical), legal and cultural issues and opportunities
4.9.1.1 Communication methods
4.9.1.2 Communication basics
4.9.2.1 Network topology
4.9.2.2 Types of networking between hosts
4.9.2.3 Wireless networking
4.9.3.1 The Internet and how it works
4.9.3.2 Internet security
4.9.4.1 TCP/IP
4.9.4.2 Standard application layer protocols
4.9.4.3 IP address structure
4.9.4.4 Subnet masking
4.9.4.5 IP standards
4.9.4.6 Public and private IP addresses
4.9.4.7 Dynamic Host Configuration Protocol (DHCP)
4.9.4.8 Network Address Translation (NAT)
4.9.4.10 Client server model
4.9.4.11 Thin- versus thick-client computing
4.10.1.1 Database concepts
4.10.5.1 Client server databases
4.11.1 Big Data
4.12.1.1 Function type
4.12.1.3 Function application
4.12.1.4 Partial function application
4.12.1.5 Composition of functions
4.12.3.1 List processing
4.13.1.1 Analysis
4.13.1.2 Design
4.13.1.3 Implementation
4.13.1.5 Evaluation
4.14.1.1 Purpose of the project
4.14.1.2 Types of problem/investigation
4.14.5.1 Analysis
4.14.5.2 Design
4.14.5.3 Technical solution
4.14.5.4 Testing