hey all, notes in order of the exam spec (the syllabus), nothing extra, concise and handy, covers key definitions of ALL topics, including some helpful formulas. Good Luck :))
What is an algorithm? :: set of instructions used to solve a problem or complete a task
What is decomposition? :: breaking larger problems into smaller, sub-problems so that each accomplish an identifiable task, which might itself be further subdivided
What is abstraction? :: Abstraction is the process of removing unnecessary detail from a problem
Data structure :: way of storing and organizing a set of data, that can easily be edited/changed Subroutine :: named block of code which can be run by calling its name in a program
Function :: a procedure which has a return value Parameter – input variable for a subroutine Assembler :: converts assembly language (low level) into machine code
Interpreter :: converts high level programming into machine code (line by line)
Compiler :: converts high level programming into machine code (whole program at once)
Scope :: which part of a program can see variables/constants/data structures
here’s a neat little comparison table between assembler, interpreter and compiler:
Feature | Interpreter | Compiler | Assembler |
---|---|---|---|
Input | A High-Level Language | A High-Level Language | Assembly Language (Low Level) |
Output | No output, program runs straight away | Machine Code | Machine code |
How it works | Translates source code and immediately runs it | Compiles source code so it can be run later | Assemble source code so it can be run later |
Speed of execution | Slow as it needs to be translated each time it is run | Fast, as CPU runs the machine code | Fast, as the CPU runs the machine code |
What users need to run program | End users need the interpreter and the program | Users need just the compiled program | Users need just the compiled program |
Source Code | End users can see the source code | End users cannot see the source code | End users cannot see the source code |
Bit :: one unit of data
Character set :: defined list of characters recognized by computer’s hardware and software
Pixel :: single dot of colour in an image
Bitmap :: graphical image made up of pixels
Pixel resolution :: number of pixels in an image
Colour depth :: bits used per pixel
Sample :: measure of amplitude at a point in time
Sampling rate :: number of samples taken per second
Sample resolution :: number of bits used per sample
here are the important formulas for this topic:
File size of image (in bits) = width (pixels) x height (pixels) x colour depth (bits)
think of this one as a formula triangle, with file size at the top, and the three others below
File size of sound (bits) = sample rate (Hz) x time (sec) x sample resolution (bits)
again, file size is the top of the triangle, with the three others below
Computer system :: combination of hardware and software used to perform tasks
Hardware :: physical part of a computer
Software :: programs that are downloaded/installed onto a computer
System software :: programs which help run and maintain a computer system
Application software :: programs which help the user perform day to day tasks
Operating system :: platform for hardware to use the software
Volatile memory :: temporary storage that is lost when power turns OFF (RAM)
Non-volatile memory :: permanent storage that is kept when the power turns OFF (ROM, HDD)
Cloud storage :: secondary storage, at a remote location which is accessible via the internet
Embedded System :: computer system with a specific purpose, built into another system/machine
RAM :: stores running applications while the computer is ON
ROM :: stores the BIOS (instructions needed to turn on the computer and cannot be edited) Cache :: stores the most frequently accessed instructions from the RAM (Level 1, Level 2, L3)
here is the memory pyramid
Level 1 cache is used around 50% of the time, Level 2 90%, so its no doubt that cache makes a big difference in the computer’s performance speed, as it is fast access memory location that is quicker to access than RAM and slower than registers.
Computer Network :: a group of computers connected together to share resources
Network Protocol :: a set of rules which allow devices to communicate
Network Security :: methods which protect networks from unauthorised access and harm
Authentication :: verifying the user’s identity when accessing data/network, to prevent unauthorised access
Firewall :: protects network from unauthorised access by controlling incoming/outgoing network connections
Encryption :: scrambling data to change how it looks to prevent unauthorised access (only people with decryption key can access original)
Cyber security :: methods which prevent data/programs from Attack, Damage and Unauthorised access
Penetration Testing :: testing the security of a system/network to find any vulnerabilities.
Black-box testing :: stimulates external hacking or cyber warfare attack
White-box testing :: stimulates malicious insider (spy) who knows something about the target system
Social engineering :: art of manipulating people to give up personal information/details Malware :: malicious software/code