0% found this document useful (0 votes)
55 views

Manual Set 1

This document discusses the importance of studying computers and computer science. It notes that computers have profoundly impacted how we live, think, and do business, and this impact will continue. Computer science involves both studying what can be done with computers through software, and how to construct that software. It explores computer science from mathematical, empirical, domain-specific, and edge case perspectives. The document also discusses the evolution of digital representation from telegraph codes to modern character sets.

Uploaded by

subhan sibghat
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
55 views

Manual Set 1

This document discusses the importance of studying computers and computer science. It notes that computers have profoundly impacted how we live, think, and do business, and this impact will continue. Computer science involves both studying what can be done with computers through software, and how to construct that software. It explores computer science from mathematical, empirical, domain-specific, and edge case perspectives. The document also discusses the evolution of digital representation from telegraph codes to modern character sets.

Uploaded by

subhan sibghat
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 9

Why computers and computer

science
Why study computers?
• The computer is a profoundly important technology
– Broadly impactful
– Occasionally disruptive

• What are some of the impacts the computer has had the
way we live, the way we think, and the way we do
business?

• We are perhaps only 1/3 to1/2 of the way through the


process of absorbing the impact of computing in our lives.

• Computers will have a substantial influence on any area of


study you choose at UC Santa Cruz. Understanding
computers is important.
What is Computer Science?
• Broadly, computer science is the study of
– what can be accomplished using computers, and
– how to construct software to do these things.
• Many views on the field
– Mathematical vs empirical
• Mathematical: views computers as a device with precise,
formal meaning to all operations. Hence, mathematics
should be capable of describing everything a computer can
do.
• Empirical: views computers as complex systems where there
are often multiple ways to accomplish a task, and tradeoffs
among them. Understanding is only possible via a process of
building programs and exploring their properties.
What is Computer Science? (cont’d)
• Domain-specific
– Information-centered
• Computer science is the study of information, including its
representation, storage, transmission, and processing (e.g., data
structures, databases)
– Program-centered
• Computer science is the study of programming, including
appropriate choice of language for a problem, language design,
compiler construction, program verification and correctness.
– Algorithm-centered
• Computer science is the study of algorithms. Study of algorithm
design, characteristics of algorithms, what is computable,
tradeoffs of different algorithms.
What is Computer Science? (Edge
cases)
• Human-computer interaction
– The study of the user interfaces of software, and how users
interact with software.
– Expands the focus of inquiry to be a system comprised of the
computer plus humans interacting with it
• Software engineering
– The study of the construction of large-scale software systems.
– Requirements engineering – determining what a software
system should do is a social process, and is very challenging to
get right.
– Large software code bases are so complex that formal
approaches are insufficient to model software behavior.
Mathematical view of computer science is insufficient.
• Digital arts
– A field that explores what computers can accomplish, but with
the aim of creating an artistic experience.
Why bits?
• Electrical circuits can easily have two states
– Current flowing, current not flowing
– Or, high voltage, low voltage
– These are physically easy to create and work with
– The early telegraph sent messages using current flowing (short =
dot, long = dash), current not flowing (long or short break).
• Claude Shannon coined the term bit in 1948, in a landmark
paper on information theory
– But, earlier, in 1937, had abstracted away the idea of a circuit
being on/off (current flowing, not flowing) into the information
content this carried (1 or 0).
• When engineers started developing computer memory,
they used the idea of a physical mapping from voltages and
currents into a logical 1/0, and then to representing
numbers with multiple digits
Evolution of character codes
• In the 1870s, there was a desire to send Roman characters across a
telegraph without requiring understanding of Morse code.
– Let to creation of Baudot code. Each character is 5 bits long
• In the 1960s, two competing standards, ASCII (open standard) and EBCDIC
(IBM platform-specific)
– ASCII won out in the end (government mandate to only buy ASCII computers
came out in 1968), a 7-bit standard
• Need to represent accented characters led to ISO/IEC 646, which added an
8th bit to represent accented characters
• Unicode effort started in 1980’s
to create single universal
character code for all alphabets
– A C# string is Unicode
(which builds on ASCII)

Baudot keyboard.
Source: Wikipedia
George Boole
• It was George Boole (and simultaneously Augustus De
Morgan), in the 1840’s who joined logic with mathematics
– “The respective interpretation of the symbols 0 and 1 in the
system of logic are Nothing and Universe.”
– I.e., not true (false), or universally correct (true)
– We sometimes call this Boolean logic in honor
• By the invention of the computer, Bertrand Russell and
Alfred North Whitehead had used logic to try and unify all
of mathematics, in their Principia Mathematica (1910-
1913)
– Hence, any serious mathematician would have been familiar
with mathematical logic by the time of the invention of
computer languages in the 1950s
Intellectual roots of computer science
• So, just by looking “under the hood” of a simple program
we see connections back to:
– Telegraphy and early computer communication
– Mathematical functions, mathematical logic
– The earliest computers
• Gives us a strong sense of the deep influence mathematics
has had on computers
• But, also gives us the sense that to deeply understand the
present, one must also understand the past
• In coming lectures, will aim to:
– Provide historical context on a subject
– Provide key ideas and concepts about a subject
– Provide some sense of where the future is going

You might also like