Computer Science AQA A level
🇬🇧
In English
In English
Practice Known Questions
Stay up to date with your due questions
Complete 5 questions to enable practice
Exams
Exam: Test your skills
Test your skills in exam mode
Learn New Questions
Manual Mode [BETA]
The course owner has not enabled manual mode
Specific modes
Learn with flashcards
Complete the sentence
Listening & SpellingSpelling: Type what you hear
multiple choiceMultiple choice mode
SpeakingAnswer with voice
Speaking & ListeningPractice pronunciation
TypingTyping only mode
Computer Science AQA A level - Leaderboard
Computer Science AQA A level - Details
Levels:
Questions:
829 questions
🇬🇧 | 🇬🇧 |
Define software | Programs of instructions which run on the hardware |
How and why are library programs useful for programmers? | It simplifies, and speeds up the process of programming cause they can use already tried and tested code |
What does the operating system do | Handles I/O devices Memory management Processor scheduling Interrupt handling Management of secondary storage Power management |
Define application software | Programs written to perform specific user end task |
Who/ what is system software designed for? | Machine tasks |
Define system software | The software creates a platform for the other software to run Operates, controls and maintains the computer and its components |
What controls what: hardware or software? | Software controls the hardware |
What is an operating system | Set of programs that lies between the application software and the hardware Hides the complexities of the hardware |
Why do we use an operating system? | It allow the end user to control the computer with ease |
Put simply what is the role of an operating system? | Set of programs that lies between the application software and the hardware Hides the complexities of the hardware |
What are utility programs? | They're the housekeeping programs |
What do library programs contain? | Useful functions that are frequently used by a program |
Give some examples of utility program tasks | Encryption Data compression Defragmenting hard drives Data backup |
What are the 3 categories of application software? | General Special Bespoke |
Define hardware | Physical components that make up a device |
What are the 4 types of system software | Translator Operating systems (OSs) Utility programs Libraries |
What does system software do | Operates, controls and maintains the computer and its components The software creates a platform for the other software to run |
What is an operating system | Somethings |
Not A and B | Not A |
What must first be done for a computer to be able to use intermediate languages? | Download the platform specific translator |
Whats the differences between an interpreter and a complier? | A comiler produces object code/ excutable file An interpreture does not produce an object code An interpreture analyses a program line by line whereas a compiler does the whole block of code A compiler will not procuce an executable file if an error is found but an interpreture will run the code until the first error is detetced Interpreted code will excute slower than excuting the object code produced by a complier Do not need a compiler to excute a compiled program but when running interpreted code the interpreture always needs to be present Once compiled source code is no longer needed to run the program but an interpreture always needs source code at runtime Compiled code can only excute on a machine with the same processor type whereas interpreted code is more portable |
- Give the differences between source code and object code | Source code is written in high-level or assembly language whereas object code is written in machine language + all differences between high and low level languages, such as: - Source code is easy to understand - Source code is easy to modify - Source code contains fewer statements than object code |
Which two types of translator can be used to translate high-level languages into machine code? | Compilers Interpreters |
Which type of translator translates high-level languages into machine code line-by-line? | Interpreters |
Why does the computer use translators? | In order for a program to be executed by a computer’s processor, it must be in the form of a machine code program |
What are the 3 types of translator called? | Interpreter Assembler Compiler |
Which type of translator requires the source code to be present when the program is executed? | Interpreters |
What is source code? | Code written using a human-readable programming language |
What is object code? | Code written in machine langauage through translators |
What is an intermediate language? | 'Half way' standard language which can they be translated into computer specific machine code |
What is the benefit of using compilers with intermediate languages? | They allow the program to be run on all platforms |
How do compilers with intermediate languages work? | 1. Translate the program into the intermediate language 2. Platform specific translator translates this intermediate language code |
What is a compliler | A program that translates high level languages into machine code in one go |
What is an interpreter | A program that translates high level languages into machine code line by line |
What is an assembler | A program that comverts from low level programming code to machine code |
Explain how a compiler better protects source code to an interpreture? | A copied file of the code is used to to run the program not the actual source code |
Discuss the advatanges of using a high level language compared to a low level | Program code is easier to understand/maintain/debug; Faster development time // programmers can be more productive // one line of HLL code can do the same job as many lines of assembly language; Programs are (more) portable (to other hardware platforms) Language is problem-oriented; More support/ better refined as more programmers use it; Support for different paradigms; A. Examples eg functional programming Built-in support for data structures; A. Example(s) eg arrays, records Availability of flow control structures; A. Example(s) eg loops, selection Improved features for supporting modularity; A. Ability to use subroutines |
Discuss the disadvatages of using a high level language compared to a low level (Assembly language) | Assembly language code may execute more quickly is because translation is not required Assembly language code may use less memory; Assembly language gives direct/better access to computer hardware // enables direct manipulation of memory (contents); |
Which are processor specific: low-level languages or high-level languages? | Low-level languages |
Which type of language uses mnemonics in instructions? | Assembly language |
Which type of languages must be translated into machine code with a compiler or interpreter before execution? | High-level languages |
What are the two types of low level langauge? | Machine code Assembly language |
Describe machine code langauage | Programming with the use of numerical characters |
Describe assembly langauage | Programming with the use of mnemonic characters |
Explain the term ‘imperative high-level language’ | A programming language that requires programming discipline. Programmers must develop a proper order of actions in order to solve the problem. A 'procedural language' BETTER: (1) Instructions are executed in a programmer-defined order (1) High level language instructions use English-like keywords |
What is a function? | A method that returns a value |
What is a procedure? | A method that does not return a value |
If you were to want a random number between 0 and 10, how would you go about programming one? | Random random = new Random(); int randomNumber = random.Next(0, 10); Console.WriteLine(randomNumber); |
State how to declare a 2D array | Int[,] array = new int[x, y]; |
State how to declare an array of integers | Int[] array = new int[6]; |
How would you acess the eleemts of a text file | String filename = "FILENAME.txt"; StreamReader sr = new StreamReader(filename); while ((line = sr.ReadLine()) != null) { line = each line of text file } sr.Close(); |
What does the '%' operand do? | Gives the remainder of a division of two numbers |
What does an integer '/' operand do? | Divides two integers and rounds towards zero to give an integer |
Math.Round(x,y,z)' What are the variables for x y and z What do they represent in the rounding function | X: Decimal number to be rounded y: Integer, number of decimal places z: Mode, Specification for how to round x if it is midway between two other numbers |
What are the advantages of using named constants | Easier to understand code |
Porgram how to get the poisition of an element of a string | String Str = new string; Str[position] |
What is meant by a subroutine | A named block of code containing a set of instructions desgined to perform a frequenctly use operation |
What are two advantages of constants over hard coded values? | Constants can be given names so are easier to for a human to read Constants only need updating at one position in the code |
What is meant by concatenation | Joining two or more strings together |
Can you say the 4 types of programming paradigm? | Imperative / procedural Functional Declarative Object oriented |
What does the ALU do? | Performs arithmetic and logic operations |
What are the 3 stages to the fetch section of the Fetch-Execute cycle ? | 1. Any data required by the instruction that isn’t present in registers is fetched 2. The instruction is carried out 3. Results of any calculations are stored in general purpose registers or main memory |
What is the role of the control unit? | Controls all the differnt parts of the processor |
Why are registers really effective for the CPU? | The CPU needs very fast accessible memory and registers are vert fast memory |
What are the 5 special purpose registers? | PC (Program counter) CIR (Current instruction register) MAR (Memory address register) MBR (Memory buffer register) SR (Status register) |
What does the special register PC do? | Used to hold the memory address of the next or the current instruction to be executed in the fetch-execute cycle Must say both current and next ^ |
What does the CIR register do? | Holds the instruction that is currently being executed by the processor |
What does the memory address register do? | Stores the memory address of a memory location that is to be read from or written to |
What does the special MBR register do? | Holds the contents of a memory location that has been read from or data that is to be stored. |
What does the status register register do? | Contains a number of bits, the values of which can change to indicate the occurrence of an interrupt. |
What does the SR special purpose register stand for? | Status register |
What do the special purpose registers MBR, MAR and CIR stand for? | Memory buffer register Memory address register Current instruction register |
What does the system clock do? | Synchronises the components |
What is a register? | A memory/storage location inside the processor |
What mathematically effectively is logic shifting | Doubling or halving |
How would you describe what is happening in the AQA assembly language: LDR Rx, <memory reference> | Loading the value stored in the memory location specified by <memory reference> into register x. |
Describe what a word is to the processor | The group of bits that is treated as a single unit by the processor |
What is a core responsible for in a processor? | Completing the Fetch-Execute cycle |
What 4 ways can the processor execute data? | Reading operand data in to the accumulator from the RAM Performing arithmetic on operand data Performing logical functions (conditionals / loops) Writing data from the accumulator to the RAM |
What is the role of the processor? | To execute program instructions in order to run applications |
Name two types of main memory | 1. Random access memory (RAM) 2. Read only memory (ROM) |
Discuss the advatanges of using a high level language compared to a low level | Program code is easier to understand/maintain/debug; Faster development time // programmers can be more productive // one line of HLL code can do the same job as many lines of assembly language; Programs are (more) portable (to other hardware platforms) Availability of flow control structures; A. Example(s) eg loops, selection Improved features for supporting modularity; A. Ability to use subroutines Built-in support for data structures; A. Example(s) eg arrays, records Language is problem-oriented; Support for different paradigms; A. Examples eg functional programming |
Discuss the disadvatages of using a high level language compared to a low level | Assembly language code may execute more quickly; R. If response suggests that faster execution is because translation is not required Assembly language code may use less memory; Assembly language gives direct/better access to computer hardware // enables direct manipulation of memory (contents); NE. “More efficient” for either executes more quickly or uses less memory |
What type of quantities would you describe real numbers as? | All possible real world quantities |