Chapter 1 Flashcards

1
Q

What are the common misconceptions about computer science

A

Computer science is the study of computers.
Computer science is the study of how to write computer programs.
Computer science is the study of the uses and applications of computers and software.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is computer science a study of

A

The study of algorithims

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What aspects of algorithims are studied in computer science

A

Their formal and mathematical properties
Their hardware realizations
Their linguistic realizations
Their applications

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is the informal definition of an algorithm

A

An ordered sequence of instructions that is guaranteed to solve a specific problem.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are some examples of an algorithm

A

Step 1: Do something
Step 2: Do something
Step 3: Do something

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the three types of operations used to construct algorithms

A

Sequential operations
Conditional operations
Iterative operations

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the definition of a sequential operation

A

Carries out a single well-defined task

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is the definition of a conditional operation

A

Ask a question and the next operation is then selected on the basis of the answer to that question

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is the definition of an iterative operation

A

Looping instructions that tell not to go on but go back and repeat the execution of a previous block of instructions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is an example of a sequential operation

A

A cookbook recipe

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is an example of a conditional operation

A

A cookbook recipe that states that if you have a breadmaker then you will proceed with a different step (ex: a condition that changes the procedure)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is an example of an iterative operation

A

A computer writes hello over and over again and never preforms any other function

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Why are formal algorithms so important in computer science?

A

If we can specify an algorithm to solve a problem, then we can automate its solution

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is a Computing agent

A

Machine, robot, person, or thing carrying out the steps of the algorithm

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is an unsolved problem

A

Some problems are unsolvable, some solutions are too slow, and some solutions are not yet known

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is an example of an unsolvable problem

A

Solving world peace

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What is the Formal Definition of an Algorithm

A

A well-ordered collection of unambiguous and effectively computable operations that, when executed, produces a result and halts in a finite amount of time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What is a Well-ordered collection

A

Upon completion of an operation, we always know which operation to do next

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What does the statement unambiguous and effectively computable operations mean

A

It is not enough for an operation to be understandable, it must also be doable (effectively computable)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What does effectively computable mean

A

Doable

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

What are some examples of ambigious statements

A
Go back and do it again (Do what again?)
Start over (From where?)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

How do we know an a soltuion (algorithm ) is correct

A

To know whether a solution is correct, an algorithm must produce a result that is observable to a user:
A numerical answer
A new object
A change in the environment

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What are three examples of observable results

A

A numerical answer
A new object
A change in the environment

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What does an unambiguous operation/primitive operations mean

A

Can be understood by the computing agent without having to be further defined or simplified

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Why is it not enough for an operation to be understandable
It must also be doable (effectively computable) by the computing agent
26
Describe an infinite loop (in relation to algorithims)
Runs forever | Generally a mistake in the programming
27
What occured during the industrial revolution (in relation to algorithims)
Mechanized and automated repetitive physical tasks
28
What occured during the computer revolution of the twentieth and twenty-first centuries (in relation to algorithims)
Mechanized and automated repetitive mental tasks | Used algorithms and computer hardware
29
What happened in the seventeeth century in relation to computers
automation/simplification of arithmetic for scientific research
30
What occured in 1614 (history of computing)
John Napier invented logarithms as a way to simplify difficult mathematical computations (1614).
31
What occured in 1622 (history of computing)
The first slide rule appeared around 1622.
32
What happened in 1642 (history of computing)
Blaise Pascal designed and built a mechanical calculator named the Pascaline (1642).
33
What happened in 1673 (history of computing)
Gottfried Leibnitz constructed a mechanical calculator called Leibnitz’s Wheel (1673).
34
What could the seventeeth century computing devices do
Could represent numbers Could perform arithmetic operations on numbers Did not have a memory to store information Were not programmable (a user could not provide a sequence of actions to be executed by the device)
35
What happened in 1801 (history of computing)
Joseph Jacquard designed an automated loom that used punched cards to create patterns (1801)
36
What happened in the 1880s (history of computing)
``` Herman Hollerith (1880s onward) Designed and built programmable card-processing machines to read, tally, and sort data on punched cards for the U.S. Census Bureau Founded a company that became IBM in 1924 ```
37
What was the original definition of a luddite
Originally opposed to the new manufacturing technology introduced by the Jacquard Loom
38
What is the newer definition of a luddite
a term used to describe any group that is frightened or angered by the latest developments in any branch of science and technology, including computers
39
What did charles babbage do
Created the Difference Engine designed and built in 1823
40
What could the difference engine do
Could do addition, subtraction, multiplication, and division to six significant digits Could solve polynomial equations and other complex mathematical problems
41
Describe the analytical engine in relation to charles babbage
Designed but never built | Mechanical, programmable machine with parts that mirror that of a modern-day computer
42
Describe nineteenth century devices
Were mechanical, not electrical | Had many features of modern computers
43
What are the features of modern computers that nineteenth century devices had
Representation of numbers or other data Operations to manipulate the data Memory to store values in a machine-readable form Programmable: sequences of instructions could be predesigned for complex operations
44
What year was the Mark 1 created
1944
45
What is the Mark 1
Electromechanical computer used a mix of relays, magnets, and gears to process and store data
46
What year was the colossus created
1943
47
What is the colossus
General-purpose computer built by Alan Turing for the British Enigma project
48
What year was the ENIAC created
1946
49
What does the ENIAC stand for
Electronic numerical integrator and calculator
50
What is the ENIAC
First publicly known fully electronic computer
51
What did John Von Neumann propose
A radically different computer design based on a model called the stored program computer
52
Who built one of the first stored program computers
A research group at the university of pennsylvania
53
What was the name of the first stored program computer built by the U of P and what year was it created
EDVAC and in 1949
54
What was the name of the first commercially sold computer
UNIVAC 1 (a version of EDVAC)
55
What type of architecture do all modern computers use
Von Neumann architecture
56
What time period was represented by the first generation of computing
1950-1957
57
Describe the first generation of computing
Similar to EDVAC Vacuum tubes for processing and storage Large, expensive, and delicate Required trained users and special environments
58
What time period was represented by the second generation of computing
1957-1965
59
Describe the second generation of computing
Transistors and magnetic cores instead of vacuum tubes | Era of FORTRAN and COBOL
60
What were FORTRAN and COBOL
Some of the first high level programming languages
61
What time period was represented by the third generation of computing
1965-1975
62
Describe the third generation of computing
Era of the integrated circuit Birth of the first minicomputer: desk-sized, not room-sized, computers Birth of the software industry
63
What time period was represented by the fourth generation of computing
1975-1985
64
Describe the fourth generation of computing
The first microcomputer: desktop machine Development of widespread computer networks Electronic mail, graphical user interfaces, and embedded systems
65
What time period was represented by the fifth generation of computing
1985-
66
Describe the fifth generation of computing
Massively parallel processors capable of quadrillions of computations per second Handheld digital devices Powerful multimedia user interfaces incorporating sound, voice recognition, video, and television Wireless communications Massive cloud storage devices Ubiquitous computing Ultra-high-resolution graphics and virtual reality