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

Chap 0

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views

Chap 0

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 30

Chapter 0

Introduction

Introduction to Computer Science & Technology


06/12/24

Assessment details

Marks out of Wtg(%)

Attendance 10 10

Quiz 20 30 6 Quizzes

Report 100 10

Final Exam 100 50 END S1


Computer Science An Overview
13th Edition

Chapter 0
Introduction
Chapter 0: Introduction
• 0.1 The Role of Algorithms
• 0.2 The History of Computing
• 0.3 An Outline of Our Study
• 0.4 The Overarching Themes of Computer Science
– Algorithms – Programming
– Abstraction – Internet
– Creativity – Impact
– Data
0.1 The Role of Algorithms
• Algorithm: A set of steps that defines how a task is
performed
• Program: A representation of an algorithm
• Programming: The process of developing a program
• Software: Programs and the algorithms they represent
• Hardware: The machinery
Figure 0.1
An algorithm for a magic trick
Figure 0.2
The Euclidean algorithm for finding the greatest
common divisor of two positive integers
History of Algorithms
• The study of algorithms was originally a subject in
mathematics.
• Early examples of algorithms
– Long division algorithm
– Euclidean Algorithm
• Gödel's Incompleteness Theorem: Some problems
cannot be solved by algorithms.
0.2 The History of Computing
• Early computing devices
– Abacus: positions of beads represent numbers
– Gear-based machines (1600s-1800s)
▪ Positions of gears represent numbers
▪ Blaise Pascal, Wilhelm Leibniz, Charles Babbage
Figure 0.3
Chinese Wooden Abacus
Early Data Storage
• Punched cards
– First used in Jacquard Loom (1801) to store patterns
for weaving cloth
– Storage of programs in Babbage’s Analytical Engine
– Popular through the 1970’s
• Gear positions
Early Computers
• Based on mechanical relays
– 1940: Stibitz at Bell Laboratories
– 1944: Mark I: Howard Aiken and IBM at Harvard
• Based on vacuum tubes
– 1937-1941: Atanasoff-Berry at Iowa State
– 1940s: Colossus: secret German code-breaker
– 1940s: ENIAC: Mauchly & Eckert at U. of Penn.
Figure 0.4
Three women operating the ENIAC’s main control
panel
Personal Computers
– Hobbyists built homemade computers
– Apple Computer established in 1976.
– IBM introduced the PC in 1981.
▪ Accepted by business
▪ Became the standard hardware design for most
desktop computers
▪ Most PCs use software from Microsoft
End of the 20th Century
• Internet revolutionized communications
– World Wide Web
– Search Engines
• Miniaturization of computing machines
– Embedded (GPS, in automobile engines)
– Smartphones
0.3 An Outline of Our Study
• Chapter 1: Data Storage
• Chapter 2: Data Manipulation
• Chapter 3: Operating Systems
• Chapter 4: Networks and the Internet
• Chapter 5: Algorithms
• Chapter 6: Programming Languages
An Outline of Our Study (continued)
• Chapter 7: Software Engineering
• Chapter 8: Data Abstractions
• Chapter 9: Database Systems
• Chapter 10: Computer Graphics
• Chapter 11: Artificial Intelligence
• Chapter 12: Theory of Computation
0.4 The Overarching Themes of
Computer Science
• Computing technology is fundamental to being a part of
the modern world
• This book will include applications and consequences of
computer science
• Seven “Big Ideas” that unite computer science:
– Algorithms, Abstraction, Creativity, Data,
Programing, Internet and Impact
Algorithms
• Computer Science is the science of algorithms
• Draws from other subjects, including
– Mathematics
– Engineering
– Psychology
– Business Administration
– Linguistics
Figure 0.5
The central role of algorithms in computer science
Given the Central Role of Algorithms
• Which problems can be solved by algorithmic
processes?
• How can characteristics of different algorithms be
analyzed and compared?
• How can algorithms be applied to produce intelligent
behavior?
• How does the application of algorithms affect society?
Abstraction
• Abstraction: The distinction between the external
properties of an entity and the details of the entity’s
internal composition
• Abstract tool: A “component” that can be used without
concern for the component’s internal properties
Creativity
• Computer science is inherently creative
– Discovering and applying algorithms is a human
activity
– Extends existing forms of expression
– Enables new modes of digital expression
• Creating large software systems is like conceiving a
grand new sculpture
Data
• Computers can represent any information that can be
discretized and digitized
• Algorithms process and transform data
– Search for patterns
– Create simulations
– Generate knowledge and insight
• Data is driving modern discovery
Questions about Data
• How do computers store data about common digital
artifacts?
– Numbers, text, images, sounds, and video
• How do computers approximate data about analog
artifacts in the real world?
• How do computers detect and prevent errors in data?
• What are the ramifications or an ever-growing and
interconnected universe of digital data?
Programming
• Programming is broadly referred to as:
– Translating human intentions into executable
algorithms
• Computer hardware is capable of only simple
algorithmic steps
• Abstractions in a programming language allow
humans to reason and encode solutions to complex
problems
Questions about Programming
• How are programs built?
• What kind of errors can occur in programs?
• How are errors in programs found and repaired?
• What are the effects of errors in modern programs?
• How are programs documented and evaluated?
Internet
• Profound impact in the way information is:
– Stored
– Retrieved
– Shared
• Privacy
• Security
Impact
• Social, ethical, legal impacts including:
– Security concerns
– Issues of software ownership and liabilities
– Social impact of database technology
– Consequences of artificial intelligence
Impact explored through “Social Issues”
questions
• Social Issues questions are meant to increase
awareness of:
– Various stakeholders
– Alternatives
– Short term and long term consequences
• Character-based ethics
– “Who do I want to be?”
– Become more aware, insightful, and sensitive to the
issues involved

You might also like