key terms Flashcards

to learn key terms

You may prefer our related Brainscape-certified flashcards:
1
Q

computational thinking

A

a problem-solving approach that includes abstraction, decomposition, and algorithm development

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

decomposition

A

breaking down a problem into smaller parts that are easier to solve.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

object oriented programming

A

a program made up of objects, each object contains methods (functions) and attributes (variables)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

instruction set

A

the collection of opcode a processor is able to decode and execute

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

pipelining

A

where the output of one process is the input to another

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

data mining

A

can show patterns and relationships that aren’t obvious but can be find through pattern matching large quantities of data

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

caching

A

data is stored in the cache in case uts needed again soon, so it doesn’t need to be refetched from the RAM

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

prefetching

A

when an instruction is requested from memory by the CPU before its required to speed up instruction throughput

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

parallel processors

A

allows different parts of a program to be executed simultaneously, or multiple processes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

heuristic

A

a problem-solving method that uses shortcuts to produce good-enough solutions given a limited time frame or deadline, using rule of thumbs

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

BRA

A

branch always, jump instruction that is always executed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

BRP

A

branch if the value in the accumulator is positive

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

sequence

A

execution of statements or functions one after another

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

selection

A

where flow of a program is interrupted and control is passed to another point

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

recursion

A

where a procedure or function calls itself, called a divide and conquer approach

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

global variable

A

a variable that is accessible from anywhere in the program. useful when a variable needs updating from multiple subprograms.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

local variable

A

a variable declared and accessible from inside a subprogram, makes them less likely to be accidentally altered by other modules

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

function

A

an algorithm that takes an input and produces an output

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

procedures

A

subprograms that do not return a value

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

by reference (by ref)

A

passing a value by reference calls on the memory address the variable is stored in, it works directly with the original data and can therefore change it permanently.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

by value (by val)

A

used to create a copy of a variable for temporary changes to the variable that will be lost when the function is no longer in use

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

source code

A

code written in a programming language that can be read and edited by other programmers

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

build

A

all actions taken to produce a finished working program: writing, compiling, linking, testing, packaging and documentation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

IDE

A

integrated development environment, a place to write source code and test it

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

immutable

A

unchangeable

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

linear search

A

searching each location one after another until the searched for value is found

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

binary search

A

dividing the list into two each time until we find the item being searched for (only works on sorted lists)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

bubble sort

A

goes linearly through a list, swapping items in the wrong order until no swaps take place in a pass.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

insertion sort

A

divides a list in two sorted and unsorted, and goes through the unsorted list, inserting elements from the unsorted list into the sorted where relevant

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

merge sort

A

Merge sortrepeatedly breaks down a list into several sublists until each sublist consists of a single element andmergingthose sublists in a manner that results into asortedlist.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

quick sort

A

It works by selecting a ‘pivot’ element from the array and partitioning the other elements into two sub-arrays, according to whether they are less than or greater than the pivot. The sub-arrays are thensortedrecursively.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

Big o notation

A

used to show the time or space needed to execute a function on increasingly sized data

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

complexity

A

how well an algorithm scales to larger data sets

34
Q

constant complexity o(1)

A

takes the same time to run regardless of the data set

35
Q

linear complexity o(n)

A

complexity increases at the same rate as the input size increases

36
Q

polynomial complextiy o(nk) (where k>=0)

A

complextity increases by a square number, creating a half parabola

37
Q

exponential complexity o(kn) (where k>1)

A

do not scale well at all

38
Q

logarithmic compexity o(log n)

A

the rate if complexity increase, decreases as the data set increases. scales extremely well

39
Q

procedural programming

A

a program where instructions are given in a sequence

40
Q

logic programming

A

a problem is stated as a set if facts which are used to find a given goal.

41
Q

functional programming

A

a description of the solution is built up through a collection of functions

42
Q

declarative programming

A

tell the computer the qualities the solution should have. e.g. SQL

43
Q

opcode

A

instructions

44
Q

operand

A

data

45
Q

direct addressing

A

link directly to a memory location

46
Q

immediate addressing

A

where the operand is the value we need, not a link to the values memory location

47
Q

inheritance

A

allows us to create a class with all the methods and attributes of another parent class, as well as building on it to have attributes and methods of its own

48
Q

polymorphism

A

when methods behave differently according to the context they are used in

49
Q

encapsulation

A

the pattern of making attributes in a class private but allowing them to be changed and accessed through public methods

50
Q

private

A

only accessible from within that class

51
Q

applications software

A

allows a user to perform a task or produce something

52
Q

word processors

A

used for writing letters, reports and other documents

53
Q

spreadsheet packages

A

allow users to model complex situations and are often used for financial calculation

54
Q

utility software

A

relatively small program that has one purpose, usually concerned with system maintenance

55
Q

anti virus programs

A

detects and removes viruses

56
Q

disk defragmentation

A

groups all parts of a file together so they can be read faster, instead of the parts of a file being scattered around memory

57
Q

compression programs

A

reduces the amount of space data takes up in storage

58
Q

file managers

A

allow files and directories to be moved, copied, deleted and renamed

59
Q

backup utilities

A

these allow backups to be automatically made of specified data

60
Q

operating system

A

software that manages the computer: manages hardware, installing and running, security and interface

61
Q

multi tasking operating system

A

carrying out progressing for more than one thing by switching between tasks giving the illusion theyre working simultaneously

62
Q

multi user operating system

A

allows more than one person to share a computers resources at the same time

63
Q

distributed operating system

A

can control and coordinate many computers presenting them to the end user as though they were a single system

64
Q

embedded operating system

A

computers built to perform one specific job, often more efficient and low powered

65
Q

real time operating system

A

designed to carry out actions with a guaranteed amount of time even when left running for long periods

66
Q

kernel

A

helps manage the system resources, including memory management and scheduling

67
Q

memory management

A

allows programs to be stored in memory safely and effiencently, prevents programs changing each others data, efficient

68
Q

virtual memory

A

secondary storage that appears as if its in the RAM, when its needed it will be moved back into the RAM, used when the RAM is full

69
Q

scheduling

A

a program that manages the amount of time different processes have in the CPU

70
Q

round Robin scheduling

A

each process is given a fixed amount of time

71
Q

First come first served scheduling

A

the first process to arrive is dealt with firsr

72
Q

shortest job first

A

performs the shortest job in the queue first

73
Q

shortest remaining time

A

picks the process that will take the least amount of time to perform

74
Q

multi level feedback queues

A

uses multiple queues with a different priority level, and moves jobs between these queues depending on the jobs behaviour

75
Q

interrupts

A

when a device sends a signal to the processor to get attention

76
Q

polling

A

when the CPU keeps checking each peripheral to see if it needs attention

77
Q

interrupt service routines (ISR)

A

if an interrupt has a higher priority level than the current one it will move to servicing the new interrupt instead

78
Q

device drivers

A

tells the operating system how to communicate with a device

79
Q

virtual machines

A

a program that has the same functionality as a physical computer that runs on a computer

80
Q

BIOS

A

basic input output system- gets the computer running, checks functionality installed memory and starts the processor

81
Q

open source software

A

source code is available and can be modified, free

82
Q

closed source software

A

commercial software that is paid for and the source code is hidden