click below
click below
Normal Size Small Size show me how
AP Comp Sci P Vocab
| Term | Definition |
|---|---|
| Binary | A way of representing information using only two options |
| Bit | A contraction of "Binary Digit"; the single unit of information in a computer, typically represented as a 0 or 1 |
| Byte | 8 bits |
| Decimal | A way of representing information using ten options |
| Overflow Error | Error from attempting to represent a number that is too large |
| Round-off Error | Error from attempting to represent a number that is too precise. The value is rounded. |
| Analog Data | Data with values that change continuously, or smoothly, over time. |
| Digital Data | Data that changes discretely through a finite set of possible values |
| Sampling | A process for creating a digital representation of analog data by measuring the analog data at regular intervals called samples. |
| Lossless Compression | A process for reducing the number of bits needed to represent something without losing any information. This process is reversible. |
| Lossy Compression | A process for reducing the number of bits needed to represent something in which some information is lost or thrown away. This process is not reversible. |
| Creative Commons | A collection of public copyright licenses that enable the free distribution of an otherwise copyrighted work, used when an author wants to give people the right to share, use, and build upon a work that they have created |
| Intellectual Property | A work or invention that is the result of creativity, such as a piece of writing or a design, to which one has rights and for which one may apply for a patent, copyright, trademark, etc. |
| Bandwidth | the maximum amount of data that can be sent in a fixed amount of time, usually measured in bits per second |
| Computing Device | a machine that can run a program, including computers, tablets, servers, routers, and smart sensors |
| Computing Network | a group of interconnected computing devices capable of sending or receiving data. |
| Computing System | a group of computing devices and programs working together for a common purpose |
| Path | the series of connections between computing devices on a network starting with a sender and ending with a receiver |
| IP Address | The unique number assigned to each device on the Internet |
| Internet Protocol (IP) | a protocol for sending data across the Internet that assigns unique numbers (IP addresses) to each connected device |
| Protocol | An agreed-upon set of rules that specify the behavior of some system |
| Fault Tolerant | Can continue to function even in the event of individual component failures. This is important because elements of complex systems like a computer network fail at unexpected times, often in groups. |
| Redundancy | The inclusion of extra components so that a system can continue to work even if individual components fail, for example by having more than one path between any two connected devices in a network |
| Router | A type of computer that forwards data across a network |
| Packet | A chunk of data sent over a network |
| Domain Name System (DNS) | the system responsible for translating domain names like example.com into IP addresses |
| HyperText Transfer Protocol (HTTP) | the protocol used for transmitting web pages over the Internet |
| World Wide Web | a system of linked pages, programs, and files |
| Digital Divide | differing access to computing devices and the Internet, based on socioeconomic, geographic, or demographic characteristics |
| Input | data that are sent to a computer for processing by a program. Can come in a variety of forms, such as tactile interaction, audio, visuals, or text. |
| Output | any data that are sent from a program to a device. Can come in a variety of forms, such as tactile interaction, audio, visuals, or text. |
| User Interface | the inputs and outputs that allow a user to interact with a piece of software |
| Event Driven Programming | some program statements run when triggered by an event, like a mouse click or a key press |
| Program | a collection of program statements; run (or “execute”) one command at a time. |
| Program Statement/Code Statement | a command or instruction |
| Sequential Programming | program statements run in order, from top to bottom |
| Development Process | the steps or phases used to create a piece of software. Typical phases include investigating, designing, prototyping, and testing. |
| Pair Programming | a collaborative programming style in which two programmers switch between the roles of writing code and tracking or planning high level progress |
| Assignment Operator | allows a program to change the value represented by a variable |
| Expression | a combination of operators and values that evaluates to a single value |
| String | an ordered sequence of characters |
| Variable | a named reference to a value that can be used repeatedly throughout a program |
| Boolean Value | a data type that is either true or false |
| Comparison Operator | <, >, <=, >=, ==, != indicate a Boolean expression |
| Logical Operator | NOT, AND, and OR, which evaluate to a Boolean value |
| Function/Procedure | a named group of programming instructions |
| Function Call | a command that executes the code within a function |
| Information | the collection of facts and patterns extracted from data |
| Metadata | data about data |
| Cleaning Data | a process that makes the data uniform without changing its meaning (e.g., replacing all equivalent abbreviations, spellings, and capitalizations with the same word). |
| Data Filtering | choosing a smaller subset of a data set to use for analysis, for example by eliminating / keeping only certain rows in a table |
| Correlation | a relationship between two pieces of data, typically referring to the amount that one varies in relation to the other. |
| Citizen Science | scientific research conducted in whole or part by distributed individuals, many of whom may not be scientists, who contribute relevant data to research using their own computing devices. |
| Crowdsourcing | the practice of obtaining input or information from a large number of people via the Internet |
| Data Bias | data that does not accurately reflect the full population or phenomenon being studied |
| Information | the collection of facts and patterns extracted from data |
| Data Abstraction | manage complexity in programs by giving a collection of data a name without referencing the specific details of the representation |
| Element | an individual value in a list that is assigned a unique index |
| Index | a common method for referencing the elements in a list or string using numbers |
| List | an ordered collection of elements |
| Infinite Loop | occurs when the ending condition will never evaluate to true |
| Iteration | a repetitive portion of an algorithm which repeats a specified number of times or until a given condition is met |
| Traversal | the process of accessing each item in a list one at a time |
| Argument | the value passed to the parameter |
| Parameter | a variable in a function definition. Used as a placeholder for values that will be passed through the function |
| Return | used to return the flow of control to the point where the procedure (also known as a function) was called and to return the value of expression |
| Procedural Abstraction | a process and allows a procedure to be used only knowing what it does, not how it does it; allows a solution to a large problem to be based on the solution of smaller subproblems; accomplished by creating procedures to solve each of the subproblems. |
| Application Program Interface (API) | specifications for how functions in a library behave and can be used |
| Library | a group of functions (procedures) that may be used in creating new programs |
| Modularity | the subdivision of a computer program into separate subprograms |
| Computing Innovation | includes a program as an integral part of its function. Can be physical (e.g. self-driving car), non-physical computing software (e.g. picture editing software), or non-physical computing concepts (e.g., e-commerce). |
| Personally Identifiable Information (PPI) | information about an individual that identifies, links, relates, or describes them |
| Keylogging | the use of a program to record every keystroke made by a computer user in order to gain fraudulent access to passwords and other confidential information |
| Malware | software intended to damage a computing system or to take partial control over its operation |
| Phishing | a technique that attempts to trick a user into providing personal information. That personal information can then be used to access sensitive online resources, such as bank accounts and emails |
| Rogue Access Point | a wireless access point that gives unauthorized access to secure networks |
| Decryption | a process that reverses encryption, taking a secret message and reproducing the original plain text |
| Encryption | a process of encoding messages to keep them secret, so only "authorized" parties can read it |
| Public Key Encryption | pairs a public key for encryption and a private key for decryption. The sender does not need the receiver’s private key to encrypt a message, but the receiver’s private key is required to decrypt the message |
| Symmetric Key Encryption | involves one key for both encryption and decryption |
| Computer Virus Scanning Software | protects a computing system against infection |
| Multi-factor Authentication | a system that requires at least two steps to unlock protected information; each step adds a new layer of security that must be broken to gain unauthorized access |
| Algorithm | a finite set of instructions that accomplish a task |
| Problem | a general description of a task that can (or cannot) be solved with an algorithm |
| Selection | deciding which steps to do next |
| Sequencing | putting steps in an order |
| Binary Search | a search algorithm that starts at the middle of a sorted set of numbers and removes half of the data; this process repeats until the desired value is found or all elements have been eliminated |
| Efficiency | a measure of how many steps are needed to complete an algorithm |
| Linear Search | a search algorithm which checks each element of a list, in order, until the desired value is found or all elements in the list have been checked |
| Reasonable Time | Algorithms with a polynomial efficiency or lower (constant, linear, square, cube, etc.) |
| Unreasonable Time | Algorithms with exponential or factorial efficiencies |
| Decision Problem | a problem with a yes/no answer (e.g., is there a path from A to B?) |
| Heuristic | provides a "good enough" solution to a problem when an actual solution is impractical or impossible |
| Optimization Problem | a problem with the goal of finding the "best" solution among many (e.g., what is the shortest path from A to B?) |
| Undecidable Problem | a problem for which no algorithm can be constructed that is always capable of providing a correct yes-or-no answer |
| Distributed Computing | a model in which programs are run by multiple devices |
| Parallel Computing | a model in which programs are broken into small pieces, some of which are run simultaneously |
| Sequential Computing | a model in which programs run in order, one command at a time |
| Speedup | the time used to complete a task sequentially divided by the time to complete a task in parallel |