AP Notes, Outlines, Study Guides, Vocabulary, Practice Exams and more!

AP CSP Flashcards

Terms : Hide Images
13834587716abstractionremove the details to make something more general; do not have to know what happens behind the scenes; makes code easier to understand0
13834608044numeric valueseach numeric representation is an abstraction because they simplify the details of what we have1
13834617983machine codewhat computers read; made up of 1 and 0s (0 means no electric charge and 1 means electric charge); the lowest level of abstraction2
13834635834biteither a 1 or 0; eight bits equal one byte3
13834646692hexadecimalused by humans (not computers) for shorter version of binary; uses 0-9 and A-F; 1, 16, 256, 40964
13834657621binaryuses 1s and 0s; anytime you have a binary number that is all 1s to the right the number in decimal is always 1 less than the next power of two; 1, 2, 4, 8, 16, 32, 64, 1285
13834689306ASCII (American Standard Code for Information Interchange)used to convert text to binary codes so computer can read it; uses seven bits and can only write 128 characters6
13834699094Unicodeused to convert text to binary codes; uses more bits so has more characters for foreign symbols7
13834712274data typethis is important so that a computer knows how to interpret the binary as a string, integer, or fraction number8
13847168028stringtext fields and are denote with quotation marks around the string field9
13847175780integerswhole numbers; can be used in math operations and expressions where strings cannot10
13847192485fractional numbersAKA floating point numbers; numbers with decimal points; ex: 52.0; used for math; imprecise storing so money should not be stored as this data type11
13834721901colorsrepresent with two hexadecimal (1 byte) digits for each red, green, blue (RGB); can represent over 16 million possible colors12
13834805346compiler and interpretersoftware types; complier gets data ready to go to the interpreter where it is broken down into machine language (binary)13
13834825564how if binary data processed?by hardware14
13834833634logic gateshardware used to create digital circuits which are used to represent boolean functions15
13834844739boolean functionshave either true or false as value; and (both conditions have to be true), or (one condition has to be true), not (changes the value to its opposite)16
13834872291overflow erroroccur in computers when the number to be represented is larger than the compare can hold17
13834880181rounding errorsoccur because of the way numbers with decimal points are stored in the computer; stored as whole number + the decimal point + the fractional part of the number; imprecise; could cause inaccurate results18
13834904975high level program languagesmore natural language oriented; can run on almost any device; must be complied down to machine code to actually execute but the programmer does not interact with code at that level (abstraction); makes writing programs easier and faster; programs themselves run slower because they have to be complied before executing; App Inventor, Snap, Java19
13834932741low level programing languagesone step up from machine language; AKA assembly languages; specific to a particular computer; much more difficult to code; don't need to be complied (just interpreted) and therefore run faster20
13834953679variableA placeholder for a piece of information that can change; abstraction; can be for numbers, text. fields21
13834968425expressionsabstractions because you could have a calculation to evaluate or solve to know the value to store in the variable22
13834988245proceduresAKA functions; are called by code to run; used to reuse code and therefore make code more concise (abstraction)23
13847081325calling procedureswhen a procedure is called the program will pause at that location, go and execute the code in the procedure, and then come back to the line of code after the call; parameters sent to the procedure must be sent in the same order if there are more than one and they are the same data type; procedures may need to send data calculated or collected in the procedure back to the calling program via a "return" statement24
13834977851parametersallow the calling program to send values to the procedure via arguments when the procedure is called; the values sent to the procedure can be different values each time so you can therefore call a procedure more than once25
13847278579argumentsent to procedures where they are then used as parameters26
13835032219librariesAKA APIs; groups of programs already tested; available form use through importing into your program; abstraction: can use them with out knowing the details27
13835057109transistorsturn the electrical currents on and off; a low-level hardware abstraction; computer chips contain billions of them28
13835065309motherboardcontrols all aspects of the computer; has multiple computer chips; high level hardware abstraction29
13835075782moore's lawthe number of transistors (computing power) on integrated circuits doubles every two years; somewhat inaccurate today30
13835116466computer processingcomputers take input from device like keyboard, mouse, etc.; the CPU directs the execution of the commands; memory and storage produce output on monitors, speakers, printers, etc.31
13845645403models and simulationscan be used to evaluated and then refine hypotheses which reduces cost and saves time; they can be modified based on the results of the tests and then retested; can be used to test potentially dangerous situations without putting anyone at risk32
13845651203processing datacomputers process data that can be used for decision making and research; computers see patterns that individuals would not33
13845869521cleaningwhen computers remove corrupt data, remove or repair incomplete data, or verify ranges or dates; useful because it prevents mistakes in data interpretations later34
13845924381filteringcomputers identifying and extracting different subsets and to help people make meaning of the data35
13845937793classifyingcomputers grouping data with common features and values, which are provided by people who need to work with the data36
13845946691patternscomputers can recognize these that people are not able to see or cannot process enough data to see and then transform into information for people to interpret and understand37
13845952364data miningcomputers searching for patterns in large data sets; can be used by companies too make business decisions38
13845962064machine learningsubset of data mining that uses algorithms to analyze data and predict behavior; through these predictions, actions can be programed to occur when certain criteria are met; used for targeted adds or to release fraud alerts from banks39
13845976766why was the web created?to allow scientist across the globe to share documents for collaboration40
13845981635big datavast amounts of data that are too large to fit into the available memory on out computers or even servers at locations; need multiple servers to hold and process the data41
13845999676server farmslarge computers located in one place for the purpose of processing big data42
13846021659spreadsheets and databasesused to filter, organize, and search the data43
13846026263processing big datamethods like Map Reduce and Hadoop distribute data sets over many servers; each server processes the section of the data set it has; all are running the same program at the same time; individual solutions combined for a final solution44
13846041295metadatadata that describes data; can help others find data and use it more effectively; includes: date, time stamp, author/owner, file size, file type, tags (enable web searches to find the data more easily)45
13846055615scalabilitythe ability to increase the capacity of a resource without having to go to a completely new solution and for that resource to continue to operate at acceptable levels; the increase should be transparent to the users of the resource (processing should not slow down); important aspect in storing and processing large data sets; includes the ability to downsize with impacting storage or processing; ex: the cloud, networks46
13846092275scalability of networksas more devices are added, network managers increase access points and other devices to accommodate the additional network devices and traffic; result of redundancy47
13846110627what is the importance of passwords?strong passwords block those trying to gain unauthorized access48
13846119230aggregation of datasome sites claim to do this to protect privacy; they summarize, remove, and mask the data findings so that no individual or group can be identified49
13846129174kilobyte1000 bytes50
13846129175Megabyte1 million bytes, 1000 kilobytes51
13846139128losslesscompression techniques that allows the original image to be restored; no data is lost but the file size cannot be as compressed; a code is assigned to each character and characters that appear more often get a shorter code; doesn't work well for jpegs52
13846149479lossycompression techniques lose some data in the compression process; the original data can never be restored but the compression is greater; jpeg does this by replacing similar colors with one color creating changes the human eye cannot detect53
13846193289When will compression work best?the larger the file the greater the opportunity for a larger savings on the file size54
13846197402file extensiontwo or three letters following a period that indicate what software tools can open and process the data55
13846211010what takes up more storage space files that are to be viewed or edited?files that are to be edited because a backup copy and a copy for editing it56
13846237972what is the best way to present data?graphics in the form of charts, tables, and other designs are useful to present data in a visual format and in summary format57
13846320653algorithma set of steps to do a task or solve a problem; programs implement them; more than one correct algorithm to solve a problem58
13846325545sequentialstatements that are executed as written in the program; once a statement is complete, the next statement is run59
13846332727selection"if (condition)" statements that evaluate based on Boolean values; execute once; statements associated with "else" will only run when the "if" condition is false60
13846347527iterativeloops that run over and over until the condition associated with it evaluates false; loops can not execute at all depending on the condition61
13846358069infinite loopA loop in which the terminating condition is never satisfied.62
13846386711pseudocodea combination of natural and programming languages63
13846471059intractable problemsproblems for which we do not have efficient enough algorithms to solve; the algorithm could work for smaller data sets but needs exponential time or resources to run for large amounts of data; this is an aspect of cryptography that keeps our personal information private64
13846494237heuristicsused to solve intractable problems; produces an answer close enough to the solution65
13846504619unsolvable problemsthere is no algorithm that can solve all cases of the problem66
13846513209decidable problemsa problem where an algorithm can be written that results in a yes or no answer for all inputs67
13846504618undecidablea problem that does not have. an algorithm that can give a correct yes or no for each instance68
13846538552algorithm efficiencyhow long it will take to run and how much memory will be needed; can be determined by mathematically proving it and actually running it on data sets and measuring how long it took and memory resources needed69
13846604356searchingdeals with finding the needed data from everything in the data set70
13846608678linear searchesAKA sequential searches; check each individual record one after the other in the order to either find the desired data or determine it is not in the data set; best case is that the item is the first in the list; the worst case is that it isn't in the list71
13846627431binary searchesmore efficient than linear; however data must be sorted for them to work; divides the data set into two equal parts and then feed back about whether the value is high or lower than the midpoint determines which half to disregard and which half to continue the process in until the value is found or it is determined it isn't in the list72
13846708475where do list start?at index position 173
13846717224iterative development processthe steps are repeated through out the process as new information is gathered or clarified and each iteration produces a better result; the cycle is shorter each time74
1384705172632 bit computer/ 64-but computer2^32 bits, 2^64 bits75
13847218998how do you assign a value to a variable?the variable is always to the left of <--76
13847224784Do computer use PEMDAS?yes77
13847224785lista collection of numbers, words, phrases, or a combination of these; provide the ability to store more than one value in the same variable as long as the variable is defined as a list; abstraction of a group of numbers and, or strings78
13847241177indexhow individual items in a list are accessed; starts at 179
13847246868length of a listnumber of items in the list; snacks(length(snacks)) access the last item in the list80
13847254090for each loopstops after the last element in the list has been processed81
13847260786appendingadd item to the end of list82
13847273349Internetnetwork of networks; hardware driven with cables, wire, etc. and even when there is a wireless device there are still access points and cables that create the wireless network83
13847789467networka group of two or more computer systems linked together84
13847806146End-to-end architectureat the sending location the info is broken into smaller packets of the same size; the packets are sent to the destination along different routes; the intermediate routers along the path move the packets to the next destination on the path; packets are put back together in order at the destination (nothing happens in the middle)85
13847851217fault tolerantif one point goes down and is not working then the traffic is redirected to a different node to get to its ultimate destination; result of duplication86
13847862364packetinformation separated into fixed lengths; header information includes. the destination address and where to place the info in the packet in the final reconstruction87
13847874370packet switchingthe transmission technology that divides blocks of text into packets88
13847888352nodeevery device on a network is called this; AKA a host89
13847892124IP addresswhen a device connects to the internet it is give this; it's how the internet knows where to route information; enables devices to find and communicate with each other;90
13847907460protocolsA set of rules governing the exchange or transmission of data between devices so that different equipment made by different companies can communicate with each other91
13847924864Internet Engineering Task Force (IETF)a committee of representative from different industries who agree on the protocol for everyone to follow; part of the internet society92
13847937836IPv4 and IPv6IPv4 is the current protocol for IP address but as more are needed it is being replaced by IPv693
13847946863TCP/IP(Transmission Control Protocol/Internet Protocol) TCP creates the packets and reassembles them; IP moves the packets through the network to their target location94
13847955154Open Systems Interconnection (OSI)A model with seven layers that each deal with an aspect of network communications allowing different types of computers to be linked together; application, presentation, session, transport, network, data link, physical; only layers, one, two, and three from the bottom are mandatory for data transmission therefore other layers may not be used in simpler communication95
13847994249Simple Mail Transfer Protocol (SMTP)the protocol used for email transmission96
13847995611HTTPcontrols how web page data is requested, sent, and received from the browsers and servers where web pages are stored97
13848001989HTTPSused for secure transactions; uses certificate authorities to verify a site's identity; encrypts data before it is separated into packets98
13848005427bandwidththe data transfer rate or the amount of data that can be moved across the network in a set amount of time; measured in bps (bits per second) or Mb/s (megabits per second)99
13848021337how do you determine whether to plan to upgrade your bandwidth by purchasing a faster transfer rate?by looking at the download speed; the download speed is faster than the upload speed because people usually download more than upload100
13848030303latencythe time delay between the request for data and the receipt of it101
13849636461domain nameshttp://anysite.anywhere.com top level domain: last level on the far right, ".com" each successive level to the left goes up one level; .anywhere. is the second level domain multiple levels are not always present any info to the right of the top level provides that path for folders and the ultimate filename102
13849659507Domain Name Service (DNS)translates the site name in test format to a numeric IP address; everyone is mapped to the one closet to them but if it goes down they are just sent to another server; allows sites to grow or change locations while domain name remains the same103
13849675101World Wide Weban application that runs on the Internet; a collection of web pages, or documents written in HTML104
13849683050SSL/TLSthese provide a secure connection to send sensitive data between two sites; has fallen out of use because of vulnerability and Transport Layer Security (TLS) has replaced it105
13849696314malwaremalicious software106
13849740364distributed denial of service attack (DDOS)when the targeted web server is flooded with so many requests that it cannot handle them all; repossess from the server may. become slow and the server can ultimately crash (stop accepting requests); ex: cybersecurity attack107
13849750328phishing attackscreate email and or websites that look exactly like a legitimate site. hoping to induce people to click on it; often prompt a user of their password, credit card number, or other sensitive data while appearing to be a valid transaction108
13849759617virusesattack themselves to or are a part of an infected file; many types that cause damage, delete, or steal your files and use your system to spread to other devices109
13849769928computer wormssimilar to viruses in the damage they can cause but they are not part of an infected file; they are separate files that can make endless copies of themselves and do not need a file to be open to spread110
13849786834how to avoid malwareantivirus software, firewalls, and caution when downloading or opening files111
13849788976cryptographywriting of secret codes112
13849793326encryptionconverting a message113
13849795423decryptiondeciphering the encrypted. message114
13849796886cipherscoded messages; have two parts: key-allows the creation of secret messages- and algorithm-the set of steps used to transpose the message to be unreadable to anyone who does not have the key115
13849806497casear ciphershifted letters over three spaces; symmetric cipher116
13849810198symmetric cipherthe same key is used to encrypt and decrypt the message117
13849813798asymmetric cipheruse different keys to encrypt and decrypt a message118
13849817510brute force attacksearches involve testing every possible key to break the code which is time consuming; with today's computers we do not have the processing power to break long codes in a reasonable time119
13849826170Frequency Analysisknowing which letters in given language appear more often then comparing this to which letters appear most often in the encryption to crack the code; not effective anymore because now code makers use multiple alphabets to flatten out the letter frequencies120
13849838874Polyalphabetic CipherUses several different alphabets to defeat frequency analysis; a key word determines which alphabet is used for each letter121
13849847400open standardsalgorithms today use this, meaning they are open to everyone and are discussed by experts; the key is what keeps info secret until it gets to the intended person (public key encryption)122
13849855893public key encryptiona public key is published to anyone and the private key decodes the message; the key is so long that using a brute force attack becomes an intractable problem123
13849869309digital certificatescan be purchased form certificate authorities, which identify trusted sites; verify the Web browser that the encryption keys belong to the business thereby enabling e-commerce and the sending and receiving of secure documents124
13849889535Short Message Service (SMS)Technology that enables texting125
13849927085asynchronous communicationmessages can be sent at the convince o the sender and the receiver can check them and respond as time permits; not constant stream126
13849933624synchronous communicationall parties are seeing the same thing at the same time; ex: video chat127
13849941317internet effectssocial media: news is shared in real time, better understanding of other places. (except some government block info), cyber bulling businesses: advertise online, employees telecommute, distractions that hurt productivity healthcare: files digitalized so they can be sent to specialists in any part of the world; physicians can collaborate with other doctors anywhere in the world online learning: gives students global perspective Global Positioning System (GPS): uses satellites to create maps of roads and terrain easy access to any kind of info128
13849953253Cloud Computingstoring documents at a location different than where the owner of the files is located; documents accessible with internet connection to anyone with access benefits: multiple people can update a document at the same time, can access document form any device,129
13849983845Internet of Things (IoT)the network of products embedded with connectivity-enabled electronics, can help people with disabilities; ex: connect to thermostat130
13850006781search enginesalgorithm determines which pieces of info to return to us in which order131
13850013137trendscompanies use info from these for market purposes to determine what and where customers are searching for their products and their competitor's products, how long an item sits in a shopping bag, and when people buy; "people also bought/watch..."132
13850032782open sourcefreely shared, updated, and supported by anyone who wants to do so; allowing everyone to develop the software ensures a better product with the ideas and solutions to problems from many perspectives; less error prone; concerns that someone will take the code and market it or insert malware133
13850041181Crowdsourcingallows people to share information and ask anyone who has access to the site for feedback, problem solving help, employment, or funding134
13850090819citizen sciencetype of crowdsourcing where scientists ask nonscientists to look for and report on patterns or other interesting features of the data or to donate computer time during periods of time their machine is inactive (helps scale up processing capability at little to no cost to the organization); monitoring butterfly migrations, help with documentation and identifying photos135
13850108294crowdfundinghelps inventors, individuals, and businesses fund their ventures with a little money from many sources136
13850113210creative commonsprovides a way for creators of software, images, and videos to share their creations with stipulations for sharing and permission from the author clearly indicated; levels include use with and without attribution, the ability to modify with and without attribution, and whether someone other than the original author can sell it137
13850129981Digital Millennium Copyright Act (DMCA)purpose was to strengthen legal protection for intellectual property, particularly with the Internet; lack of knowledge about copyright laws does not excuse offender138
13850136693mashupsa legal concern because people combine copyrighted stuff and sometimes make money off it; lawsuits challenging whether you need to cite139
13850146817ways to prevent privacy concernsprivate modes on web browsers, blocking cookies, installing add ons, suing proxy servers140
13850154145the digital dividerural and remote areas often have limited or slower access to internet; some poor areas do not have infrastructure to support the internet141
13850164560net neutralityend of this has potential to create new digital divide where those with funding have faster and better internet access142
13850169982what role does government play in the internet?while the world wide web and internet are not owned by any country, each government determines the access its citizens may have and many businesses exist to provide this access143
13850183499what is the order of hardware abstraction from least to most abstract?circuit diagram, truth table, logic gate diagram144
13850187603empirical testingprovides the best, worst, and average case information about the algorithm145

Need Help?

We hope your visit has been a productive one. If you're having any problems, or would like to give some feedback, we'd love to hear from you.

For general help, questions, and suggestions, try our dedicated support forums.

If you need to contact the Course-Notes.Org web experience team, please use our contact form.

Need Notes?

While we strive to provide the most comprehensive notes for as many high school textbooks as possible, there are certainly going to be some that we miss. Drop us a note and let us know which textbooks you need. Be sure to include which edition of the textbook you are using! If we see enough demand, we'll do whatever we can to get those notes up on the site for you!