# IB/Group 4/Computer Science/Definitions
### A

► Absolute path A path at begins at the root and includes all successive subdirectories.
► Abstract Data Type (ADT) A container whose properties (data and operations) are specified independently of any particular implementation. ► Abstract step An algorithmic step for which some details remain unspecified.
► Abstraction A model of a complex system that includes only the details essential to the viewer.
► Access Control Policy A set of rules established by an organization that specify which types of network communication are permitted and denied.
► Access time Thetime it takes for a block to start being read; the sum of seek time and latency.
► Adder An electronic circuit that performs an addition operation on binary values.
► Addressability The number of bits stored in each addressable location in memory.
► Address binding The mapping from a logical address to a physical address.
► Address vertices Two vertices that are connected by an edge.
► Aggregate opeartion An operation on a data structure as a whole, as opposed to an operation on an individual component of the data structure.
► Algorithm Unambiguous instructions for solving a problem or subproblem in a finite amount of time using a finite amount of data.
► Analog data A continuous representation of data.
► Antivirus software Software designed to detect, remove, and/or prevent malicious software.
► Application software Programs that help one solve real-world problems.
► Arguments The identifiers listed in parentheses on the subprogram call; sometimes called actual parameters.
► Arithmetic/Logic Unit (ALU) The computer component that performs arithmetic operations (addition, subtraction, multiplication, division) and logical operations (a comparison of two values).
► Artificial Intelligence (AI) The study of computer systems that model and apply the intelligence of the human mind.
► Artificial Neural Networks (ANN) A computer representation of knowledge that attempts to mimic neural networks of the human body.
► Assembler A program that translates an assembly-language program into machine code.
► Assembler directives Instructions to the translating program
► Assembler language A low-level programming language in which mnemonics represent each of the machine-language instructions for a particular computer.
► Asynchronous Not occurring at the same moment in time as some specific operation of the computer; in other words, not synchronized with the program's actions.
► Attribute Part of a tag that provides additional information about the element.
► Authenteication credenteials Information users provide to identify themselves.
► Availability The degree to which authorized users can access information for legitimate purposes.

### B

► Back door A program feature that gives special and unauthorised access to a software system to anyone who knows it exits.
► Bandwidth The number of bits or bytes that can be transmitted from one place to another in a fixed amount of time.
► Base The foundational value of a number system, which dictates the number of digits and the value of digit positions.
► Base register A register that holds the beginning address of the current partition.
► Big-O Notation A notation that expresses computing time (complexity) as the term in a function that increases most raidly relative to the size of the problem.
► Binary digit A digit in the binary number system; a 0 or 1.
► Binary file A file that contains data in a specific format, requiring a special interpretation of its bits.
► Binary tree An abstract composite structure with a unique starting node called the root, in which each node is capable of having two child nodes and in which a unique path exits from the root to every other node.
► Biometrics Using physiological characteristics, such as fingerprints, to identify users and control access.
► Bit A binary digit.
► Block The information stored in a sector.
► Boolean algebra A mathematical notation for expressing two-valued logical functions.
► Boolean expression A sequence of identifiers, separated by compatibly operators, that evaluates to either true or false.
► Bounds register A register that holds the length of the current partition.
► Breadth-first approach Searching across levels of a tree prior to searching down specific paths.
► Broadband Network technologies that generally provide data transfer speeds greater than 128Kbps.
► Buffer overflow A defect in a computer program that could cause a system to crash and leave the user with heightened privileges.
► Bus topology A LAN configuration in which all nodes share a common line.
► Bus width The number of bits that can be transferred in parallel over the bus.
► Byte Eight binary digits.
► Bytecode A standard machine language in which Java source code is compiled.

### C

► Cable modem A device that allows computer network communication using the cable TV hookup in a home.
► Cache memory A type of small, high-speed memory used to hold frequently used data.
► Caesar cipher A substitution cipher that shifts characters a certain number of positions in the alphabet.
► Cancellation error A loss of accuracy during addition or subtraction of numbers of widely differing sizes, due to limits of precision.
► CAPTCHA A software mechanism used to verify that a web form is submitted by a human and not an automated program.
► Cardinality constraint The number of relationships that may exist at one time among entities in an ER diagram.
► Case sensitive Uppercase and lowercase letters are not considered the same; two identifiers with the same spelling but different capitalization are considered to be two distinct identifiers.
► Cell An element of a spreadsheet that can contain data or a formula.
► Character set A list of characters and the codes used to represent each one.
► Chatbot A program designed to carry on a conversation with a human user.
► Cipher An algorithm used to encrypt and decrypt text.
► Circuit A combination of interacting gates designed to accomplish a specific logical function.
► Circuit equivalence The same output for each corresponding input-value combination for two circuits.
► Circular reference A set of formulas that ultimately, and erroneously, rely on each other to compute their results.
► Class (implementation phase) A pattern for an object.
► Class NP problems Problems that can be solved in polynomial time which as many processors are desired.
► Class P The class made up of all polynomial-time algorithms.
► Class P problems Problems that can be solved with one processor in polynomial time.
► Client/server model A distributed approach in which a client makes requests of a server and the server responds.
► Cloud computing A service that provides storage space and other resources on the Internet.
► Code-coverage (clear-box) testing Testing a program or subprogram based on covering all the statements in the code.
► Combinational circuit A circuit whose output is solely determined by its input values.
► Comment Explanatory text for the human reader.
► Compiler A program that translates a high-level language program into machine code.
► Compression ratio The size of the compressed data divided by the size of the uncompressed data.
► Computational biology An interdisciplinary field that applies techniques of computer science, appl;ied mathematics, and statistics to problems in biology.
► Computer gaming A computer simulation of a virtual world.
► Computer hardware The physical elements of a computing system.
► Computer network A collection of computing devices connected so that they can communicate and share resources.
► Computer software The programs that provide instructions that a computer executes.
► Computer system Computer hardware, software, and data, which interact to solve a problem.
► Concrete step A step for which the details are fully specified.
► Confidentially Ensuring that data is protected from unauthorized access.
► Constant time An algorithm whose Big-O work expression is a constant.
► Containers Objects whose role is to hold and manipulate other objects.
► Context switch The exchange of register information that occurs when one process is removed from the CPU and another takes its place.
► Control abstraction The separation of the logical view of a control structure from its implementation.
► Contrl structure An instruction that determines the order in whichother insutrctions in a program are executed.
► Control unit The computer component that controls the actions of other components so as to execute instructions in sequence.
► Central Processing Unit (CPU) A combination of the arithmetic/logic unit and the control unit; the "brain" of a computer that interprets and executes instructions.
► CPU scheduling The act of determining which process in memory is given access to the CPU so that it may execute.
► Cryptanalysis The process of decrypting a message without knowing the cipher or key used to encrypt it.
► Cylinder The set of concentric tracks on all surfaces.

### I

► Input Unit is a device that accepts data to be stored in the memory.
► Instruction Register (IR) is the register that contains the instruction currently being executed.

### L

Lossy Compression a form of compression that permanently eliminates part of the information (particularly redundant information)

### M

► Memory Management is the act of keeping track of how and where programs are loaded in main memory.
► Motherboard is the main circuit board of a computer.
► Multiprogramming is the technique of keeping multiple programs in main memory at the same time, competing for the CPU.

### O

► Operating System is system software that manages computer resources and provides an interface for system interaction.
► Output Unit is a device that prints or otherwise displays data stored in memory or makes a permanent copy of information stored in memory or another device.

### P

► Pipelining is a technique that breaks an instruction into smaller steps that can be overlapped.
► Process is the dynamic representation of a program during execution.
► Process Management is the act of keeping tack of information for active processes.
► Program Counter (PC) is the register that contains the address of the next instruction to be executed.

### R

► Register is a small storage area in the CPU used to store intermediate values or special data.

### S

► System Software are programs that manage a computer system and interact with hardware.

### T

► Transistor An electronic component that acts as a semiconductor. Main building block of electronic devices.