AP Computer Science Principles Vocabulary (AP CSP)

The list of terms used in the AP Computer Science Principles course (AP CSP) from the ‘big ideas’ is presented here in alphabetical order.
AP CSP Big Ideas
There are five big areas:
- Big idea 1: Creative development
- Big idea 2: Data
- Big idea 3: Algorithms and programming
- Big idea 4: Computer systems and networks
- Big idea 5: Impact of computing
AP CSP Vocabulary Terms
analog data: Values that change smoothly, rather than in discrete intervals, over time. For example, the pitch and volume of a live concert.
API: Application Programming Interface, a library of procedures and a description of how to call each procedure.
bandwidth: The maximum amount of data that can be sent in a fixed period of time over a network connection, typically measured in bits per second.
binary search: An algorithm that searches a sorted list for a value by repeatedly splitting the list in half.
bit: A binary digit, either 0 or 1.
byte: A sequence of 8 bits.
citizen science: Crowdsourcing for science! The participation of volunteers from the public in a scientific research project (like collecting rain samples or counting butterflies).
computing device: A physical device that can run a program, such as a computer, smart phone, or smart sensor.
computer network: A group of interconnected computing devices capable of sending or receiving data.
cookie: A small amount of text that tracks information about a user visiting a website.
Creative Commons: An alternative to copyright that allows people to declare how they want their artistic creations to be shared, remixed, used in noncommercial contexts, and how the policy should propagate with remixed versions.
crowdsourcing: A model in which many online users combine efforts to help fund projects, generate ideas, or create goods or services (like Wikipedia).
digital divide: The idea that some communities or populations have less access to computing than others, typically due to limitations of Internet speed or computer hardware access.
distributed computing: A computational model which uses multiple devices to run different parts of a program.
encryption: The process of scrambling data to prevent unauthorized access.
heuristic: A technique that helps an algorithm find a good solution in a hard problem (like always walking toward the north star when you are stuck in a forest).
HTTP (Hypertext Transfer Protocol): The protocol that powers the Web, used to request webpages from servers and submit form data to servers.
iteration: The repetition of steps in an algorithm or program for a certain amount of times or until a certain condition is met.
IP (Internet Protocol): The protocol that determines how to address nodes on the network (with IP addresses) and how to route data from one node to a destination node (using routers).
library: A collection of procedures that are useful in creating programs.
linear search : An algorithm that iterates through each item in a list until it finds the target value.
logic error: A mistake in an algorithm or program that causes it to behave unexpectedly or return the incorrect value.
lossless: Compressing data in a way that preserves all data away and allows full recovery of the original.
lossy: Compressing data in a way that discards some data and makes it impossible to recover the original.
metadata: Data about data, like descriptive information about a file or a row in a database.
modularity: The separation of a program into independent modules that are each responsible for one aspect of the program’s functionality.
multifactor authentication (MFA): A method of user authentication which requires the user to present multiple pieces of evidence in multiple categories (such as knowledge and possession).
open access: A policy that allows people to have access to documents (like research papers) for reading or data (like government datasets) for analysis.
overflow error: Error that results when the number of bits is not enough to
represent the number (like a car’s odometer “rolling over”).
parallel computing: A computational model which splits a program into multiple tasks, some of which can be executed simultaneously.
phishing: An attack where a user is tricked into revealing private information, often via a deceptive email.
PII (Personally identifiable information): Information about an individual that can be used to uniquely identify them (directly or indirectly).
protocol: An agreed upon set of rules that specify the behavior of a system.
public key encryption: An asymmetric encryption technique that uses different keys for encrypting versus decrypting data.
reasonable time: A run time for an algorithm that doesn’t increase faster than a polynomial function of the input size (like 10n10n10n10, n, n2n^2n2n, squared, etc). An unreasonable run time would increase superpolynomially (like 2n2^n2n2, start superscript, n, end superscript or n!n!n!n, !).
rogue access point: A wireless access point that provides an attacker with unauthorized access to the traffic going over the network.
roundoff: Error that results when the number of bits is not enough to represent the
number with full precision (like using 3 digits to represent π\piπpi as 3.14).
run-time error: A mistake in a program that happens only when the program is actually run, such as a program attempting to access memory that does not exist.
scalability: The ability of a system to adjust in scale to meet new demands.
selection: A Boolean condition to determine which of two paths are taken in an algorithm or program.
sequencing: The sequential execution of steps in an algorithm or code in a program (like steps in a recipe).
speedup: The improvement in the amount of time a parallelized program takes to solve a problem, computed as the amount of time to complete the task sequentially divided by the amount of time to complete the task when run in parallel.
symmetric encryption: A technique for encrypting data where the same key is used to both encrypt and decrypt data.
syntax error: A mistake in typed code that violates the rules of the programming language. Typically, code with syntax errors will not run.
TCP (Transmission Control Protocol): A data transport protocol that includes mechanisms for reliably transmitting packets to a destination.
traversal: The iteration over the items in a list. A full traversal iterates over every item, while a partial traversal iterates over a subset of the items.
UDP (User Datagram Protocol): A lightweight data transport protocol with minimal error checking.
undecidable: A problem that is so logically difficult, we can’t ever create an algorithm that would be able to answer “yes or “no” for all inputs (like the halting problem).
virus: A type of computer malware that can make copies of itself.
World Wide Web: A system of linked pages, media, and files, browsable over HTTP.
FAQ
What is modularity in AP CSP?
Modularity in AP CSP refers to the design principle that breaks a program into independent modules or parts. It helps manage complexity and improves readability.
What is redundancy in AP CSP?
Redundancy means including extra components or systems that aren’t strictly necessary but provide backup, increasing reliability and fault tolerance in computing. For example, if one router fails in a network, another router can continue to pass the traffic (data packets), and the network will not suffer problems.
What does ‘index’ mean in AP CSP?
In AP CSP, an index refers to the position of an item in a list, string, or array—typically starting at 1 in pseudo code but 0 in many computer languages. It is used to access or modify data efficiently. So, if the variable ‘myname’ has the value “Codie”, then in pseudo code, the index 2 would access the letter ‘o’ (myname[2]).
How can I review vocabulary for the AP CSP exam?
The best way to review AP CSP vocabulary is by using a comprehensive glossary organized by key concepts, which is why we are providing a vocabulary review and a study guide to explain key concepts.
Where can I find an AP CSP vocabulary PDF?
You can download a full AP CSP vocabulary PDF on this page. It includes clear definitions of terms like abstraction, compression, and modularity for easy study.
What does abstraction mean in AP CSP?
Abstraction means simplifying complex systems by hiding unnecessary details. It helps manage complexity and focus on relevant aspects of a problem. An example would be a list that contains many values, but you don’t need to see all these to process the list – you just see the list name. If a procedure called “double_number” contains code, do you need to see this code to make 10 double to 20? No, the code is hidden – this is an abstraction.
AP computer science principles concepts to know
Data Compression & Algorithms
Data compression is a method of reducing the size of data to save space or make it faster to send. A data compression algorithm finds a way to represent the same data using fewer bits. There are two types: lossless, which keeps all the original data, and lossy, which removes some parts.
Central Processing Unit (CPU)
The CPU is known as the “brains of the computer.” It is the part that carries out instructions and does all the calculations and decision-making. It contains the circuitry necessary to interpret and execute programs.
Boolean Algebra & Number Systems
Boolean algebra uses only two values: true or false (or 1 and 0), which are essential in computer programming. Number systems like binary (base-2) and hexadecimal (base-16) are used to represent data in ways computers can understand.
Malicious Software (Malware)
Malware is short for malicious software—programs designed to harm computers or steal data. Examples include viruses, spyware, and ransomware. Learning about malware helps students understand cybersecurity threats.
Packets, Streams & Addressing
When you send data over the internet, it is broken into packets, which are small chunks of information. These are sent as a stream of packets with addressing information included, so each packet knows where to go. This is key to how the internet works reliably.
Real Numbers & Numeric Data
Real numbers are numbers with decimals (like 3.14 or -2.5), and they are part of numeric data types. Computers store, process, and represent these numbers to do everything from measuring distance to calculating averages.