GCSE COMPUTER SCIENCE PAPER 1: ALL THEORY (EDEXCEL)

0.0(0)
studied byStudied by 3 people
0.0(0)
full-widthCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/211

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

212 Terms

1
New cards

TOPIC 1: COMPUTATIONAL THINKING

TOPIC 1: COMPUTATIONAL THINKING

2
New cards

Computational Thinking

Process used to solve complex problems. It means formulating a problem and expressing it's solution in such a way that a computer can carry it out

3
New cards

Abstraction

Identifying the key parts of the problem and removing any unnecessary detail so it becomes easier to solve

4
New cards

Decomposition

Breaking down a complex problem into smaller, more manageable parts which are easier to solve.

5
New cards

What are subroutines?

Subroutines are small blocks of code in a modular program designed to perform a particular task

6
New cards

Decomposition creates subroutines. List some advantages of these.

-Makes debugging and maintaining the program easier

-Subroutines can be tested seperately and shown to be correct

-A particular subroutine can be called several times in the program

7
New cards

What are flowcharts?

A usefool tool that can be used to develop solutions to a problem. They graphically represent steps in a problem

8
New cards

What is pseudocode useful for?

Useful for developing an algorithm using programming-style constructs, but it is not an actual programming language

9
New cards

Why is pseudocode useful?

The programmer can concentrate on figuring out how to solve the problem without worrying about the details of how to write each statement in the programming language they will use

10
New cards

Define algorithm

A sequence of steps that can be followed in order to complete a task

11
New cards

Explain the difference between an algorithm and a computer program.

A computer program is one way of implementing an algorithm in a particular language (like python) but the algorithm is the series of instruction and it's order

12
New cards

What is a trace table used for?

Show how the values of variables change during the execution of the program. As each line of code is executed, the current value of any variable that is changed is written in the appropriate column on the table

13
New cards

What is a syntax error and what does it do?

A syntax error will prevent your program from running. It is typically caused by a mistake in the spelling or 'grammar' of the code.

14
New cards

What is a logic error and what does it do?

A logic error may crash your program or produce an unexpected/incorrect output. Logic errors occur due to things such as < or > symbols, or brackets, which could affect loop conditions or range checks.

15
New cards

What is a runtime error and what does it do?

A runtime error is one which will be detected when the program is run. It may be caused by a logic error, erroneous user input or by the program not allowing for a condition such as a user inputting 0 or entering no data at all. Division by 0 may also cause it.

16
New cards

Name 2 search algorithms

Binary and Linear search

17
New cards

What does a binary search do?

Can be used to search a list in numerical or alphabetical order. It works by repeatedly dividing in half the portion of the list that could contain the required data item

18
New cards

What does a linear search do?

In a linear search, the item will be checked one by one in the list. This is very slow for large lists but necessary if the list is not sorted.

19
New cards

Linear Search VS Binary Search

Linear:

- Inefficient but easy to implement

Binary:

-Very efficient and fast, but harder to implement and only works on sorted lists

20
New cards

How does a bubble sort work?

It works by repeatedly going through the list to be sorted and swapping adjacent elements if they are in the wrong order

21
New cards

How does a merge sort work?

In the first stage, the list is succesively divided in half until each sublist is the length of one. In the second stage each pair of sublists is repeatedly merged to produce new sublists until one, final sorted list is produced.

22
New cards

Bubble sort VS Merge sort

Merge sort: More complex, recursive algorithm (it uses a subroutine that calls itself). Many times faster for large data sets.

Bubble sort: Iterative algorithm, meaning it uses WHILE and/or FOR loops, repeating the same step many times

23
New cards

How is efficiency of an algorithm calculated?

The efficiency of an algorithm can be measured by the time it takes to execute , or the amount of memory required for a given dataset.

24
New cards

QUESTION: What are the benefits of using decomposition and abstraction?

Decomposition breaks down a complex problem into subproblems, which are much easier to solve, easier to understand and can also be examined in more detail. Therefore, if a problem is not decomposed it is much harder to solve.

Abstraction filters out unecessary information. Abstraction allows programmers to create a general idea of what the problem is and how to solve it. The process instructs them to remove all specific detail and any patterns that will not help find a solution. An idea of the problem can then be formed. This idea is known as a 'model'

25
New cards

TOPIC 2: DATA

TOPIC 2: DATA

26
New cards

A computer is made up of...

Billons of switches, each with an off or on state.

27
New cards

What is binary?

This is how the on/off is represented. off is 0 and on is 1.

28
New cards

Why is binary important?

It is the only language computers can understand, so everything must be converted into binary before being fed into a computer.

29
New cards

There are two types of binary shift. Logical and arithmetic. What does a logical shift do?

A logical shift moves all the bits in a given binary number either to the left or to the right by a given number of places. All the empty spaces are then filled with zeroes.

30
New cards

What does an arithmetic shift do?

Left arithmetic shift is the same as a left logical shift.

With a right arithmetic shift of one place, each bit moves right. The rightmost bit is discarded and the leftmost bit is filled with the previous value.

31
New cards

Why are hexadecimals used?

- Easier to read

- Easier to remember

- Take up less data

32
New cards

When are they used?

- Colour values

- MAC addresses

- memory address locations

33
New cards

What is meant by character encoding?

Each character on a keyboard has a binary code which is transmitted to the computer each time a key is pressed

34
New cards

What is a pixel?

Short for a picture element, the smallest identifiable area of an image

35
New cards

If you have 16 colours in an image, what is your bit depth?

4

36
New cards

As the number of bits per pixel increases, so does.....

The quality of the image

37
New cards

What increases with picture quality?

File size (significantly)

38
New cards

How do you calculate image file size in bits?

height x width x bit depth

39
New cards

Density of pixels in an area is called....

Resolution

40
New cards

Analogue sound must be....

Digitally recorded in binary

41
New cards

What is sample rate?

The number of audio samples captured every second

42
New cards

What is sample resolution

The accuracy to which the height is recorded

43
New cards

Sample rate is measured in........

Hertz (Hz)

44
New cards

How does compression software work?

It uses algorithms to remove repeated or unnecessary Data.

45
New cards

What affect does compression have?

It reduces the file size, saving space and also saving time for downloadable videos or images. However there is of course a loss of quality.

46
New cards

Pros and cons of Lossy and Lossless

Lossy: Reduces internet traffic and file size, but detail is permanently lost

Lossless: Original quality is preserved and no data is lost, but there is a less significant reduction in file size

47
New cards

TOPIC 3: COMPUTERS

TOPIC 3: COMPUTERS

48
New cards

What is the purpose of the CPU?

To continously fetch, read and execute instructions stored in memory

49
New cards

What does the CPU contain?

ALU, CU, registers

50
New cards

Every operation carried out within the FEC is regulated by a 'tick' or cycle of the CPU _________

Clock

51
New cards

Function of ALU

- Carries out mathematical and logical operations inlcuding AND, OR and NOT as binary shifts

- It compares values held in registers

52
New cards

Function of CU

- Coordinates all of the CPU's actions in the fetch decode execute cycle (coordinates all CPU's operations)

- Sends and recieves control signals to fetch and write data

53
New cards

Function of Clock

The clock synchronises related components by generating pulses at a constant rate

54
New cards

Function of Registers

- Very small, very fast memory locations

- Each has a very specific purpose

55
New cards

Function of the buses

- Wires used to transfer data and instructions from one component to another

56
New cards

Address Bus

- Unidirectional

- Carries the addresses which data needs to be written or read from

57
New cards

Data Bus

- Bidirectional

- Carries the actual data or instructions

58
New cards

Control Bus

- Bidirectional

- Carries command and control signals telling components when they should be recieving reads or writes

59
New cards

The REGISTERS:

MDR: Holds data or an instruction which is waiting to be written to memory

Accumulator: Where all the results of ALU operations are stored

PC: Register which holds the memory address of the next instruction to be executed

MAR: Holds the address of the current instruction or piece of data to be fetched or stored

60
New cards

What does the Von Neumann architecture consist of?

- CU

- ALU

- Memory unit (normally RAM)

- Inputs and outputs

61
New cards

What is a computer?

- An electronic device which; Takes an input, processes data and delivers an output

62
New cards

The fetch, decode, execute cycle in detail

Fetch: The program counter holds the address of the next instruction to be executed, this address is used by the MAR to fetch the instruction from the RAM (main memory) and bring it into the CPU. The address in the PC is incremented to point at the next instruction

Decode: The CU decodes the instruction to see what has to be done

Execute; Now we know what to do we execute the instruction. What we do depends on the instruction (Could be asked to fetch data, write data into RAM etc.)

63
New cards

Main memory is directly accesible by the CPU: True/False

True

64
New cards

What is primary storage

The immediate memory that the processor has access to

65
New cards

What is RAM required for?

To temporarily store the programs, instructions and data the computer needs whilst it is in operation

66
New cards

RAM vs ROM

RAM:

- Computer's temporary working memory

- It is volatile which means it gets wiped as soon as the power is switched off

ROM:

- Stores instructions and data that never need to be changed (such as computer start up)

- It is Non-Volatile

67
New cards

What is an embedded system?

- A system used to control the function of simple electronic devices such as those commonly found at home

- Very specific

68
New cards

What is secondary storage?

Where the programs, operating system and data are held when they are not in use

69
New cards

Secondary Storage is storage excluding RAM and ROM. What does it include and why do we need it?

- Includes magnetic storage, SSD storage and Optical too

- We need secondary storage for longer term storage of files and data because it is non volatile

- They are portable and have large capacities

70
New cards

Compare the three main secondary storage devices with their advantages and disadvantages;

next

71
New cards

Optical

Capacity - From 650mb to 50gb

Speed - 50mb/s

Portability - Highly portable and lightweight

Durability - Susceptible to scratches and degrades in sunlight

Cost - Very Cheap

72
New cards

Magnetic

Capacity - Up to 16TB

Speed - Up to 200mb/s

Portability - Not so portable, size of large smartphone

Durability - Can be affected by magnetic fields, heat, but also bumps and movement

Cost - More expensive

73
New cards

Solid State

Capacity - Up to 4TB, Max 256GB for USB

Speed - Up to 3.5gb/s

Portability - Highly portable

Durability - Extremely durable

Cost - Expensive

74
New cards

Explain how magnetic storage works

1. Read/write head moves into position across the concentric tracks which hold the data (this takes time)

2. The drive spindle rotates the disk, and the disk contains magnetised (1) and unmagnetised iron particles (0)

3. To write data, the head magnetises or demagnetises the iron particles

4. To read data, the head makes a note whether the particle is magnetised or unmagnetised, and translates this into binary which the computer can use

75
New cards

Explain how optical storage works

1. A disk contains pits and lands which are stored in the long spiral tracks on a disk

2. The optical drive uses a laser to reflect light off the surface of the disk

3. When the laser beam hits the curved start or end of a pit, the light is refracted and a 1 is recorded. Where the light is reflected from the flat bottom of a pit, or from an area with no pit (a land), a 0 is recorded

76
New cards

Explain how SSD storage works

1. SSD's work by forcing electrons into floating gates between two oxide layers

2. This changes the charge of the floating gate which can be measured as a 0 or a 1

77
New cards

Apllications of storage:

SSD - Require little power and generate little heat. This makes them suitable for devices used on the go (laptops, tablets). The lack of moving parts also means they are small and very reliable, so used in phones and cameras. Also used in large computers and in mass storage facilities as they can be 100 times faster and do not require expensive coding equipment

HDD - Common in desktop computers as they are cheap for storage and portability does not really matter

Optical - Useful for archiving data in the short to medium term (10 to 25 years)

78
New cards

What is an embedded system?

A computer system with a dedicated function within a larger mechanical system. Typical properties are amll size, low power use, low cost and rugged operating ranges.

79
New cards

What are system software programs?

Programs that are needed to enable the computer to function, such as the OS, utilities, library routines and programming language translators

80
New cards

What is the OS?

The OS is a group of programs that is essential for managing the computers resources.It provides the interface between the user and the hardware

81
New cards

What are the 4 major functions of an OS:

- Process management

- Peripheral management and drivers

- File management

- User management

82
New cards

Explain the function of user management

- Different users are provided with their own username and password (Allows different users to use same computer)

- The OS controls different levels of access and permission depending on their needs and levels of security

- The OS retains settings for each user, such as icons or backgrounds

- The OS also monitors login and log out activity

83
New cards

Explain the function of file management

- The OS allows users to create, delete, move and copy files

- It can search for files, restore deleted files, frees up space for new ones and prevents conflicts when two users attempt to modify the same file at once

- Access rights will also be managed

- The OS presents a logical structure of files and folders, which makes it easier for the user to keep track of them

84
New cards

Explain the function of peripheral management and drivers

- Peripheral devices are devices connected externally such as printers and monitors

- The OS communicates with these peripherals, and messages such as "out of paper" or "out of ink" must come via the OS

85
New cards

Explain the function of process management

- The OS coordinates the CPU to schedule processes

- All current processes in memory are held in a circular que, and the CPU allocates a time slice to these processes

- Processes with higher priority are given longer time slices (known as multitasking), and each process has exclusive use of the CPU during its allocated time slice

- Several time slices may be required to complete a process, so an unfinished process must await its next turn at the back of the que

86
New cards

Explain the function of authentication

- Many systems require some form of authentication before allowing you into it

- Most common way of authenticating is a username and password, however they can be hacked

- A more modern approach is biometrics (fingerprints, face ID, voice patterns)

- These sorts of patterns are completely unique to the person so they are a very secure way of authenticating an individual

87
New cards

What is utility software?

Software that is used in conjuction with the OS in order to manage extra features/functions. NOT ESSENTIAL, but make specific tasks easier and add a layer of housekeeping

88
New cards

List the 4 commmon examples of utility software:

- Defragmentation software

- Data compression software

- File repair software

- Anti Malware software

89
New cards

How does defragmentation software work?

- Files are stored on the hard disk in blocks

- As different files are added and deleted over time, gaps appear which may not fit all of the next file to be stored, and files therefore become fragmented

- The software defragments this all, which reduces file retrieval and storage times

90
New cards

How does data compression software work?

- An algorithm is used to resave the data in an existing file using less space

- Sometimes data is lost (lossy) or all data is kept (lossless)

91
New cards

How does file repair software work?

- The data making up the file can become corrupted if the disk develops a fault or a computer crashes during writing

- Your computer scans itself looking for corrupted or damaged files and then attempts to repair them

92
New cards

How does anti malware software work?

- Malware is software written with the specific intention of causing a nuisance or harm to programs and data

- Anti malware software finds patterns of known malicious code in files, and quarantines those files for deletion

93
New cards

Define robust software

The ability for an algorithm/program to continue to operate despite abnormalities in input, calculations etc.

94
New cards

Why does software need to be written as robustly as possible?

In order to reduce the threat posed by misuse, malware, hackers and other attacks

95
New cards

What are some important robust software design considerations?

Anticipating misuse: A programmer should never underestimate the level of creativeness, laziness or malice of users of a new system. Every possible input should be anticipated

Authentication: When validation or verification cannot resolve the issue, help messages and careful instructions should be used. Methods of authentication include a simple user ID and password, a PIN number or biometric methods such as fingerprint or face ID

96
New cards

What are audit trails and why are they useful?

- An audit trail provides a list of changes that have been made to software, by whom and on what date

- They are sorted into chronological order so changes can be traced back to their orginal form, to better understand any bugs or security flaws that reveal themselves for patching

97
New cards

What are code reviews and why are they useful?

- Code reviews involve checking your own program code with a colleague or partner to find errors that may have been left in

Peer code reviews:

- Find vulnerabilities that were not picked up in testing

- Streamline software development

- Improve the efficiency of the code

- Improve programmers skill levels by identifying poor practice

98
New cards

What are the features of a high level language:

- Syntax and structure similar to english

- Designed to be understood by humans

- High level languages must be compiled or interpreted into machine code before it can be run

- Less memeory efficient and can be slower to execute if not optimised

99
New cards

What are the features of a low level language (assembly language):

- Typically used to control specific hardware components

- Executes faster and occupies less space in memory than the machine code produced from a compiled program

- Allows programmers to express programs using simple commands

- These languages were closely mapped to machine architecture

- Extremely efficient, but requires a great deal of intellectual effort as it is hard to understand and write

100
New cards

There are two main translators:

Compiler + Interpreter