1/21
Name | Mastery | Learn | Test | Matching | Spaced |
|---|
No study sessions yet.
Decomposition
Breaking down a large problem into a smaller probelm
Why do decomposition
Smaller problems are easier to solve. Can be tested independently
Abstraction
Removing unnecessary details to focus on important features
Subprogram
Out of line block of code that may be called by simply writing their name
Benefits of subprogram
Makes big problems easier to break down. Allows different team members to work on different parts of the project. Easier to debug. More efficient as code is not duplicated.
Algorithm
A precise set of rules or instructions to solve a specific problem or task
Pseudocode
Text-based tool that uses short English words to describe an algorithm.
RAID
Redundant Array of Independent Discs
RAID purpose:
Protect against data loss by creating copies of data on different drivers
Quid pro quo
Where an attacker gives the victim a service or benefit in exchange for personal information
Worm
Malicious code that makes copies of itself and does harm to the users computer. Works by itself. Does not need to attach to a computer program like a virus
Baiting
Attackers use a lure such as free downloads to get the user to install malicious software or divulge sensitive information
Why encrypt on internet
So hackers can’t understand the data transmission. Scrambles it into an unreadable format of cyphertext
Phishing
Criminals impersonate a trustworthy entity to trick users into divulging personal or sensitive information
Data compression
Reducing a file size for efficient storage and transmission
Bit
1 or 0. smallest block of data
Lossy compression
File size is decreased. Data is lost. Non-reversible. Less storage space. Easier to store and transfer
Compiler
Translates the high-level code into machine code all in one go. Original source code is not shared. When shared does not need a translator. Optimises. Memory intensive
Interpreter
Translate high-level languages to machine code one line at a time. Good for debugging. Slower. No optimisation.
High-level programming language
English-like statements. Needs to be translated before running. One line of code does multiple operations. Easy to write and debug
Low-level language
One line of code is one machine operation. Used to write base operating systems (device drivers, operating system kernsl) Direct control over hardware. Written for specific processors
Machine code
Binary or hexadecimal. Understood by computer.