ASSEB HS Computer Science and Application study materials
ASSEB HS Computer Science and Application study resources

ASSEB HS Computer Science and Application key terms

ASSEB HS Computer Science and Application · Get comfortable with the vocabulary.

Von Neumann architecture

A computer design in which a single memory holds both program instructions and data, and a processor fetches, decodes and executes instructions one at a time over a shared bus.

Related: Fetch-decode-execute cycle, Cache memory, Arithmetic Logic Unit
Fetch-decode-execute cycle

The repeating sequence in which the processor loads the next instruction from memory, works out what operation it specifies, and then carries it out, storing any result before starting again.

Related: Von Neumann architecture, Program counter, Instruction register
Program counter

A processor register that holds the memory address of the next instruction to be fetched, so the machine knows where execution continues after the current instruction finishes.

Related: Fetch-decode-execute cycle, Instruction register
Instruction register

A processor register that temporarily stores the instruction currently being decoded and executed, separating it from the address held in the program counter.

Related: Program counter, Fetch-decode-execute cycle
Arithmetic Logic Unit

The part of the processor that performs integer arithmetic such as addition and subtraction, plus logical operations such as AND, OR, NOT and comparisons of values.

Related: Control unit, Register, Boolean logic
Control unit

The processor component that decodes each instruction and generates the timing and control signals needed to coordinate the ALU, registers, memory and input/output devices.

Related: Arithmetic Logic Unit, Fetch-decode-execute cycle
Register

A very small, very fast storage location inside the processor, used to hold operands, results or addresses during execution of the current instruction.

Related: Arithmetic Logic Unit, Cache memory
Cache memory

A small, fast memory placed between the processor and main memory that keeps recently or frequently used data, reducing the average time needed to access it.

Related: Register, Locality of reference, Von Neumann architecture
Locality of reference

The tendency of running programs to reuse the same memory addresses or nearby addresses repeatedly, which is why caches and virtual memory can improve performance.

Related: Cache memory
RISC and CISC

Two contrasting instruction-set philosophies: RISC uses a small set of simple, fixed-length instructions, while CISC offers many complex instructions, often of variable length, that may take several cycles.

Related: Instruction register, Pipelining
Pipelining

A technique that overlaps the stages of several instructions so that while one is being decoded another is being fetched, increasing overall throughput without shortening any single instruction.

Related: Fetch-decode-execute cycle, RISC and CISC
Two's complement

A binary scheme for representing signed integers in which the most significant bit carries a negative weight, so negation is performed by inverting all bits and adding one.

Related: Sign-magnitude representation, Overflow, Binary number system
Sign-magnitude representation

A signed-number encoding in which the leftmost bit records the sign and the remaining bits hold the magnitude, giving two distinct codes for zero and separate add/subtract circuits.

Related: Two's complement, Binary number system
Binary number system

A base-2 positional notation that uses only the digits 0 and 1, where each place value is a successive power of two, matching the two-state nature of digital circuits.

Related: Hexadecimal, Two's complement, Bit and byte
Hexadecimal

A base-16 notation using digits 0-9 and letters A-F, widely used as a compact shorthand for binary because each hex digit maps exactly to four bits.

Related: Binary number system, Bit and byte
Bit and byte

A bit is one binary digit, the smallest unit of digital information; a byte is a group of eight bits, commonly the unit used to address memory and encode a character.

Related: Hexadecimal, Character encoding
Overflow

The condition in which a computed result is too large or too small to be stored in the fixed number of bits available, so the stored value wraps and becomes incorrect.

Related: Two's complement, Floating-point representation
Floating-point representation

A way of storing real numbers as a sign, a mantissa and an exponent, trading precision for range and making some decimal values impossible to represent exactly.

Related: Overflow, Round-off error
Character encoding

A rule that maps characters to numeric codes so text can be stored and transmitted, examples being ASCII for English letters and Unicode for the writing systems of the world.

Related: Bit and byte, Compression
Boolean logic

An algebra of true and false values with operators such as AND, OR and NOT, used to describe and simplify the behaviour of digital circuits and program conditions.

Related: Logic gate, Truth table, Arithmetic Logic Unit
Logic gate

A physical circuit that computes a basic Boolean function on one or more binary inputs and produces a single binary output, the building block of all digital hardware.

Related: Boolean logic, Truth table
Truth table

A table listing every possible combination of input values for a logical expression or circuit, together with the resulting output for each combination.

Related: Boolean logic, Logic gate
Variable and data type

A variable is a named storage location whose value may change during execution; its data type fixes which values it may hold and which operations are permitted on it.

Related: Strong and weak typing, Scope
Scope

The region of a program in which a declared name can be used, determined by where it is declared and by the language's rules on blocks and functions.

Related: Variable and data type, Parameter passing
Parameter passing

The mechanism by which arguments are supplied to a subprogram, either by value, where a copy is used, or by reference, where the original variable can be modified.

Related: Scope, Recursion
Recursion

A technique in which a subprogram calls itself on a smaller version of the same problem, requiring a base case that stops the chain of calls.

Related: Parameter passing, Call stack
Call stack

A last-in-first-out structure maintained at run time that records active subprogram calls, their local variables and return addresses, and which grows with each nested or recursive call.

Related: Recursion, Stack
Strong and weak typing

A distinction in how strictly a language enforces type compatibility: strongly typed languages reject most implicit conversions between unrelated types, while weakly typed ones allow them and may fail at run time.

Related: Variable and data type, Compilation and interpretation
Compilation and interpretation

Two ways of running source code: a compiler translates the whole program into machine code before execution, while an interpreter executes statements directly, one at a time.

Related: Strong and weak typing, Debugging
Time complexity

A measure of how the running time of an algorithm grows with input size, usually expressed with big-O notation that keeps only the dominant term.

Related: Space complexity, Linear search and binary search, Sorting algorithm
Space complexity

A measure of the extra memory an algorithm needs as a function of input size, excluding the storage occupied by the input itself.

Related: Time complexity
Linear search and binary search

Linear search checks items one by one in any list; binary search repeatedly halves a sorted list, finding an item far faster but only when the data is ordered.

Related: Time complexity, Sorting algorithm
Sorting algorithm

A procedure that arranges data in a defined order, with common examples including bubble sort, insertion sort, merge sort and quicksort, which differ in speed and memory use.

Related: Time complexity, Linear search and binary search
Array and linked list

An array stores elements in contiguous memory with constant-time index access; a linked list stores elements in nodes joined by pointers, giving cheap insertion and removal but sequential access only.

Related: Stack, Queue, Hash table
Stack

A collection in which items are added and removed at the same end, following last-in-first-out order, used for call management, undo histories and expression evaluation.

Related: Queue, Call stack
Queue

A collection in which items are added at one end and removed from the other, following first-in-first-out order, used for scheduling, buffering and breadth-first traversal.

Related: Stack, Tree and binary search tree
Tree and binary search tree

A tree is a hierarchical structure of nodes linked parent to child; in a binary search tree each node has at most two children, with smaller keys left and larger keys right.

Related: Queue, Hash table
Hash table

A structure that uses a hash function to map keys to bucket positions, giving average constant-time lookup, though collisions must be handled by chaining or open addressing.

Related: Array and linked list, Tree and binary search tree