H446 All key terms

0.0(0)
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/246

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.

247 Terms

1
New cards

ALU

The part of the CPU where data is processed and manipulated. This processing and manipulation normally consists of arithmetic operations or logical comparisons allowing a program to make decisions.

2
New cards

Control Unit

The part of the CPU that manages the execution of instructions. The control unit fetches each instruction in sequence, and decodes and synchronises it before executing it by sending control signals to other parts of the computer.

3
New cards

Register

Tiny areas of extremely fast memory located in the CPU normally designed for a specific purpose, where data or control information is stored temporarily.

4
New cards

PC

A register in the control unit which holds the address of the next instruction to be executed.

5
New cards

ACC

A special register within the ALU. It is used to hold the data currently being processed by the central processor. Any data to be processed is stored temporarily in the accumulator, the results ending up back in the accumulator being stored in the memory unit.

6
New cards

MAR

A register in the CPU that stores the address of the memory location currently in use. In the fetch phase, this would be the address of the instruction being loaded; in the execute phase, it would be the address of the data being used.

7
New cards

MDR

A register in the CPU that stores data being transferred to and from the immediate-access store. It acts as a buffer, allowing the central processor and memory unit to act independently without being affected by minor differences in operation. A data item will be copied to the MDR ready for use at the next clock pulse, when it can either be used by the central processor or stored in main memory.

8
New cards

CIR

A register in the control unit that stores the address of the next instruction currently being executed and decoded.

9
New cards

Busses

A common physical pathway shared by signals to and from several components of a computer.

10
New cards

Data Bus

The part of the bus which carries the actual information.

11
New cards

Address Bus

The part of the bus which carries identification about where the data is being sent.

12
New cards

Control Bus

This bus carries command and control signals to and from every other component of a computer.

13
New cards

Fetch-Decode-Execute

The complete process of retrieving an instruction from store, decoding it and carrying it out. Also known as the instruction cycle.

14
New cards

CPU

The main part of the computer, consisting of the registers, ALU and control unit.

15
New cards

Clock Speed

Measured in Hertz, the clock speed is the frequency at which the internal clock generates pulses. The higher the clock rate, the faster the computer may work. The 'clock' is the electronic unit that synchronises related components by generating pulses at a constant rate.

16
New cards

Cores

A part of a multi-core processor. A multi-core processor is a single component with two or more independent actual CPUs, which are the units responsible for the fetch-decode-execute cycle.

17
New cards

Cache

A part of the main store between the central processor and the rest of the memory. It has extremely fast access, so sections of a program and its associated data are copied there to take advantage of its short fetch cycle.

18
New cards

Pipelining

Successive steps of an instruction sequence are executed in turn by a sequence of cores able to operate concurrently, so that another instruction can be begun before the previous one is finished.

19
New cards

Von Neumann Architecture

Traditional computer architecture that forms the basis of most digital computer systems. Data and instructions are stored in the same memory. A single control unit manages program control flow following a linear sequence of 'fetch-decode-execute’

20
New cards

Harvard Architecture

A computer architecture with physically separate storage and signal pathways for instructions and data. These early machines had data storage entirely contained within the central processing unit, and provided no access to the instruction storage as data.

21
New cards

Contemporary Architecture

Any modern set of disciplines that describes the functionality, the organisation and the implementation of computer systems.

22
New cards

CISC

A design that produces a complicated and expensive integrated circuit capable of performing a large variety of complex instructions. Complex instructions can be executed with few machine cycles.

23
New cards

RISC

A design that produces a simple, cheap integrated circuit with a basic range of machine instructions. Relies on speed as complex instructions take many machine cycles.

24
New cards

GPU

A specialised electronic circuit designed to rapidly manipulate and alter memory to accelerate the creation of images in a frame buffer intended for output to a display. Modern GPUs' highly parallel structure makes them more effective than general-purpose CPUs for algorithms where processing of large blocks of data is done in parallel.

25
New cards

Multicore System

Development of CISC architecture with several sets of CPU components in one microprocessor.

26
New cards

Parallel Processor System

The simultaneous use of several processors to perform a single job. A job may be split into a number of tasks each of which may be processed by any available processor.

27
New cards

Input Device

Any peripheral device that can accept data, presented in the appropriate machine-readable form, decode it and transmit it as electrical pulses to the CPU.

28
New cards

Output Device

Any peripheral device that translates signals from the computer into a human-readable form or into a form suitable for reprocessing by the computer at a later stage.

29
New cards

Storage Device

Any medium (optical, magnetic, solid state and even paper) which holds data or programs.

30
New cards

Magnetic Storage

Storage medium which uses surfaces coated with a layer of magnetic material on which data can be stored by magnetically setting the arrangement of the magnetic material. This is done by electromagnetic read/write heads.

31
New cards

Flash Storage

Collection of memory chips that is controlled by its own software to make the collection of chips act like a disk drive.

32
New cards

Optical Storage

Storage medium that uses plastic discs on which the data is stored as patterns on the surface in pits and lands.

33
New cards

RAM

Volatile main memory. Access times are very fast. Often referred to as Main Memory, although RAM can be used in main areas of computing and computing storage. When used as main memory, RAM typically can be thought of as containing the Operating System, programs in use and the data those programs are using while the computer is running.

34
New cards

ROM

Read Only Memory. Memory for which the contents may be read but cannot be written to by the computer system. Software in ROM is fixed during manufacturing. It typically holds system boot up instructions. ROM is non-volatile. More modern types of ROM can be written to in limited ways, these include PROM, EPROM and EAROM

35
New cards

Virtual Storage

Data stored on remote hard disks accessed over the internet.

36
New cards

Operating System

Collection of systems software that manages the computer. Usually supplied with the computer. Most common operating systems are Windows, Linux, Unix, MacOS, iOS.

37
New cards

Memory Management

The process of organising the flexible use of the computer's main memory.

38
New cards

Paging

The organisation of memory into fixed-size units, called pages. The immediate-access store is organised as a number of physical pages. The logical pages used by the SPU can be assigned by the memory management unit to any page in physical memory.

39
New cards

Segmentation

The splitting of a large program into a number of smaller programs or segments. Each segment is a complete program that is executed separately. The function of the large program is achieved by running segments consecutively. Segmentation allows a large program to be executed on a computer with insufficient memory to store the whole program by carving up memory logically rather than physically.

40
New cards

Virtual Memory

Used when sufficient immediate-access store is not available. Part of a disk drive is allocated to be used as if it were main memory. This is very slow, and the software will attempt to use the immediate access store if possible.

41
New cards

Interrupt

A signal generated by a source such as an input or output device or a systems software routine that causes a break in the execution of the current routine. Control passes to another routine in such a way that the original routine can be resumed after the interrupt.

42
New cards

ISR

Interrupt Service Routine. A software routine that hardware invokes in response to an interrupt. ISRs examine an interrupt and determine how to handle it.

43
New cards

Scheduling

The method by which central processor time is allocated in a multi-access system.

44
New cards

Round Robin

A scheduling algorithm that deals with each user or task to be processed in turn for a fixed number of cycles.

45
New cards

FCFS

A scheduling algorithm that deals with each user or task in the order in which they arrive, this can be thought of as a queue.

46
New cards

MLFQ

A complex scheduling algorithm that deals with tasks based on a set of priorities and rules across different league tables, jobs in a certain table get promoted up or down their table based on these rules and can end up in different tables if they are relegated.

47
New cards

SJF

A scheduling algorithm that deals with each user or task based on getting the smaller ones out of the way.

48
New cards

SRT

A scheduling algorithm that deals with each user or task based on calculating an estimated time remaining to complete.

49
New cards

Distributed OS

An operating system where the software is spread over a collection of independent, networked, communicating, and physically separate nodes.

50
New cards

Embedded OS

A highly specialised, often quite limited and cut down operating system designed to fit inside a certain type of machine. For example, computers in cards, traffic lights, cash machines, POS, elevators, drinks machines, etc. In contrast to a general-purpose OS it is typically quite limited, often running a single application crucial to the device's operation.

51
New cards

Multi-tasking OS

Any OS designed to allow multiple users to log in and connect to it from different locations / machines at the same time. Specially designed for the sharing of resources such as files, programs or hardware (printers, scanners etc.)

52
New cards

Multi-user OS

Any OS designed to allow multiple users to log in and connect to it from different locations / machines at the same time. Specially designed for the sharing of resources such as files, programs or hardware (printers, scanners etc.)

53
New cards

Real Time OS

An operating system intended to serve real-time applications , processes data as it comes in typically without buffering delays. Used in time-critical systems such as air traffic control.

54
New cards

BIOS

Part of the operating system that handles the input and output of the computer, enabling the operating system to use the particular features of the hardware being used.

55
New cards

Device Drivers

A computer program that operates or controls a particular type of device that is attached to a computer.

56
New cards

Virtual Machine

An emulator of a particular computer system, operating based on the computer architecture and functions of a real or hypothetical computer, which may involve specialised hardware, software, or a combination of both.

57
New cards

Intermediate Code

Half-way type of code which is standard across machine types. Runs on a virtual machine.

58
New cards

Application

Any program, routine or procedures (together with their associated documentation) that can be run on a computer system.

59
New cards

Utilities

A systems program that performs some specific task in the operation of the computer, for example file backup, virus checking or a compression program.

60
New cards

Open Source

Software for which the original source code is made freely available and may be redistributed and modified, often able to be opened on many different types of applications.

61
New cards

Closed Source

Often called Proprietary, is a type of computer program for which the software code is not shared with the public for anyone to look at or make changes to. Closed file types are often only able to be opened if you own a version of the software they were originally made in.

62
New cards

Source Code

Original code typed in by the programmer in the native language, appearing before it is compiled or interrupted.

63
New cards

Translator

A program that translates a program written in a high-level language into machine code.

64
New cards

Interpreter

Translates and executes a program one statement at a time.

65
New cards

Compiler

A program that translates a high-level language program source code into a computer’s machine code, all at once, producing a list of errors.

66
New cards

Assembler

A program that translates (assembles) a program written in assembly language into machine code.

67
New cards

Compilation

The translation process that produces an equivalent program in a low-level language. Compilation involves analysing the language structure of the source program, determining if it is valid and producing suitable machine code.

68
New cards

Lexical Analysis

The stage in compilation of a program that puts each statement into the form best suited to the syntax analyser, replacing standard components of each statement with tokens and programmer-defined names are entered into a symbol table. The lexical analyser also removes unnecessary characters such as spaces, tabs and coder comments.

69
New cards

Syntax Analysis

The stage in compilation where language statements are checked against the rules of the language, errors being reported if a statement is not valid.

70
New cards

Code Generation

The stage in compilation that produces a machine-code program that is equivalent to the source program.

71
New cards

Optimisation

The stage of compilation that ensures that the executable program is optimised at least as much as the compiler can predict. e.g. removing reference to unused variables or routines.

72
New cards

Linker

Software tool that allows already compiled object code files or modules to be combined with the compiled program.

73
New cards

Loaders

A program that copies an object program held on backing store into main store ready for execution.

74
New cards

Libraries

A collection of pre-compiled routines which can be incorporated into a program.

75
New cards

SDLC

The various stages in designing and implementing a new computer system. These stages – typically analysis, design, implementation, testing and installation – are part of the systems life cycle performed by the main design team. Not be too confused with the Software Development Cycle which is part of the implementation stage of the systems life cycle.”

76
New cards

Waterfall Model

An earlier abstract description of the system lifecycle where each identified stage of development flows from the previous one and down to the next one. Feedback from each to the previous takes place independently of the forward flow.

77
New cards

Agile Methodologies

Describes the responsive development of a system made of small software modules (often web-based applications) by a group of collaborators who work concurrently and closely under a leader who ensures engineering best practice and delivery of the customer requirements

78
New cards

Extreme Programming

A software development methodology which is intended to improve software quality and responsiveness to changing customer requirements. It is a form of agile development, and as such advocated frequent releases in short development cycles, which is intended to improve productivity and introduce checkpoints at which new customer requirements can be adopted. Other common elements of XP include: programming in pairs or doing extensive code review, flat management structures and avoiding programming of features until they are actually needed.

79
New cards

Spiral Model

An abstract description of the systems life cycle where there are four defined quadrants– planning, risk analysis, use of design methods, client and management evaluation. Once one stage of development has gone full circle, the next please takes place, and so on until completion

80
New cards

RAD

A design strategy that includes online development and repeated prototyping and evaluation. It is particularly suited to interactive systems.

81
New cards

Programming Paradigm

The word 'paradigm' means to describe an example or pattern. In a Computing context, this means to describe a computational way of doing things. So, a Programming Paradigm is a style or way of programming. E.g. Low-Level languages, High-Level languages, Declarative languages are all examples of different programming paradigms

82
New cards

Procedural Language

Any high level language in which program statements can be grouped in self-contained blocks called procedures and functions. These procedures have their own variables, not accessible outside the procedure.

83
New cards

Assembly Language

A language which is related very closely to the computer's own machine code.

84
New cards

Machine Code

Set of all possible instructions made available by the hardware design of a particular processor. Closest to pure binary.

85
New cards

Low Level Language

A language which is close to machine code. Related closely to the design of the machine. A one-to-one language.

86
New cards

High Level Language

A language designed to help a programmer express a computer program in a way that reflects the problem that is being solved, rather than the details of how the computer will produce the solution. One-to -many language.

87
New cards

LMC

An instructional model of a computer, created by Dr. Stuart Madnick in 1965. The LMC is generally used to teach students, because it models a simple von Neumann architecture computer, which has all the features of a modern computer. It can be programmed in machine code or assembly language.

88
New cards

Immediate Addressing

This is sometimes called an 'immediate operand'. It is when the value in the address part of the instruction is the actual value to be used. It means that the memory does not need to be searched for the value to be used. In effect, the instruction ADD 10 actually does mean 'add 10', not 'add whatever is in location 10.

89
New cards

Direct Addressing

Uses the data in the address field without alteration. This is the simplest method of addressing and also the most common. In effect, the instruction ADD 10 means 'go and find whatever is in location 10 and add it to the accumulator.

90
New cards

Indirect Addressing

Uses the address field to hold the address of a location that contains the required address. So, ADD 10 means 'go to 10 in the memory'. In there you will find another address, go to this other address and read the data that you want to use. This is very useful because it means that the larger addresses in memory can be used to store data.

91
New cards

Indexed Addressing

Modifies the address (either a direct or an indirect address) in the address field by the addition of a number held in a special

92
New cards

OO

Object Orientation. Looking at systems by classifying them into real world objects.

93
New cards

OOP

Object Oriented Programming. A method of programming which classifies real world objects into classes and encapsulates those objects attributes and behaviours.

94
New cards

Class

A type definition of an object.

95
New cards

Object

An instance of a class.

96
New cards

Base Class

Base class contains attributes and methods. It is the highest class and does not inherit from any other class.

97
New cards

Superclass

A class that has been extended by another class. It allows the extending class to inherit its attributes and methods.

98
New cards

Subclass

A class that extends another class. The subclass inherits the methods and attributes of the class it extends.

99
New cards

Derived Class

A derived class is any class that inherits attributes and methods from any other derived class or base class.

100
New cards

Instantiation

The process of creating an actual named instance of class. The instantiated named copy of the class in an object of that class.