AQA A-Level Computer Science

studied byStudied by 20 people
5.0(1)
Get a hint
Hint

Functional abstraction

1 / 174

flashcard set

Earn XP

175 Terms

1

Functional abstraction

A mapping from one set of values to another. The result of this mapping is unique to a given set of inputs, and a value must always be returned

New cards
2

Procedural abstraction

Using a procedure to carry out a sequence of steps for achieving some task

New cards
3

Information hiding

Where data is not directly accessible and can only be accessed through defined procedures/functions

New cards
4

Decomposition

Breaking down a complex problem into a number of sub-problems, each of which performs an identifiable task

New cards
5

Composition

Combining procedures to form compound procedures (e.g. BuildHouse, BuildStreet). It can also mean combining objects to form compound data, for example records or a data structure such as a queue, tree or list.

New cards
6

Automation

Building and putting into action models to solve problems

New cards
7

Finite state machine

Abstract model of computation used to design computer programs and sequential logic circuits. It can be in one of a finite number of states and changes from one state to the next state when triggered by some condition or input (say, a signal from a timer).

New cards
8

In a finite state machine:

  • The machine can only be in one state at a time

  • It can change from one state to another in response to an event or condition; this is called a transition. Often this is a switch or a binary sensor.

  • The Finite State Machine (FSM) is defined by a list of its states and the condition for each transition

New cards
9

Finite state automaton

Finite state machine which has no output

New cards
10

Deterministic final state automaton

In a finite state machine, when you are in a particular state, and the next state is uniquely determined by the input

New cards
11

Integer (ℤ)

Any whole number

New cards
12

Natural number (ℕ)

A whole number used in counting

New cards
13

Rational number (ℚ)

Any value that can be expressed as a ratio, or fraction, including all integer values

New cards
14

Irrational number

A value that cannot be expressed as a fraction and has an endless series of non-repeating digits

New cards
15

Ordinal numbers

Describe the numerical positional of objects

New cards
16

Parity bit

Additional bit that is used to check that the other bits transmitted are likely to be correct

New cards
17

Odd parity

The total number of 1s in each bye, including the parity bit, equals an odd number

New cards
18

Even parity

The total number of 1s in each bye, including the parity bit, equals an even number

New cards
19

Majority voting

System that requires each bit to be sent three times. If a bit value is flipped erroneously during transmission over a noisy line, the recipient computer would use the majority rule and assume that the two bits that have not changed were therefore correct

New cards
20

Checksum

Mathematical algorithm that is applied to a ‘unit’ or packet of data. The data in the block is used to create a checksum value which is transmitted with the block. The algorithm is applied to the block after transmission and if the two checksums match, the transmission is deemed to have been successful.

New cards
21

Check digit

Similar to a checksum. An additional digit at the end of a string of other numbers designed to check for mistakes in input or transmission.

New cards
22

Unsigned binary number

Can represent only positive numbers

New cards
23

Signed binary number

Can represent both positive and negative numbers

New cards
24

Two’s complement

One representation of a signed binary number

New cards
25

Fixed point binary number

A way to represent fractions in binary. A binary point is used to separate the whole place values from the fractional part.

New cards
26

Bitmap/raster images

Contain pixels that make up an image

New cards
27

Pixel

A smallest identifiable area of an image, attributed a binary value which represents a single colour

New cards
28

Resolution

Width in pixels * height in pixels

New cards
29

PPI

Pixels per inch

New cards
30

Pixels per inch

Indicates the density of pixels within an image

New cards
31

Colour depth

The number of bits per pixel, which determines the number of colours that a pixel can represent

New cards
32

Metadata

Data about data

New cards
33

Image metadata

  • Width/height in pixels

  • Colour depth

  • GPS coordinates where the image was taken

  • Camera or device used to take the image

  • Exposure time

  • Focal length

New cards
34

Vector graphics

Images made up of geometric shapes or objects. The file contains only the necessary details about each shape in order to redraw the object when the file loads.

Properties of each object include:

  • Position

  • Radius

  • Fill colour

  • Line colour

  • Line weight

New cards
35

Sampling rate

The frequency with which you record the amplitude of the sound

New cards
36

Sound sample size

Number of samples per second * Number of bits per sample * Length of the sample in seconds

New cards
37

Analogue signal

A continuous signal which represents physical measurements

New cards
38

Digital signal

Discrete time signals generated by digital modulation

New cards
39

Analogue representation

Uses a continuous range of values to represent information

New cards
40

Digital representation

Uses discrete or discontinuous values to represent information

New cards
41

Analogue to digital conversion

  1. Microphone converts sound energy into electrical energy

  2. ADC (analogue to digital converter) samples the analogue data at a given frequency, measuring the amplitude of the wave at each point and converting it into a binary value according to the resolution or audio bit depth being used for each sample

New cards
42

Digital to analogue conversion

  1. Binary values for each sample point are translated back into analogue signals or voltage levels

  2. These are sent to an amplifier connected to a speaker, producing sound

New cards
43

Frequency

The speed of oscillation or vibration of a wave, measured in Hertz (Hz)

New cards
44

Nyquist’s theorem

In order to produce an accurate recording, the sampling rate must be at least double that of the highest frequency in the original signal

New cards
45

MIDI

Musical Instrument Digital Interface

New cards
46

Musical Instrument Digital Interface (MIDI)

A technical standard that describes a protocol, digital interface, and connectors which can be used to allow computers and electronic musical instruments to connect and communicate

New cards
47

MIDI controller

  • Carries event messages that:

    • Specify:

      • Pitch and duration of a note

      • Timbre

      • Vibrato

      • Volume changes

    • Synchronise tempo between multiple devices

New cards
48

MIDI file

List of instructions that tell it to synthesise a sound based on pre-recorded digital samples and synthesised samples of sounds

New cards
49

Lossy compression

Unnecessary information is removed from the original file

New cards
50

Lossless compression

All the information required to replicate the original file exactly is retained

New cards
51

RLE

Run Length Encoding

New cards
52

Run Length Encoding (RLE)

A method of lossless compression whereby repetitive and consecutive data is replaced with counts of how many are in a row

New cards
53

Dictionary-based compression

A method of

New cards
54

Encryption

The transformation of data from one form to another to prevent an unauthorised third party from being able to understand it.

New cards
55

Plaintext

The original data or message before encryption

New cards
56

Ciphertext

The encrypted data

New cards
57

Key

The secret information to lock or unlock the message

New cards
58

Caesar cipher/shift cipher

A type of substitution cipher that works by shifting the letters of the alphabet along by a given number of characters, the number of characters being the key

New cards
59

Vernam cipher

A type of one-time pad cipher that offers perfect security. A Boolean XOR operation is carried out between the binary representation of each character of the plaintext and the corresponding character of the one-time pad

New cards
60

One-time pad

To provide perfect security, the encryption key must be:

  • equal to or longer in characters than the plaintext

  • truly random

  • used only once.

The sender and recipient must meet in person to securely share the key and subsequently destroy it after encryption and decryption.

Not susceptible to cryptanalysis due to its truly random distribution of characters.

New cards
61

Hardware

The electrical or electro-mechanical parts of a computer and its input, output, and storage devices

New cards
62

Software

All the programs that are written to make computers function

New cards
63

System software

The software needed to run the computer’s hardware and application programs

New cards
64

Operating system

A set of programs that lies between applications software and the computer hardware.

It provides an Application Programming Interface (API) for hardware and software to communicate.

Its functions include:

  • Resource management

    • Memory management

    • Processor scheduling

    • Backing store management

    • Management of all input and output

  • Provision of a user interface

New cards
65

Resource management

Managing all the computer hardware including the CPU, memory, disk drives, keyboard, monitor, printer, and other peripheral devices

New cards
66

Provision of a user interface

Enables users to perform tasks like:

  • Running application software

  • Changing settings on the computer

  • Downloading and installing new software

New cards
67

Memory management

The allocation and deallocation of memory space for processes, programs, and data.

Virtual memory may be used.

New cards
68

Processor scheduling

Allocating processor time to each process in the most efficient way possible, allowing for multi-tasking

New cards
69

Roles of the scheduler

  • Maximise throughput

  • Be fair to all users on a multi-user system

  • Provide acceptable response time to all users

  • Ensure hardware resources are kept as busy as possible

New cards
70

Backing store

A secondary storage device that holds data and programs that are not currently in use by the main memory

New cards
71

Backing store management

  • Allocating space on the backing store

  • Transferring data and programs between the main memory and the backing store

  • Keeping track of the location and status of each file on the backing store

  • Keeping track of free areas of storage so new files or applications can be saved

  • Allowing users to move files and folders, delete files, and protect others from unauthorised access

New cards
72

Peripheral management

Using device drivers to control the sending and receiving of data to and from peripheral input and output devices. The operating system also ensures peripherals are allocated to processes without causing conflicts.

New cards
73

Interrupt

A signal from a peripheral or software program that causes the operating system to stop processing its current list of instructions

New cards
74

Interrupt handling

When an error occurs and a process interrupted, the operating system must detect the interrupt signal and display an appropriate error message (if appropriate) before deciding what to do next. Interrupts are what allows multi-tasking to take place.

New cards
75

Utility programs

System software designed to optimise the performance of the computer or perform tasks like:

  • backing up files

  • restoring corrupted files from backup

  • compressing or decompressing data

  • encrypting data before transmission

New cards
76

Disk defragmenter

Program that will reorganise a hard disk so that files which have been split up into blocks and stored all over the disk will be recombined into a single series of sequential blocks

New cards
77

Virus checker

Checks your hard drive, incoming emails, and internet downloads for viruses, and removes them

New cards
78

Library programs

Ready-compiled programs that can be run when needed

New cards
79

Software libraries

Groups of library programs. Most compiled languages have their own libraries of pre-written functions that can be invoked in a defined manner from within the user’s program.

New cards
80

Translators

A translator than translates program code written by a programmer into machine code which can be run by the computer

New cards
81

Compiler

A translator that translates a high-level language into machine code. It considers the entire code and converts it at once, instead of translating code line-by-line.

New cards
82

Interpreter

A translator that contains subroutines to carry out each high-level instruction. It looks at each line of the source program, analyses it, and, if it contains no syntax errors, calls the appropriate subroutine within its own program code to execute the command.

New cards
83

Bytecode

An intermediate representation of a program’s source code combining compiling and interpreting. It is low-level code that is designed for a software interpreter, compiled to run on a virtual machine instead of a CPU.

New cards
84

Advantage of bytecode

Platform independence

New cards
85

Java Virtual Machine (JVM)

An example of a bytecode interpreter that understands Java bytecode and converts it into the machine code for the particular computer it runs on

New cards
86

Advantages of a compiler over an interpreter

  • The object code can be saved on disk and run whenever required without the need to recompile

  • The object code executes faster than interpreted code

  • The object code produced by a compiler can be distributed or executed without having to have the compiler present

  • The object code is more secure, as it cannot be read without ‘reverse engineering’

New cards
87

Situations where a compiler would be more appropriate

  • When a program is to be run regularly or frequently, with only occasional changes

  • When the object code produced by the compiler is going to be distributed or sold to users outside the company that produced the software (as source code is not present)

New cards
88

Advantages of an interpreter over a compiler

  • It is useful for program development as there is no need for lengthy recompilation every time an error is discovered

  • It is easier to partially test and debug programs

New cards
89

Situations where an interpreter would be more appropriate

  • During program development

  • In a student environment when students are learning code, as they can test parts of a program before coding it all

New cards
90

Assembler

Translates an assembly language program (source code) into the 0s and 1s of the corresponding machine code instruction (object code) line-by-line.

New cards
91

Application software

Programs that perform specific user-oriented tasks

New cards
92

General-purpose software

Application software that can be used for many different purposes, e.g.:

  • word processors (Word)

  • spreadsheet packages (Excel)

  • graphics software (Photoshop)

New cards
93

Special-purpose software

Application software that performs a single specific task or a set of tasks, e.g.

  • payroll and accounts packages

  • hotel booking systems

  • fingerprint scanning systems

  • browser software

Can be bought ‘off-the-shelf’, ready to use, or can be specially written by a team of programmers for a particular organisation.

New cards
94
<p>NOT gate</p>

NOT gate

Inverts the input

New cards
95
<p>AND gate</p>

AND gate

The output is only 1 when both A and B are 1

New cards
96
<p>OR gate</p>

OR gate

The output is only 1 when either A, B, or both A and B are 1

New cards
97
<p>XOR</p>

XOR

Exclusive or; the output will be true if one or other input is true, but not both

New cards
98

NAND

Inverts the output of the AND gate

New cards
99

NOR

Only produces an output of true when both inputs are false

New cards
100

De Morgan’s first law

NOT(A + B) = NOT(A) • NOT(B)

New cards

Explore top notes

note Note
studied byStudied by 5 people
... ago
5.0(1)
note Note
studied byStudied by 13 people
... ago
5.0(1)
note Note
studied byStudied by 1 person
... ago
5.0(1)
note Note
studied byStudied by 16 people
... ago
5.0(1)
note Note
studied byStudied by 12 people
... ago
5.0(1)
note Note
studied byStudied by 16 people
... ago
5.0(1)
note Note
studied byStudied by 18 people
... ago
5.0(1)
note Note
studied byStudied by 245 people
... ago
5.0(2)

Explore top flashcards

flashcards Flashcard (86)
studied byStudied by 20 people
... ago
5.0(1)
flashcards Flashcard (102)
studied byStudied by 15 people
... ago
5.0(1)
flashcards Flashcard (59)
studied byStudied by 28 people
... ago
5.0(4)
flashcards Flashcard (53)
studied byStudied by 4 people
... ago
5.0(1)
flashcards Flashcard (49)
studied byStudied by 1 person
... ago
5.0(1)
flashcards Flashcard (179)
studied byStudied by 32 people
... ago
5.0(1)
flashcards Flashcard (82)
studied byStudied by 4 people
... ago
5.0(1)
flashcards Flashcard (41)
studied byStudied by 11 people
... ago
5.0(1)
robot