AP CSP Vocabulary List

📚 AP CSP Vocabulary List

Master every term you need to know for the AP Computer Science Principles exam. Complete definitions organized by Big Idea with examples and exam tips.

📖 150+ Terms 🎯 5 Big Ideas 2025 Aligned 🔍 Searchable

Showing all 150+ terms

💡

Big Idea 1: Creative Development

Program development, collaboration, and identifying errors

Algorithm High Frequency
A step-by-step set of instructions designed to solve a problem or accomplish a task. Algorithms can be expressed in natural language, pseudocode, or programming languages.
Example: A recipe for baking cookies is an algorithm—it has ordered steps that produce a predictable result.
Program
A collection of program statements that performs a specific task when run by a computer. Also referred to as software. Programs are written in programming languages.
Code Segment
A portion of a program consisting of one or more lines of code that performs a specific function. Code segments can be reused in different parts of a program.
Computing Innovation
A new or improved computer-based product, service, or concept that includes a program as an integral part of its function. Can be physical (like a self-driving car), nonphysical software (like a social media platform), or a nonphysical concept (like e-commerce).
Collaboration
The process of working together with others to develop computing innovations. Collaboration benefits from diverse talents, perspectives, and skill sets, and can include pair programming, code reviews, and team development.
Pair Programming
A collaborative development practice where two programmers work together at the same workstation. One writes code (the "driver") while the other reviews it in real-time (the "navigator").
Program Documentation
A written description of the function of a code segment, event, procedure, or program and how it was developed. Documentation helps others understand and maintain code.
Comments
A form of program documentation written directly into the code to be read by people. Comments do not affect how a program runs and are ignored by the computer during execution.
Example: In Python: # This calculates the average
Syntax Error High Frequency
A mistake in a program where the rules of the programming language are not followed. Programs with syntax errors typically will not run at all. Examples include missing semicolons, unmatched parentheses, or misspelled keywords.
Logic Error High Frequency
A mistake in an algorithm or program that causes it to behave incorrectly or produce unexpected results. The program runs but doesn't do what was intended. Examples include using + instead of -, or an incorrect condition in an if statement.
Run-time Error
A mistake in a program that occurs during the execution of the program. The program starts running but crashes or stops unexpectedly. Examples include dividing by zero, accessing undefined variables, or trying to read a file that doesn't exist.
Overflow Error High Frequency
An error that occurs when a computer attempts to handle a number that is outside of the defined range of values that can be represented. Like a car's odometer "rolling over" from 999999 to 000000.
Testing
A phase of program development where developers verify that the program works correctly and meets requirements. Testing uses defined inputs to check if outputs match expected results.
Test Cases
Specific inputs and expected outputs used to verify that a program behaves correctly. Good test cases include typical values, boundary values (extremes), and edge cases.
Hand Tracing
A debugging technique where a programmer manually follows the execution of a program step-by-step, keeping track of variable values, to identify errors. Useful for finding logic errors.
Iterative Development Process
A development process that involves repeated cycles of refinement and revision based on feedback, testing, or reflection. Developers may need to revisit earlier phases multiple times.
Incremental Development Process
A development process that breaks a problem into smaller pieces and ensures each piece works before integrating it into the whole program. Build a little, test a little, repeat.
Event
An action associated with input data that is supplied to a program, such as a key press, mouse click, or sensor reading. Events can trigger specific responses in event-driven programming.
Event-Driven Programming
A programming approach where program statements are executed when triggered by events rather than through sequential flow of control. Common in graphical user interfaces and games.
📊

Big Idea 2: Data

Binary, data representation, compression, and extracting information

Binary High Frequency
A base-2 number system that uses only the digits 0 and 1 to represent data. All data in a computer—numbers, text, images, sound—is ultimately stored in binary.
Example: The decimal number 13 is 1101 in binary (8+4+0+1 = 13).
Bit
Shorthand for "binary digit." The smallest unit of data in computing, represented as either 0 or 1. All computer data is built from bits.
Byte
A unit of digital data consisting of 8 bits. Can represent values from 0 to 255 (2^8 = 256 possible values). File sizes are typically measured in bytes (KB, MB, GB).
Decimal
A base-10 number system that uses the digits 0-9 to represent data. This is the number system humans use in everyday life.
Hexadecimal
A base-16 number system that uses digits 0-9 and letters A-F. Often used to represent binary values more compactly (4 bits = 1 hex digit). Common in color codes (#FF0000 = red).
Abstraction High Frequency
The process of reducing complexity by focusing on main ideas and hiding irrelevant details. Allows focus on essential concepts without needing to understand every implementation detail.
Example: You can drive a car without knowing how the engine works—the interface (steering wheel, pedals) abstracts away the complexity.
Analog Data
Data that have values changing smoothly and continuously over time, such as pitch, volume, temperature, or position. Must be converted to digital for computer processing.
Digital Data
Data represented in discrete values, typically binary (0s and 1s). Computers can only process digital data, so analog signals must be converted through sampling.
Sampling
A technique for approximating analog data digitally by measuring values of an analog signal at regular intervals. Higher sampling rates capture more detail but require more storage.
Lossless Data Compression High Frequency
A compression algorithm that reduces the number of bits stored or transmitted while guaranteeing complete reconstruction of the original data. No information is lost.
Examples: PNG images, ZIP files, FLAC audio
Lossy Data Compression High Frequency
A compression algorithm that significantly reduces the number of bits stored or transmitted but only allows reconstruction of an approximation of the original data. Some information is permanently lost.
Examples: JPEG images, MP3 audio, streaming video
Metadata High Frequency
Data about data. Descriptive information about a file, such as the date of creation, file size, author, location where a photo was taken, or format information. Used for finding, organizing, and managing information.
Example: A photo's metadata might include: date taken, camera model, GPS coordinates, and resolution.
Data
Information represented in a form that can be processed by a program, such as numbers, text, images, or records. Data can be collected, stored, analyzed, and transformed.
Information
The collection of facts and patterns extracted from data that provides meaning and insight. Information is what we gain after processing and analyzing raw data.
Data Set
A collection of related data values organized for processing and analysis. Data sets can be analyzed to find patterns, trends, and correlations.
Correlation
A relationship between two variables in data where changes in one variable are associated with changes in another. Important: correlation does not imply causation!
Data Cleaning
The process of making data uniform and consistent without changing their meaning. This includes standardizing abbreviations, fixing spellings, and correcting formatting inconsistencies.
Data Filtering
The process of selecting specific elements from a data set based on defined criteria to find information and recognize patterns. Like using a search filter to show only items that match certain conditions.
ASCII
American Standard Code for Information Interchange. A 7-bit encoding standard that assigns numeric values to characters, including letters, numbers, and symbols. Contains 128 characters.
Unicode
A universal character encoding standard that can represent characters from virtually all written languages. Extends ASCII to include characters from languages worldwide, including emojis.
RGB
A color model used for digital displays where colors are created by combining Red, Green, and Blue light. Each color channel typically uses 8 bits (values 0-255).
Example: RGB(255, 0, 0) = pure red, RGB(0, 255, 0) = pure green
Pixel
Short for "picture element." The basic unit of color on a computer display. Digital images are made up of grids of pixels, each with its own color value.
Roundoff Error
An error that occurs when real numbers are approximated in computer storage due to limitations in the fixed number of bits used to represent them. Decimal values like 0.1 cannot be represented exactly in binary.
⚙️

Big Idea 3: Algorithms and Programming

Variables, control structures, procedures, lists, and efficiency

Variable High Frequency
A named container in a program that stores a value which can be changed through assignment. Variables have names, data types, and values.
Constant
A named value in a program that cannot be changed during execution. Used for values that should remain fixed, like PI = 3.14159.
Data Type
A classification that specifies what kind of value a variable can hold, such as numbers, Booleans, lists, or strings. Different data types support different operations.
Integer
A whole number (positive, negative, or zero) represented in programming languages using a fixed number of bits. Examples: -5, 0, 42.
String
An ordered sequence of characters. Strings can contain letters, numbers, symbols, and spaces. Usually enclosed in quotation marks in code.
Example: "Hello, World!" is a string with 13 characters.
Boolean
A data type that represents one of only two values: true or false. Named after mathematician George Boole. Used in conditions and logical operations.
List High Frequency
An ordered sequence of elements, where each element is assigned a unique index for reference. Lists can contain multiple values and can grow or shrink in size.
Example: myList ← ["apple", "banana", "cherry"] — index 1 is "apple"
Index
The position of an element within a list or string. In AP CSP pseudocode, indices start at 1 (not 0 like many programming languages).
Expression
A combination of values, variables, operators, or procedure calls that can be evaluated to produce a single value. Expressions are computed to get results.
Assignment
The process of storing a value in a variable. In AP CSP pseudocode, written as: variable ← value. The arrow points to where the value is stored.
Sequencing High Frequency
The application of each step of an algorithm in the order in which the code statements are given. Code runs line by line, top to bottom.
Selection High Frequency
A control structure that determines which parts of an algorithm are executed based on whether a condition is true or false. Implemented using IF/ELSE statements.
Iteration High Frequency
A repeating portion of an algorithm that executes a specified number of times or until a given condition is met. Implemented using loops (REPEAT, FOR EACH).
Procedure High Frequency
A named block of reusable code that performs a specific task and can be called multiple times throughout a program. Also called a function or method in other languages.
Parameter
A variable in a procedure definition that allows it to accept different input values. Parameters make procedures flexible and reusable with different data.
Argument
The actual value passed to a procedure when it is called, which corresponds to the procedure's parameter. Arguments provide the specific data for each call.
Example: In calculateArea(5, 3), the arguments are 5 and 3.
RETURN Statement
A statement that causes a procedure to immediately exit and return a value to the calling statement. The returned value can be used in expressions.
Procedural Abstraction
A programming technique that provides a name for a process and allows a procedure to be used by knowing what it does without needing to know how it works internally.
Modularity
The subdivision of a computer program into separate subprograms or modules to manage complexity. Each module handles one specific aspect of the program's functionality.
Software Library
A collection of pre-written procedures and code that can be reused in creating new programs. Libraries save time by providing tested, ready-to-use functionality.
API (Application Program Interface)
Specifications that define how procedures in a library behave and how they can be used in programs. APIs provide documentation for using external code.
Relational Operators
Symbols used to compare two values. Include: = (equal), ≠ (not equal), > (greater than), < (less than), ≥ (greater than or equal), ≤ (less than or equal).
Logical Operators
Operators used to combine or modify Boolean expressions: AND (both must be true), OR (at least one must be true), NOT (reverses the value).
MOD (Modulus)
An arithmetic operator that returns the remainder when one integer is divided by another. Useful for determining if numbers are even/odd or for cycling through values.
Example: 17 MOD 5 = 2 (17 ÷ 5 = 3 remainder 2)
Nested Conditionals
Conditional statements placed within other conditional statements, allowing for more complex decision-making logic based on multiple conditions.
Infinite Loop
A loop that never terminates because the ending condition will never evaluate to true. Usually a bug, but sometimes intentional in event-driven programs.
Linear Search (Sequential Search) High Frequency
A search algorithm that examines each element in a data set one by one in order until the desired value is found or the end is reached. Works on unsorted data.
Binary Search High Frequency
A search algorithm that starts at the middle of a sorted data set and eliminates half of the remaining data with each iteration until the desired value is found. Much faster than linear search for large sorted lists.
Key requirement: Data must be sorted first!
RANDOM(a, b)
A function that generates and returns a random integer from a to b, inclusive, where each result is equally likely to occur. Used in simulations and games.
Simulation
An abstraction of real-world objects or phenomena that uses varying sets of values to represent changing states for a specific purpose. Simulations can model complex systems without real-world risks or costs.
Algorithmic Efficiency
An estimation of the amount of computational resources (such as time or memory) used by an algorithm, typically expressed as a function of the input size.
Reasonable Time
Algorithms with polynomial efficiency (constant, linear, quadratic, etc.) that can be solved in a practical amount of time even as input grows.
Unreasonable Time
Algorithms with exponential or factorial efficiencies that require impractically long amounts of time to solve as input size increases.
Heuristic
An approach to a problem that produces a solution that is not guaranteed to be optimal but may be used when techniques that always find the perfect solution are impractical.
Decidable Problem
A decision problem (yes/no question) for which an algorithm can be written to produce a correct output for all possible inputs.
Undecidable Problem
A problem for which no algorithm can be constructed that is always capable of providing a correct yes-or-no answer for all instances. The Halting Problem is a famous example.
🌐

Big Idea 4: Computer Systems and Networks

The Internet, protocols, fault tolerance, and parallel computing

Internet High Frequency
A computer network consisting of interconnected networks that use standardized, open communication protocols to enable global communication and data exchange. Not the same as the World Wide Web.
World Wide Web
A system of linked pages, programs, and files that operates on top of the Internet using HTTP/HTTPS protocols. The web is accessed through browsers.
Computer Network
A group of interconnected computing devices capable of sending or receiving data. Networks can range from small (home network) to global (the Internet).
Computing Device
A physical artifact that can run a program, such as computers, tablets, servers, routers, smart phones, and smart sensors.
Packet High Frequency
A small chunk of data that is encapsulated with metadata (like destination address) and sent through the Internet from an origin to a destination. Large files are broken into many packets.
Routing
The process of finding a path from sender to receiver on a computer network. Routing is dynamic—packets can take different paths and arrive out of order.
Bandwidth
The maximum amount of data that can be sent in a fixed amount of time over a network connection, typically measured in bits per second (bps, Mbps, Gbps).
Protocol
An agreed-upon set of rules that specify the behavior of a system and enable devices to communicate with each other. Examples: TCP, IP, HTTP, DNS.
TCP (Transmission Control Protocol)
A protocol that ensures reliable, ordered delivery of data packets. TCP checks that all packets arrive and requests retransmission of any that are lost.
IP (Internet Protocol)
A protocol for routing packets between devices. Every device on the Internet has a unique IP address that identifies it.
IP Address
A unique identifier assigned to every device on the Internet. IPv4 uses 32-bit addresses (like 192.168.1.1), IPv6 uses 128-bit addresses for more unique addresses.
UDP (User Datagram Protocol)
A protocol for faster but less reliable data transmission compared to TCP. Used for streaming video/audio where speed matters more than perfect delivery.
HTTP/HTTPS
Hypertext Transfer Protocol—the protocol used by the World Wide Web to transmit web pages. HTTPS is the secure version that encrypts data in transit.
DNS (Domain Name System)
A system that translates human-readable domain names (like google.com) into IP addresses that computers use. Like a phone book for the Internet.
Router
A networking device that routes Internet traffic to the destination by forwarding packets between networks based on their destination addresses.
Scalability
The ability of a system to grow and handle increased demand while maintaining or improving performance. The Internet was designed to be scalable.
Fault Tolerance High Frequency
The ability of a system to continue operating and providing service even when some of its components fail. The Internet achieves this through redundant paths.
Redundancy (Networks)
Having multiple paths or duplicate components in a network to ensure continued operation if one path or component fails. Key to fault tolerance.
Sequential Computing
A computational model in which operations are performed in order, one at a time. Traditional single-processor computing.
Parallel Computing High Frequency
A computational model where a program is broken into multiple smaller operations, some of which are performed simultaneously across multiple processors. Can dramatically speed up certain tasks.
Distributed Computing
A computational model in which multiple devices in different locations are used to run a program. The work is distributed across a network.
Speedup
A measure of parallel computing performance calculated as: time to complete sequentially ÷ time to complete in parallel. A speedup of 4 means it runs 4 times faster.
🌍

Big Idea 5: Impact of Computing

Benefits, harms, digital divide, bias, and safe computing

Digital Divide High Frequency
The gap in access to computing devices and the Internet based on socioeconomic, geographic, or demographic characteristics. Affects who can participate in the digital economy.
Bias (Computing)
Prejudice or systematic error in computing innovations that can result from algorithms or data, often reflecting existing human prejudices. Can lead to unfair outcomes.
Example: A hiring algorithm trained on biased historical data may discriminate against certain groups.
Crowdsourcing
The practice of obtaining input, information, or solutions from a large number of people via the Internet. Leverages collective intelligence.
Examples: Wikipedia, Kickstarter, citizen science projects
Citizen Science
Scientific research conducted wholly or partly by non-professional scientists who contribute data and observations using their own computing devices.
Machine Learning
A computing technique that enables systems to learn and improve from data without being explicitly programmed for each specific task. Powers many AI applications.
Data Mining
The process of analyzing large datasets to discover patterns, trends, and insights that can be used for various purposes. Can reveal hidden relationships in data.
Intellectual Property
Material created on a computer or by an individual that is legally owned by the creator or an organization. Includes copyrights, patents, and trademarks.
Copyright
A form of intellectual property that protects original forms of expression, giving creators exclusive rights to reproduce, distribute, and display their work.
Creative Commons
A public copyright license that enables the free distribution of otherwise copyrighted work, allowing others to share, use, and build upon the creator's work under specified conditions.
Open Source
Programs that are made freely available and may be redistributed and modified by users. The source code is publicly accessible.
Examples: Linux, Firefox, WordPress, Python
Open Access
Online research output that is free of access restrictions and many usage restrictions, such as copyright or license limitations. Often applies to academic research.
Plagiarism
The use of material created by someone else without permission and presented as one's own. May have serious academic and legal consequences.
Personally Identifiable Information (PII) High Frequency
Information about an individual that identifies, links, relates, or describes them. Includes Social Security numbers, age, race, phone numbers, medical information, financial information, and biometric data.
Encryption High Frequency
The process of encoding data to prevent unauthorized access. Encrypted data can only be read by someone with the correct decryption key.
Symmetric Key Encryption
An encryption approach that uses the same key for both encrypting and decrypting data. Both sender and receiver must have the same secret key.
Public Key Encryption
An encryption approach that uses a public key for encryption and a different private key for decryption. Anyone can encrypt a message, but only the private key holder can decrypt it.
Authentication
Security methods used to verify the identity of a user and protect devices and information from unauthorized access. Confirms "you are who you claim to be."
Multifactor Authentication (MFA)
A method of computer access control requiring a user to present at least two separate pieces of evidence: something they know (password), something they have (phone), and/or something they are (fingerprint).
Phishing High Frequency
A technique that attempts to trick a user into providing personal information (like passwords or credit card numbers) by pretending to be a legitimate entity.
Malware
Software intended to damage a computing system or to take partial control over its operation. Includes viruses, worms, ransomware, and spyware.
Computer Virus
A malicious program that can copy itself and gain unauthorized access to a computer, often by attaching itself to legitimate programs or files.
Keylogging
The use of a program to record every keystroke made by a computer user in order to gain fraudulent access to passwords and confidential information.
Rogue Access Point
A wireless access point that gives unauthorized access to secure networks. Can be used by attackers to intercept network traffic.
Cookies
Data files stored on a user's device that track browsing behavior and preferences. Can be used for personalization but also raise privacy concerns.
Digital Certificate
A credential issued by a certificate authority that validates the ownership of encryption keys used in secure communications. Confirms a website is who it claims to be.
Certificate Authority
An organization that issues digital certificates to validate the ownership of encryption keys based on a trust model. Examples: Let's Encrypt, DigiCert.

📝 Exam Day Vocabulary Tips

  • Focus on "High Frequency" terms — These appear most often on the exam. Know them cold!
  • Understand the differences — Be able to distinguish between similar terms like lossless vs. lossy compression, TCP vs. UDP, and sequential vs. parallel computing.
  • Know the Big Ideas — Questions often test whether you understand which concept belongs to which Big Idea.
  • Read carefully — The exam uses specific vocabulary precisely. "Procedure" and "algorithm" mean different things!
  • Apply to scenarios — The exam will describe real-world situations. Practice matching vocabulary to examples.
  • Remember pseudocode conventions — In AP CSP, list indices start at 1, and assignment uses the ← arrow.

Ready to Test Your Knowledge?

Take a full 70-question practice exam or practice daily with our Question of the Day.

Take Practice Exam → Daily Practice →

Get in Touch

Whether you're a student, parent, or teacher — I'd love to hear from you.

Just want free AP CS resources?

Enter your email below and check the subscribe box — no message needed. Students get daily practice questions and study tips. Teachers get curriculum resources and teaching strategies.

Typically responds within 24 hours

Message Sent!

Thanks for reaching out. I'll get back to you within 24 hours.

🏫 Welcome, fellow educator!

I offer curriculum resources, practice materials, and study guides designed for AP CS teachers. Let me know what you're looking for — whether it's classroom materials, a guest speaker, or Teachers Pay Teachers resources.

Email

tanner@apcsexamprep.com

📚

Courses

AP CSA, CSP, & Cybersecurity

Response Time

Within 24 hours

Prefer email? Reach me directly at tanner@apcsexamprep.com