1/70
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Decomposition
Breaking down a complex problem into smaller, more manageable sub-problems.
Abstraction
Focusing on the essential details of a problem/system while hiding unnecessary complexities.
Benefit of subprograms
Improves code organisation, makes code reusable, and is easier to debug.
Basic programming constructs
Sequence, Selection, Repetition (Iteration).
Count-controlled loop structure
FOR loop (e.g., FOR i = 1 TO 10 DO...NEXT i).
Condition-controlled loop structure
WHILE loop (e.g., WHILE score < 100 DO...END WHILE) or REPEAT UNTIL loop (e.g., REPEAT...UNTIL score >= 100).
Variable in an algorithm
A named storage location in memory whose value can change during program execution.
Constant in an algorithm
A named storage location in memory whose value does not change during program execution.
Array
An ordered collection of elements of the same data type, accessed via an index.
String
A sequence of characters (e.g., 'Hello World').
Arithmetic operators
+ (addition), - (subtraction), * (multiplication), / (division), MOD (modulus - remainder of division), DIV (integer division - whole number result), ^ (exponentiation - to the power of).
Relational operators
= (equal to), != or <> (not equal to), < (less than), > (greater than), <= (less than or equal to), >= (greater than or equal to).
Trace table
To manually track the values of variables and outputs in an algorithm step-by-step to check its logic.
Syntax error
Violates the grammatical rules of the programming language (the program won't run).
Logic error
The program runs, but produces incorrect or unexpected results due to flaws in the algorithm's design.
Runtime error
An error that occurs while the program is executing, causing it to crash (e.g., division by zero, trying to access a file that doesn't exist).
Bubble sort
Repeatedly steps through the list, compares adjacent elements, and swaps them if they are in the wrong order, until the list is sorted.
Merge sort
Divides the list into sublists until each contains one element, then repeatedly merges these sublists to produce new sorted sublists.
Linear search
Checks each element in a list sequentially from the beginning until the target item is found or the end of the list is reached.
Binary search
An efficient search for sorted lists; it repeatedly divides the search interval in half until the target is found or the interval becomes empty.
Why do computers use binary?
(Definition not provided in the notes.)
Electronic circuits
Represent two states: on/off, high/low voltage, which maps directly to 1s and 0s.
3 bits
Can represent 2^3=8 states.
Unsigned integer
A positive whole number, including zero.
Two's complement
Used for representing negative integers in binary.
Denary to 8-bit binary conversion
Denary 10 is represented as 00001010.
Binary to denary conversion
Binary 11001011 converts to denary as 128+64+0+0+8+0+2+1=203.
Overflow error
Occurs when the result of a binary calculation is too large to be stored in the allocated number of bits.
Hexadecimal
Used in computing as a more human-readable way to represent long binary numbers, where each hex digit represents 4 binary bits.
Character encoding in binary
Using character sets like ASCII (7-bit) or Unicode.
Bitmap images representation
Represented as a grid of pixels, where each pixel's colour is represented by a binary code.
Analogue sound to binary conversion
By sampling (taking measurements of the amplitude at regular intervals).
Sample rate and sound quality
A higher sample rate means more samples per second, leading to a more accurate digital representation of the original sound, thus higher quality.
Data storage units
From smallest to largest: bit, nibble, byte, kibibyte (KiB), mebibyte (MiB), gibibyte (GiB), tebibyte (TiB).
Data compression types
Lossless compression: Data can be fully restored to its original state. Lossy compression: Some data is permanently removed, resulting in a smaller file size but a loss of quality.
Lossless compression example
Run-Length Encoding (RLE), TIFF, PNG, ZIP.
Lossy compression example
JPEG (images), MP3 (audio), MP4 (video).
Environmental impacts of computing
Energy consumption: From manufacturing, using, and cooling hardware. E-waste: Disposal of old electronic devices containing hazardous materials.
Intellectual property
Creations of the mind, such as inventions, literary and artistic works, designs, symbols, names, and images, used in commerce, protected by law (e.g., copyright, patents).
Data protection legislation purpose
To protect individuals' personal data and ensure it's processed lawfully, fairly, and transparently.
Computer Misuse Act
Primarily designed to prevent unauthorised access to computer material (hacking), unauthorised access with intent to commit further offences, and unauthorised modification of computer material.
Ethical concern regarding AI
Potential for job displacement, algorithmic bias, lack of transparency in decision-making, privacy concerns.
Malware
Malicious software designed to damage or gain unauthorised access to computer systems. Examples: Viruses, worms, ransomware, spyware.
Viruses
Malicious software that replicates itself and spreads to other computers.
Worms
A type of malware that replicates itself to spread to other computers.
Ransomware
Malicious software that encrypts files and demands payment for decryption.
Spyware
Software that secretly monitors user activity and collects personal information.
Social engineering
Manipulating people into performing actions or divulging confidential information.
Phishing
A method of social engineering that uses fake emails to trick users into providing sensitive information.
Denial of Service (DoS) attack
Flooding a system or network with excessive traffic, making it unavailable to legitimate users.
Authentication
Verifying user identity (e.g., strong passwords, 2FA, biometrics).
Encryption
Scrambling data to make it unreadable without a key.
Firewalls
Blocking unauthorized network access.
Anti-malware software
Detecting and removing malicious software.
Penetration testing
A simulated cyberattack against a computer system or network to find security vulnerabilities.
Decomposition in programming
Breaking a large problem into smaller, manageable sub-problems, making it easier to design and implement.
Maintainable code techniques
Using comments to explain code and using meaningful variable names.
Fit for purpose
A program that meets all the requirements and specifications for which it was designed.
Selection construct example
IF score >= 50 THEN PRINT 'Pass' ELSE PRINT 'Fail' END IF.
Initialisation of a variable
Giving a variable its first value, often at the start of a program or before a loop.
Primitive data types
Common types include Integer (whole numbers), Real/Float (numbers with decimal points), Boolean (True or False), and Char (a single character).
Record data structure
A collection of related data items, which can be of different data types, grouped together under a single name.
Length of a string
Obtained using a built-in function (e.g., LEN(myString) or len(myString) depending on the language).
String concatenation
Joining two or more strings together to form a single string (e.g., 'Hello' + 'World' = 'HelloWorld').
Input statement purpose
To allow the program to receive data from the user (e.g., via keyboard).
CSV files
Commonly used for storing tabular data where values are separated by commas.
Procedure
A subprogram that performs a task but does not return a value.
Function
A subprogram that performs a task and returns a value.
Parameter in a subprogram
A value passed into a subprogram from the main program or another subprogram to be used during its execution.
Local variable
Only accessible within the subprogram or block where it is defined.
Global variable
Accessible from anywhere in the program.