teach-ict.com logo

THE education site for computer science and ICT

A Level Computer Science OCR H446

The material on this site is not endorsed by the OCR examination board. We do not guarantee that it covers all of the relevant theory that is required for the examination. Please refer to the H446 syllabus to ensure that you are covering the material to the standard required.

 

A level (H446) Computer Science

1.1 Characteristics of contemporary processors, input, output and storage devices

1.1.1

Architecture

Main Parts of a CPU

  • Control Unit
  • ALU
  • Registers

Registers within the CPU

  • Accumulator
  • Memory Data Register
  • Memory Address Register
  • Program Counter
  • Current Instruction Register

Fetch-Decode-Execute Cycle

  • Registers involved
  • Fetch, decode, execute cycle

CPU performance factors

  • Clock speed
  • Multi-core
  • Cache
  • RAM size
  • GPU
  • Pipelining

Von Neumann and Harvard

  • Von Neumann architecture
  • MAR & MDR
  • Program Counter
  • Accumulator
  • Harvard architecture

1.1.2

Types of Processor

CISC and RISC

  • CISC
  • RISC

Multicore and Parallel processing

  • Pipelining
  • Array processor
  • Multi-core
  • GPU

1.1.3

Input Output and Storage

Selecting Devices

  • Input
  • Output
  • Storage

Type of storage

  • Magnetic
  • Optical
  • Solid State
  • Backup and Archiving

RAM and ROM and virtual memory

  • Main memory
  • Volatile memory - what is it?
  • RAM
  • DRAM
  • SRAM
  • ROM
  • Virtual memory

 


1.2 Types of software and software development

1.2.1 Operating System

Purpose
of an operating system

  • Kernel
  • Device Drivers
  • Utilities
  • User Interface

Memory Management

  • Segmentation
  • Pagination
  • Virtual memory
  • Memory issues

Interrupts and Polling

  • Polling
  • Interrupt
  • CPU and interrupts

Scheduling

  • Round Robin
  • First Come First Serve
  • Shortest Job
  • Shortest time
  • Multi-level

Types of operating systems

  • Multi Tasking
  • Multi User
  • Distributed
  • Real Time
  • Embedded
  • Batch

BIOS

  • Booting
  • BIOS
  • POST
  • System start
  • Operating system boot

Device Drivers

  • Kernel
  • Device drivers
  • User interface
  • Utilities

Virtual Machines

  • Virtual machines
  • VM with operating system
  • VM with bytecode
1.2.2 Applications Generation

Types of applications
and utilities

  • Applications
  • Utilities
  • Generic software
  • Bespoke & Custom software
  • Closed source
  • Open source

Applications generation
Program creation

  • Translators
  • Interpreters
  • Compilers
  • Assemblers

Stages of compilation

  • Lexical
  • Syntactic
  • Code generation

Linkers
Loaders & Libraries

  • Modules
  • Libraries
  • Linkers
  • Loaders

1.2.3

Software development

Software Development

  • Waterfall
  • Rapid Application Development
  • Spiral
  • Agile
  • Extreme Programming
  • Merits of different software methods
1.2.4 Types of programming language

Programming Paradigms

  • Paradigms
  • Low level languages
  • Procedural languages
  • Object Oriented languages
  • Declarative languages
  • Functional languages

Procedural language
techniques

  • What is a procedural language
  • Procedures
  • Subroutines
  • Functions
  • Program flow
  • Variables and Scope
  • Constants
  • String Handling
  • File Handling
  • Operators
Assembly language

Little Man Computer (LMC)

  • LMC Model
  • Instruction Set
  • Labels
  • Calculation
  • Branching
  • Input-Output
  • Loops

Memory Modes

  • Immediate addressing
  • Direct addressing
  • Indirect addressing
  • Indexed addressing

1.2.5

Object Orientated Programming

OOP

  • Class
  • Attributes
  • Methods
  • Objects
  • Interface
  • Encapsulation
  • Polymorphism

 

 

1.3 Exchanging data

1.3.1

Compression & Encryption

Compression

  • Principle of compression
  • Lossy compression
  • Lossless compression
  • Dictionary compression
  • Run Length encoding
  • Huffman encoding

Encryption

  • Symmetric encryption
  • Asymmetric encryption
  • RSA and AES
  • Comparison
  • Public-private keys

1.3.2

Databases

Databases

  • Flat file databases
  • Relational databases
  • Primary key
  • Foreign key
  • Secondary key

Normalisation

  • First Normal Form
  • Second Normal Form
  • Third Normal Form

1.3.3

Network Characteristics

Networks

  • Network Characteristics
  • Protocol and standards importance

Models and Protocol Layering

  • Internet 4 Layer Model
  • Protocol Layering
  • Physical & Logical layers
  • OSI

The TCP/IP stack

  • TCP/IP
  • Ports and Sockets

Internet Protocols

  • Global standards
  • UDP
  • HTTP(s)
  • FTP
  • POP,LDAP,SMTP
  • Ethernet

IP Addressing

  • IP Format
  • Subnet Mask
  • IANA and ICANN
  • IPv4 and IPv6
  • DNS and Domain Name
  • MAC address

LANs, WANs, PANs, SANs, MANS

  • PAN
  • LAN
  • WAN
  • SAN and MAN

Packet & Circuit Switching

  • Circuit switching
  • Datagrams
  • Packet Switching

Network configuration

  • Client Server
  • Peer to peer

Network Security

  • Authentication
  • User rights
  • User Education
  • Encryption
  • Firewall
  • Proxy Server

Network Hardware

  • NIC - Network Interface Controller
  • Router
  • Bridge
  • Hub
  • Switch
  • WAP

1.3.4

Web Technologies

Web Technologies

  • HTML
  • CSS
  • Javascript

Compression

  • Principle of compression
  • Lossy compression
  • Lossless compression

Web Search

  • Web crawler spider
  • Page Rank
  • Advanced Search

Client & Server processing

  • Client side processing
  • Client side pros and cons
  • Server side processing
  • Server side pros and cons
  • Processing technologies

 

1.4 Representing Data

1.4.1

Primitives

Primitive

  • Integer
  • Real
  • Character
  • String
  • Boolean

Integer

  • Range
  • Unsigned
  • Signed
  • Sign & Magnitude
  • Two's compliment

Real

  • Fixed point
  • Floating point
  • Mantissa, Exponent
  • Placing binary point

Normalising

  • Floating point limits
  • Normalising Floating point
  • Examples

Arithmetic

  • Floating point addition
  • Floating point subtraction

Bit manipulation

  • Left shift
  • Right shift
  • Circular shift
  • AND, OR, XOR applied

Character Sets

  • Character Set
  • ASCII
  • Extended ASCII
  • Unicode
  • UTF-8

Hexadecimal Numbers

  • Why Hexadecimal
  • Denary to Hexadecimal
  • Hexadecimal to Denary
  • Binary to Hexadecimal
  • Hexadecimal to Binary

1.4.2

Data Structures

Data Structures

  • List
  • Linked List
  • Array
  • Tuple
  • Dictionary (associative array)
Arrays
  • 1 dimensional array
  • 2 dimensional array
  • 3 dimensional array
  • Array iterations
  • Array operations
Queue and Stack
  • Queue
  • Stack
  • LIFO queue
  • FIFO queue
  • Code example
Graph
  • Undirected graph
  • Directed graph
  • Sparse and Dense
  • Adjacency Matrix
  • Adjacency List
  • Python code example

 

1.5 Legal, moral, cultural and ethical issues

1.5.1

Computing related legislation

 

1.5.2

Ethical, moral and cultural issues

Artificial Intelligence

Automated Decision Making

Censorship and the internet

Computers in the workforce