SlideShare a Scribd company logo
Introduction to
Computer Science
 By- Darshan Gohel
Darshan Gohel
Overview of Discussion
 What is computer science?
 What is a computer?
 What can computers do?
 How do computers solve problems?
 What is computer science?
 Who invented computers?
 Conceptual computers
 Computing devices
Darshan Gohel
Learning Objectives
 Define and use terminology
 Examples: computer, computer science,
algorithm, specification, correctness, efficiency,
von Neumann machine
 Distinguish between algorithms and non-
algorithms
 Know something about the history of
computers (up to 1950)
Darshan Gohel
Which one is the computer?
Rock Calculator Television
Modern Airplane Washing Machine Computer Workstation
Darshan Gohel
Is it a Computer?
 What questions would
you ask?
 What experiments
would you run?
Darshan Gohel
Is a rock a computer?
 Does not act or
process
 Takes no input and
produces no output
 Computers must be able to handle input and
output
Darshan Gohel
Is a washing machine a computer?
 Input: dirty clothes
 Output: clean clothes
 Does not handle
information
 Computers input and output information
Darshan Gohel
Is a television set a computer?
 Input: information from
cables or radio waves
 Output: information as
sound and picture
 Does not process
information
 Computers process information by computing
new results and answering queries
Darshan Gohel
Is a modern airplane a computer?
 Input: information from
radio waves
 Output: manipulations
to the airplane
 Can only handle
specific information
necessary for flight
control
 Computers are general purpose because
they can perform many different tasks
Darshan Gohel
Is an ordinary calculator a computer?
 Input: numbers and
mathematical operations
 Output: answer
 Handles any numeric task
 Cannot remember which
buttons are pressed
 Computers are programmable so they can
remember sequences of operations
Darshan Gohel
Definition of a Computer
 a general purpose,
 programmable,
 information processor
 with input and output
Darshan Gohel
Computing Agents
 Definition of computers does not cover all
that computer scientists study
 Broader class of objects and methods –
computing agents
 Have some or all of the characteristics of a
computer
Darshan Gohel
Specialized Computing Devices and
Information Appliances
 Devices limited by set of operations or
programmability
 Calculators limited to operations described by
their buttons
 Global Positioning System (GPS) calculates
latitude and longitude from satellite signals
 Cell phone allows one to surf the web
 Information appliances – performs a single
job well
Darshan Gohel
Embedded computers and robots
 Machines with full-fledged computers inside
 Washing machines, airplanes, ATMs, etc.
 Such machines require highly reliable,
predictable computer programs
 All physical mechanisms controlled by
computers are robotic devices
 Restrict definition to machines that are general
purpose and programmable
 Robotic arm or cart
Darshan Gohel
Natural computing agents
 Living organisms process information in their
efforts to eat, survive, and reproduce
 1940s study showed frogs collect less visual
information than people
 Identify rapidly moving objects as food, slowly moving
objects as predators
 Study physical events in terms of information they
contain and process
 Chemical reactions, crystal formations, plant growth, etc.
Darshan Gohel
What is a computer?
 Definition of a computer is narrow
 Definition of computing agent is broad
 Although many computer scientists focus on
the computer, some computer scientists deal
with computing agents
Darshan Gohel
What can computers do – today?
 Business productivity managers
 Personal information managers
 Spreadsheets
 Database software
 Desktop publishing
 Multimedia encyclopedias
 Simulate the physical world
 Produce a music video
Darshan Gohel
What might computers do – tomorrow?
 Diagnose diseases
 MYCIN captures medical knowledge in rules that
allowed a computer to identify an ailment based
on symptoms
 Control robots that walk, talk, and learn
 CMU created a program that drove a van from
Pittsburgh to D.C. using cameras for eyes
 Compose music and create art
Darshan Gohel
How do computers solve problems?
 Humans deconstruct problems into small
operations that a computer can carry out
 Writing an algorithm
 Solve a problem by computer requires
 State the problem clearly in a problem statement
 Solve the problem with an algorithm that gives
clear instructions
 Use a computing agent to carry out the
instructions
Darshan Gohel
Stating the problem clearly
 Describes what to do, not how to do it
 How do I get from Timonium Campus to the
Beltway?
 Solve general classes of problems
 How do I get from point A in Timonium to point B?
 What is the square root of y?
Darshan Gohel
Specifying a problem
 Clear problem statement is called the
specification
 What information can we use as input
 What the output, or solution, to our problem
should look like
 Specification for the square root problem
 Input: A positive number y > 0
 Output: A positive number x such that x2 = y
 Make sure specification is not ambiguous
Darshan Gohel
Solving the problem using an Algorithm
 Algorithm – a clear sequence of instructions
for performing a task
 a well-ordered sequence
 of well-defined,
 feasible operations
 that takes finite time to carry out
Darshan Gohel
Finding the square root to the nearest
tenth
 For this example we are interested in the square
root of 55
1. Find the two integers between which √55 lies
 Do this by starting at 0 and continuing up through the
integers until you find an integer whose square is less than
55 and the next integer has a square larger than 55
2. Find the first estimate by averaging the two integers
3. Divided 55 by the estimate. Compute it to one more
place than you want in the final answer
4. Average the estimate and the result of step 3
5. Repeat steps 3 and 4 until the tenth digit does not
change
Darshan Gohel
Almost Algorithms
 To shampoo your hair
1. Rinse
2. Lather
3. Repeat
 To set the time on the
VCR
1. Open the front panel
2. Push the button
3. Set the hours, then the
minutes
 To write the Great
American Novel
1. Get paper and pencil
2. Sit down
3. Write word on paper
4. If novel is great, quit.
Otherwise, go back to
step 3.
Darshan Gohel
Using the computing agent
 The square root algorithm is only an
algorithm for an agent that understands
English and can perform arithmetic
 Requirements imposed by the computing
agent
 Algorithm is in a language the computing agent
understands
 Algorithm uses primitive operations that the agent
can carry out
Darshan Gohel
Necessity of artificial languages
 Problems with natural languages (like
English)
 Flexible
 Often ambiguous
 Computers use artificial languages with
precise meanings
 mathematical equations, music notation,
programming languages
 Programming languages define primitive
operations computing agents understand
Darshan Gohel
What is computer science?
 The study of computers
 The study of algorithmic processes including
their
 Theory
 Analysis
 Design
 Efficiency
 Implementation
 Application
Darshan Gohel
Who invented computers?
 Computer science has roots in two fields
 Mathematics
 Alan Turing and the Turing machine (1930s)
 Developed theories with paper and pencil about how to
perform computations by hand
 Engineering
 John von Neumann and the von Neumann machine
(1940s)
 Showed how to build physical computers out of
electronic circuitry
Darshan Gohel
Mathematical Roots
 Leibniz’s Dream (1600s)
 Can we find a universal language for
mathematical algorithms that will let us describe
and solve any problem?
 Reduce all reasoning to a fixed set of basic rules
 Determine truth or falsity of sentences by fixed rules for
manipulating sentences
 George Boole (1800s)
 Introduces binary notation of calculation
 Computers use binary system for logic and arithmetic
Darshan Gohel
More on Theory
 David Hilbert (1928)
 Challenges the mathematical community to find
an infallible, mechanical method for constructing
and checking truth of mathematical statements
 Interested in an algorithm
 Alonzo Church, Alan Turing, and Kurt Gödel
construct arguments that there is no solution
to Hilbert’s Challenge
 Turing builds a conceptual computer for his
argument
Darshan Gohel
The Turing Machine and the Church-
Turing Thesis
 Turing Machine
 Machine with a finite set of rules and an infinite
amount of “scratch paper” for computation
 No one has designed a physical computer that can do
more than a Turing machine
 Machine could not solve Hilbert’s problem
 Church-Turning Thesis
 The Turing Machine captures what we mean by
computational systems
 Is as powerful an any other mechanical computing
agent
Darshan Gohel
Engineering Roots
 First step development of calculators
 Abacus – developed 5000 years ago in the Middle
East
 Pascaline – first mechanical calculator using
gears for calculation (1642)
 Charles Babbage’s Difference Engine –
conceptual design that used hundreds of gears to
compute mathematical functions (1820s)
Darshan Gohel
Electronic Circuits
 Telegraph – uses electricity to convey letters
and transmit information quickly (1844)
 Hollerith Tabulating Machine – Uses
electricity and punch cards to calculate the
US census (1890)
 Z2 – used circuitry to compute arithmetic
operations (1930s)
Darshan Gohel
Programmed Devices
 Jacquard Loom – weaves cloth using a pattern
specified using punch cards (1801)
 The Analytic Engine – conceptual design for a
machine consisting of a Mill, Store, Printer, and
Readers
 Led Ada Lovelace to define programming concepts such as
the subroutine
 ENIAC – one of the first programmable electronic
computers (1945)
 Programmed by routing cables and flipping switches
Darshan Gohel
von Neumann Machine
 Store programs in electronic memory along
side the data (1943)
 Move and manipulate a program like data
 Enabled high-level programming languages
Input Central Processing
Unit (CPU)
Memory
Output
Darshan Gohel
Machine Languages
 Only language computers directly understand
 “Natural language” of computer
 Defined by hardware design
 Machine-dependent
 Generally consist of strings of numbers
 Ultimately 0s and 1s
 Instruct computers to perform elementary operations
 One at a time
 Cumbersome for humans
 Example:
+1300042774
+1400593419
+1200274027
Darshan Gohel
Assembly Languages
 English-like abbreviations representing elementary
computer operations
 Clearer to humans
 Incomprehensible to computers
 Translator programs (assemblers)
 Convert to machine language
 Example:
LOAD BASEPAY
ADD OVERPAY
STORE GROSSPAY
Darshan Gohel
High-level Languages
 Similar to everyday English, use common mathematical
notations
 Single statements accomplish substantial tasks
 Assembly language requires many instructions to accomplish
simple tasks
 Translator programs (compilers)
 Convert to assembly language
 Interpreter programs
 Directly execute high-level language programs
 Example:
grossPay = basePay + overTimePay
Darshan Gohel
Programming Approaches
 Structured programming (1960s)
 Disciplined approach to writing programs
 Clear, easy to test and debug, and easy to modify
 Focus on what the program does
 Object Oriented programming
 Object is an entity characterized by a state and a
behavior
 state is encoded in the computer program as data
 behavior is encoded as methods
Darshan Gohel
Objects
 Reusable software components that model real
world items
 Meaningful software units
 Date objects, time objects, paycheck objects, invoice
objects, audio objects, video objects, file objects, record
objects, etc.
 Any noun can be represented as an object
 More understandable, better organized and easier
to maintain than structured programming
 Favor modularity
 Software reuse
 Libraries
Darshan Gohel
C++
 C++ programs
 Built from pieces called classes and functions
 C++ standard library
 Rich collections of existing classes and functions
 “Building block approach” to creating
programs
 “Software reuse”
Darshan Gohel
Basics of a Typical C++ Environment
 C++ systems
 Program-development environment
 Language
 C++ Standard Library
Darshan Gohel
Basics of a Typical C++ Environment
Phases of C++ Programs:
1. Edit
2. Preprocess
3. Compile
4. Link
5. Load
6. Execute
Loader
Program is created in
the editor and stored
on disk.
Preprocessor program
processes the code.
Loader puts program
in memory.
CPU takes each
instruction and
executes it, possibly
storing new data
values as the program
executes.
Compiler
Compiler creates
object code and stores
it on disk.
Linker links the object
code with the libraries,
creates a.out and
stores it on disk
Editor
Preprocessor
Linker
CPU
.
.
.
.
.
.
.
.
.
.
.
.
Disk
Disk
Disk
Disk
Disk
Edit
Compile
Run
Make
Primary
Memory
Primary
Memory
Darshan Gohel
Thank you
Darshan Gohel

More Related Content

What's hot

WHAT IS COMPUTER SCIENCE?
WHAT IS COMPUTER SCIENCE?WHAT IS COMPUTER SCIENCE?
WHAT IS COMPUTER SCIENCE?
FARAZ QURESHI(BLACK HAT)
 
Foundation of A.I
Foundation of A.IFoundation of A.I
Foundation of A.I
Megha Sharma
 
Introduction to computing
Introduction to computingIntroduction to computing
Introduction to computing
Muhammad Yousuf Abdul Qadir
 
Computer ppt
Computer pptComputer ppt
Computer ppt
shekharon1
 
Computer Programming
Computer ProgrammingComputer Programming
Computer Programming
Syed Zaid Irshad
 
Introduction to computer programming
Introduction to computer programmingIntroduction to computer programming
Introduction to computer programming
NSU-Biliran Campus
 
Introduction to Computer Engineering
Introduction to Computer EngineeringIntroduction to Computer Engineering
Introduction to Computer Engineering
BESOR ACADEMY
 
Computer languages 11
Computer languages 11Computer languages 11
Computer languages 11
Muhammad Ramzan
 
Artificial intelligence
Artificial intelligenceArtificial intelligence
Artificial intelligence
Lance Jay Montalban
 
Introduction to Computers Lecture # 1
Introduction to Computers Lecture # 1Introduction to Computers Lecture # 1
Introduction to Computers Lecture # 1
Sehrish Rafiq
 
Introduction to computer
Introduction to computerIntroduction to computer
Introduction to computer
Noor Zada
 
Introduction to computer Powerpoint Presentation
Introduction to computer Powerpoint PresentationIntroduction to computer Powerpoint Presentation
Introduction to computer Powerpoint Presentation
Jibin Sr. Plamoottukada
 
Introduction to Basic Computer Concepts Presentation
Introduction to Basic Computer Concepts PresentationIntroduction to Basic Computer Concepts Presentation
Introduction to Basic Computer Concepts Presentation
Ana Tan
 
Intro To Programming Concepts
Intro To Programming ConceptsIntro To Programming Concepts
Intro To Programming Concepts
Jussi Pohjolainen
 
Computer programming concepts
Computer programming conceptsComputer programming concepts
Computer programming concepts
Jasper John Cinatad
 
Introduction to programming
Introduction to programmingIntroduction to programming
Introduction to programming
Neeru Mittal
 
COMPUTER HARDWARE AND SOFTWARE
COMPUTER HARDWARE AND SOFTWARECOMPUTER HARDWARE AND SOFTWARE
COMPUTER HARDWARE AND SOFTWARE
Libcorpio
 
Software programming and development
Software programming and developmentSoftware programming and development
Software programming and development
Ali Raza
 
Introduction To Computer Systems
Introduction To Computer SystemsIntroduction To Computer Systems
Introduction To Computer Systems
Naheed Azam
 
Selected topics in Computer Science
Selected topics in Computer Science Selected topics in Computer Science
Selected topics in Computer Science
Melaku Bayih Demessie
 

What's hot (20)

WHAT IS COMPUTER SCIENCE?
WHAT IS COMPUTER SCIENCE?WHAT IS COMPUTER SCIENCE?
WHAT IS COMPUTER SCIENCE?
 
Foundation of A.I
Foundation of A.IFoundation of A.I
Foundation of A.I
 
Introduction to computing
Introduction to computingIntroduction to computing
Introduction to computing
 
Computer ppt
Computer pptComputer ppt
Computer ppt
 
Computer Programming
Computer ProgrammingComputer Programming
Computer Programming
 
Introduction to computer programming
Introduction to computer programmingIntroduction to computer programming
Introduction to computer programming
 
Introduction to Computer Engineering
Introduction to Computer EngineeringIntroduction to Computer Engineering
Introduction to Computer Engineering
 
Computer languages 11
Computer languages 11Computer languages 11
Computer languages 11
 
Artificial intelligence
Artificial intelligenceArtificial intelligence
Artificial intelligence
 
Introduction to Computers Lecture # 1
Introduction to Computers Lecture # 1Introduction to Computers Lecture # 1
Introduction to Computers Lecture # 1
 
Introduction to computer
Introduction to computerIntroduction to computer
Introduction to computer
 
Introduction to computer Powerpoint Presentation
Introduction to computer Powerpoint PresentationIntroduction to computer Powerpoint Presentation
Introduction to computer Powerpoint Presentation
 
Introduction to Basic Computer Concepts Presentation
Introduction to Basic Computer Concepts PresentationIntroduction to Basic Computer Concepts Presentation
Introduction to Basic Computer Concepts Presentation
 
Intro To Programming Concepts
Intro To Programming ConceptsIntro To Programming Concepts
Intro To Programming Concepts
 
Computer programming concepts
Computer programming conceptsComputer programming concepts
Computer programming concepts
 
Introduction to programming
Introduction to programmingIntroduction to programming
Introduction to programming
 
COMPUTER HARDWARE AND SOFTWARE
COMPUTER HARDWARE AND SOFTWARECOMPUTER HARDWARE AND SOFTWARE
COMPUTER HARDWARE AND SOFTWARE
 
Software programming and development
Software programming and developmentSoftware programming and development
Software programming and development
 
Introduction To Computer Systems
Introduction To Computer SystemsIntroduction To Computer Systems
Introduction To Computer Systems
 
Selected topics in Computer Science
Selected topics in Computer Science Selected topics in Computer Science
Selected topics in Computer Science
 

Similar to Introduction to computer science

Introduction to computer sciences
Introduction to computer sciencesIntroduction to computer sciences
Introduction to computer sciences
fikirabc
 
Introduction to CS
Introduction to CSIntroduction to CS
Introduction to CS
MariusBujorianu1
 
Can computers think
Can computers thinkCan computers think
Can computers think
GTClub
 
Introduction to computers
Introduction to computersIntroduction to computers
Introduction to computers
DHANIK VIKRANT
 
Limore Presentation : Light Color Version
Limore Presentation : Light Color VersionLimore Presentation : Light Color Version
Limore Presentation : Light Color Version
Madlis
 
Limore Presentation : Dark Color Version
Limore Presentation : Dark Color VersionLimore Presentation : Dark Color Version
Limore Presentation : Dark Color Version
Madlis
 
G044053060
G044053060G044053060
G044053060
inventy
 
PPT slides - MACHINE PERCEPTION LABORATORY
PPT slides - MACHINE PERCEPTION LABORATORYPPT slides - MACHINE PERCEPTION LABORATORY
PPT slides - MACHINE PERCEPTION LABORATORY
butest
 
Computer and its uses in modern life.pptx
Computer and its uses in modern life.pptxComputer and its uses in modern life.pptx
Computer and its uses in modern life.pptx
MdNasirUddin592112
 
introduction to it
introduction to itintroduction to it
introduction to it
Shahi Raz Akhtar
 
soft computing manoj
soft computing manojsoft computing manoj
soft computing manoj
Manoj Yadav
 
Algorithm Design and Complexity - Course 1&2
Algorithm Design and Complexity - Course 1&2Algorithm Design and Complexity - Course 1&2
Algorithm Design and Complexity - Course 1&2
Traian Rebedea
 
INTRODUCTION TO COMPUTING OR FUNDAMENTAL COMPUTING
INTRODUCTION TO COMPUTING OR FUNDAMENTAL COMPUTINGINTRODUCTION TO COMPUTING OR FUNDAMENTAL COMPUTING
INTRODUCTION TO COMPUTING OR FUNDAMENTAL COMPUTING
sharock2
 
Ai introduction
Ai  introductionAi  introduction
Ai introduction
BalneSridevi
 
Computer basics
Computer basicsComputer basics
Computer basics
Prof. Dr. K. Adisesha
 
01 knowledge
01 knowledge01 knowledge
Small Basic Calculator Apps lesson
Small Basic Calculator Apps lessonSmall Basic Calculator Apps lesson
Small Basic Calculator Apps lesson
Edujetage
 
901470_Chap1.ppt.artificial intelligence
901470_Chap1.ppt.artificial intelligence901470_Chap1.ppt.artificial intelligence
901470_Chap1.ppt.artificial intelligence
floraaluoch3
 
Artificial Intelligence
Artificial IntelligenceArtificial Intelligence
Artificial Intelligence
Iman Ardekani
 
Computer science basic
Computer science basicComputer science basic
Computer science basic
RentBooks now
 

Similar to Introduction to computer science (20)

Introduction to computer sciences
Introduction to computer sciencesIntroduction to computer sciences
Introduction to computer sciences
 
Introduction to CS
Introduction to CSIntroduction to CS
Introduction to CS
 
Can computers think
Can computers thinkCan computers think
Can computers think
 
Introduction to computers
Introduction to computersIntroduction to computers
Introduction to computers
 
Limore Presentation : Light Color Version
Limore Presentation : Light Color VersionLimore Presentation : Light Color Version
Limore Presentation : Light Color Version
 
Limore Presentation : Dark Color Version
Limore Presentation : Dark Color VersionLimore Presentation : Dark Color Version
Limore Presentation : Dark Color Version
 
G044053060
G044053060G044053060
G044053060
 
PPT slides - MACHINE PERCEPTION LABORATORY
PPT slides - MACHINE PERCEPTION LABORATORYPPT slides - MACHINE PERCEPTION LABORATORY
PPT slides - MACHINE PERCEPTION LABORATORY
 
Computer and its uses in modern life.pptx
Computer and its uses in modern life.pptxComputer and its uses in modern life.pptx
Computer and its uses in modern life.pptx
 
introduction to it
introduction to itintroduction to it
introduction to it
 
soft computing manoj
soft computing manojsoft computing manoj
soft computing manoj
 
Algorithm Design and Complexity - Course 1&2
Algorithm Design and Complexity - Course 1&2Algorithm Design and Complexity - Course 1&2
Algorithm Design and Complexity - Course 1&2
 
INTRODUCTION TO COMPUTING OR FUNDAMENTAL COMPUTING
INTRODUCTION TO COMPUTING OR FUNDAMENTAL COMPUTINGINTRODUCTION TO COMPUTING OR FUNDAMENTAL COMPUTING
INTRODUCTION TO COMPUTING OR FUNDAMENTAL COMPUTING
 
Ai introduction
Ai  introductionAi  introduction
Ai introduction
 
Computer basics
Computer basicsComputer basics
Computer basics
 
01 knowledge
01 knowledge01 knowledge
01 knowledge
 
Small Basic Calculator Apps lesson
Small Basic Calculator Apps lessonSmall Basic Calculator Apps lesson
Small Basic Calculator Apps lesson
 
901470_Chap1.ppt.artificial intelligence
901470_Chap1.ppt.artificial intelligence901470_Chap1.ppt.artificial intelligence
901470_Chap1.ppt.artificial intelligence
 
Artificial Intelligence
Artificial IntelligenceArtificial Intelligence
Artificial Intelligence
 
Computer science basic
Computer science basicComputer science basic
Computer science basic
 

More from Darshan Gohel

Factors affecting Shelflife of food
Factors affecting Shelflife of foodFactors affecting Shelflife of food
Factors affecting Shelflife of food
Darshan Gohel
 
Drying and dehydration of fruit crops
Drying and dehydration of fruit cropsDrying and dehydration of fruit crops
Drying and dehydration of fruit crops
Darshan Gohel
 
Soil mechanics
Soil mechanics Soil mechanics
Soil mechanics
Darshan Gohel
 
Preservative releasers as food packaging
Preservative releasers as food packagingPreservative releasers as food packaging
Preservative releasers as food packaging
Darshan Gohel
 
Android application development
Android application developmentAndroid application development
Android application development
Darshan Gohel
 
Basics java programing
Basics java programingBasics java programing
Basics java programing
Darshan Gohel
 
ENGINEERING GRAPHICS-ED-FOR-BE/B.TECH-STUDENTS
ENGINEERING GRAPHICS-ED-FOR-BE/B.TECH-STUDENTSENGINEERING GRAPHICS-ED-FOR-BE/B.TECH-STUDENTS
ENGINEERING GRAPHICS-ED-FOR-BE/B.TECH-STUDENTS
Darshan Gohel
 
TRANSMISSION SYSTEM
TRANSMISSION SYSTEMTRANSMISSION SYSTEM
TRANSMISSION SYSTEM
Darshan Gohel
 

More from Darshan Gohel (8)

Factors affecting Shelflife of food
Factors affecting Shelflife of foodFactors affecting Shelflife of food
Factors affecting Shelflife of food
 
Drying and dehydration of fruit crops
Drying and dehydration of fruit cropsDrying and dehydration of fruit crops
Drying and dehydration of fruit crops
 
Soil mechanics
Soil mechanics Soil mechanics
Soil mechanics
 
Preservative releasers as food packaging
Preservative releasers as food packagingPreservative releasers as food packaging
Preservative releasers as food packaging
 
Android application development
Android application developmentAndroid application development
Android application development
 
Basics java programing
Basics java programingBasics java programing
Basics java programing
 
ENGINEERING GRAPHICS-ED-FOR-BE/B.TECH-STUDENTS
ENGINEERING GRAPHICS-ED-FOR-BE/B.TECH-STUDENTSENGINEERING GRAPHICS-ED-FOR-BE/B.TECH-STUDENTS
ENGINEERING GRAPHICS-ED-FOR-BE/B.TECH-STUDENTS
 
TRANSMISSION SYSTEM
TRANSMISSION SYSTEMTRANSMISSION SYSTEM
TRANSMISSION SYSTEM
 

Recently uploaded

LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by AnantLLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
Anant Corporation
 
Applications of artificial Intelligence in Mechanical Engineering.pdf
Applications of artificial Intelligence in Mechanical Engineering.pdfApplications of artificial Intelligence in Mechanical Engineering.pdf
Applications of artificial Intelligence in Mechanical Engineering.pdf
Atif Razi
 
smart pill dispenser is designed to improve medication adherence and safety f...
smart pill dispenser is designed to improve medication adherence and safety f...smart pill dispenser is designed to improve medication adherence and safety f...
smart pill dispenser is designed to improve medication adherence and safety f...
um7474492
 
Software Engineering and Project Management - Software Testing + Agile Method...
Software Engineering and Project Management - Software Testing + Agile Method...Software Engineering and Project Management - Software Testing + Agile Method...
Software Engineering and Project Management - Software Testing + Agile Method...
Prakhyath Rai
 
Call For Paper -3rd International Conference on Artificial Intelligence Advan...
Call For Paper -3rd International Conference on Artificial Intelligence Advan...Call For Paper -3rd International Conference on Artificial Intelligence Advan...
Call For Paper -3rd International Conference on Artificial Intelligence Advan...
ijseajournal
 
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
shadow0702a
 
Zener Diode and its V-I Characteristics and Applications
Zener Diode and its V-I Characteristics and ApplicationsZener Diode and its V-I Characteristics and Applications
Zener Diode and its V-I Characteristics and Applications
Shiny Christobel
 
SENTIMENT ANALYSIS ON PPT AND Project template_.pptx
SENTIMENT ANALYSIS ON PPT AND Project template_.pptxSENTIMENT ANALYSIS ON PPT AND Project template_.pptx
SENTIMENT ANALYSIS ON PPT AND Project template_.pptx
b0754201
 
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODELDEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
ijaia
 
Object Oriented Analysis and Design - OOAD
Object Oriented Analysis and Design - OOADObject Oriented Analysis and Design - OOAD
Object Oriented Analysis and Design - OOAD
PreethaV16
 
Digital Twins Computer Networking Paper Presentation.pptx
Digital Twins Computer Networking Paper Presentation.pptxDigital Twins Computer Networking Paper Presentation.pptx
Digital Twins Computer Networking Paper Presentation.pptx
aryanpankaj78
 
2. protection of river banks and bed erosion protection works.ppt
2. protection of river banks and bed erosion protection works.ppt2. protection of river banks and bed erosion protection works.ppt
2. protection of river banks and bed erosion protection works.ppt
abdatawakjira
 
Tools & Techniques for Commissioning and Maintaining PV Systems W-Animations ...
Tools & Techniques for Commissioning and Maintaining PV Systems W-Animations ...Tools & Techniques for Commissioning and Maintaining PV Systems W-Animations ...
Tools & Techniques for Commissioning and Maintaining PV Systems W-Animations ...
Transcat
 
Blood finder application project report (1).pdf
Blood finder application project report (1).pdfBlood finder application project report (1).pdf
Blood finder application project report (1).pdf
Kamal Acharya
 
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
PriyankaKilaniya
 
一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理
一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理
一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理
nedcocy
 
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
ydzowc
 
AI + Data Community Tour - Build the Next Generation of Apps with the Einstei...
AI + Data Community Tour - Build the Next Generation of Apps with the Einstei...AI + Data Community Tour - Build the Next Generation of Apps with the Einstei...
AI + Data Community Tour - Build the Next Generation of Apps with the Einstei...
Paris Salesforce Developer Group
 
TIME TABLE MANAGEMENT SYSTEM testing.pptx
TIME TABLE MANAGEMENT SYSTEM testing.pptxTIME TABLE MANAGEMENT SYSTEM testing.pptx
TIME TABLE MANAGEMENT SYSTEM testing.pptx
CVCSOfficial
 
5G Radio Network Througput Problem Analysis HCIA.pdf
5G Radio Network Througput Problem Analysis HCIA.pdf5G Radio Network Througput Problem Analysis HCIA.pdf
5G Radio Network Througput Problem Analysis HCIA.pdf
AlvianRamadhani5
 

Recently uploaded (20)

LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by AnantLLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
 
Applications of artificial Intelligence in Mechanical Engineering.pdf
Applications of artificial Intelligence in Mechanical Engineering.pdfApplications of artificial Intelligence in Mechanical Engineering.pdf
Applications of artificial Intelligence in Mechanical Engineering.pdf
 
smart pill dispenser is designed to improve medication adherence and safety f...
smart pill dispenser is designed to improve medication adherence and safety f...smart pill dispenser is designed to improve medication adherence and safety f...
smart pill dispenser is designed to improve medication adherence and safety f...
 
Software Engineering and Project Management - Software Testing + Agile Method...
Software Engineering and Project Management - Software Testing + Agile Method...Software Engineering and Project Management - Software Testing + Agile Method...
Software Engineering and Project Management - Software Testing + Agile Method...
 
Call For Paper -3rd International Conference on Artificial Intelligence Advan...
Call For Paper -3rd International Conference on Artificial Intelligence Advan...Call For Paper -3rd International Conference on Artificial Intelligence Advan...
Call For Paper -3rd International Conference on Artificial Intelligence Advan...
 
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
 
Zener Diode and its V-I Characteristics and Applications
Zener Diode and its V-I Characteristics and ApplicationsZener Diode and its V-I Characteristics and Applications
Zener Diode and its V-I Characteristics and Applications
 
SENTIMENT ANALYSIS ON PPT AND Project template_.pptx
SENTIMENT ANALYSIS ON PPT AND Project template_.pptxSENTIMENT ANALYSIS ON PPT AND Project template_.pptx
SENTIMENT ANALYSIS ON PPT AND Project template_.pptx
 
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODELDEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
 
Object Oriented Analysis and Design - OOAD
Object Oriented Analysis and Design - OOADObject Oriented Analysis and Design - OOAD
Object Oriented Analysis and Design - OOAD
 
Digital Twins Computer Networking Paper Presentation.pptx
Digital Twins Computer Networking Paper Presentation.pptxDigital Twins Computer Networking Paper Presentation.pptx
Digital Twins Computer Networking Paper Presentation.pptx
 
2. protection of river banks and bed erosion protection works.ppt
2. protection of river banks and bed erosion protection works.ppt2. protection of river banks and bed erosion protection works.ppt
2. protection of river banks and bed erosion protection works.ppt
 
Tools & Techniques for Commissioning and Maintaining PV Systems W-Animations ...
Tools & Techniques for Commissioning and Maintaining PV Systems W-Animations ...Tools & Techniques for Commissioning and Maintaining PV Systems W-Animations ...
Tools & Techniques for Commissioning and Maintaining PV Systems W-Animations ...
 
Blood finder application project report (1).pdf
Blood finder application project report (1).pdfBlood finder application project report (1).pdf
Blood finder application project report (1).pdf
 
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
Prediction of Electrical Energy Efficiency Using Information on Consumer's Ac...
 
一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理
一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理
一比一原版(爱大毕业证书)爱荷华大学毕业证如何办理
 
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
 
AI + Data Community Tour - Build the Next Generation of Apps with the Einstei...
AI + Data Community Tour - Build the Next Generation of Apps with the Einstei...AI + Data Community Tour - Build the Next Generation of Apps with the Einstei...
AI + Data Community Tour - Build the Next Generation of Apps with the Einstei...
 
TIME TABLE MANAGEMENT SYSTEM testing.pptx
TIME TABLE MANAGEMENT SYSTEM testing.pptxTIME TABLE MANAGEMENT SYSTEM testing.pptx
TIME TABLE MANAGEMENT SYSTEM testing.pptx
 
5G Radio Network Througput Problem Analysis HCIA.pdf
5G Radio Network Througput Problem Analysis HCIA.pdf5G Radio Network Througput Problem Analysis HCIA.pdf
5G Radio Network Througput Problem Analysis HCIA.pdf
 

Introduction to computer science

  • 1. Introduction to Computer Science  By- Darshan Gohel Darshan Gohel
  • 2. Overview of Discussion  What is computer science?  What is a computer?  What can computers do?  How do computers solve problems?  What is computer science?  Who invented computers?  Conceptual computers  Computing devices Darshan Gohel
  • 3. Learning Objectives  Define and use terminology  Examples: computer, computer science, algorithm, specification, correctness, efficiency, von Neumann machine  Distinguish between algorithms and non- algorithms  Know something about the history of computers (up to 1950) Darshan Gohel
  • 4. Which one is the computer? Rock Calculator Television Modern Airplane Washing Machine Computer Workstation Darshan Gohel
  • 5. Is it a Computer?  What questions would you ask?  What experiments would you run? Darshan Gohel
  • 6. Is a rock a computer?  Does not act or process  Takes no input and produces no output  Computers must be able to handle input and output Darshan Gohel
  • 7. Is a washing machine a computer?  Input: dirty clothes  Output: clean clothes  Does not handle information  Computers input and output information Darshan Gohel
  • 8. Is a television set a computer?  Input: information from cables or radio waves  Output: information as sound and picture  Does not process information  Computers process information by computing new results and answering queries Darshan Gohel
  • 9. Is a modern airplane a computer?  Input: information from radio waves  Output: manipulations to the airplane  Can only handle specific information necessary for flight control  Computers are general purpose because they can perform many different tasks Darshan Gohel
  • 10. Is an ordinary calculator a computer?  Input: numbers and mathematical operations  Output: answer  Handles any numeric task  Cannot remember which buttons are pressed  Computers are programmable so they can remember sequences of operations Darshan Gohel
  • 11. Definition of a Computer  a general purpose,  programmable,  information processor  with input and output Darshan Gohel
  • 12. Computing Agents  Definition of computers does not cover all that computer scientists study  Broader class of objects and methods – computing agents  Have some or all of the characteristics of a computer Darshan Gohel
  • 13. Specialized Computing Devices and Information Appliances  Devices limited by set of operations or programmability  Calculators limited to operations described by their buttons  Global Positioning System (GPS) calculates latitude and longitude from satellite signals  Cell phone allows one to surf the web  Information appliances – performs a single job well Darshan Gohel
  • 14. Embedded computers and robots  Machines with full-fledged computers inside  Washing machines, airplanes, ATMs, etc.  Such machines require highly reliable, predictable computer programs  All physical mechanisms controlled by computers are robotic devices  Restrict definition to machines that are general purpose and programmable  Robotic arm or cart Darshan Gohel
  • 15. Natural computing agents  Living organisms process information in their efforts to eat, survive, and reproduce  1940s study showed frogs collect less visual information than people  Identify rapidly moving objects as food, slowly moving objects as predators  Study physical events in terms of information they contain and process  Chemical reactions, crystal formations, plant growth, etc. Darshan Gohel
  • 16. What is a computer?  Definition of a computer is narrow  Definition of computing agent is broad  Although many computer scientists focus on the computer, some computer scientists deal with computing agents Darshan Gohel
  • 17. What can computers do – today?  Business productivity managers  Personal information managers  Spreadsheets  Database software  Desktop publishing  Multimedia encyclopedias  Simulate the physical world  Produce a music video Darshan Gohel
  • 18. What might computers do – tomorrow?  Diagnose diseases  MYCIN captures medical knowledge in rules that allowed a computer to identify an ailment based on symptoms  Control robots that walk, talk, and learn  CMU created a program that drove a van from Pittsburgh to D.C. using cameras for eyes  Compose music and create art Darshan Gohel
  • 19. How do computers solve problems?  Humans deconstruct problems into small operations that a computer can carry out  Writing an algorithm  Solve a problem by computer requires  State the problem clearly in a problem statement  Solve the problem with an algorithm that gives clear instructions  Use a computing agent to carry out the instructions Darshan Gohel
  • 20. Stating the problem clearly  Describes what to do, not how to do it  How do I get from Timonium Campus to the Beltway?  Solve general classes of problems  How do I get from point A in Timonium to point B?  What is the square root of y? Darshan Gohel
  • 21. Specifying a problem  Clear problem statement is called the specification  What information can we use as input  What the output, or solution, to our problem should look like  Specification for the square root problem  Input: A positive number y > 0  Output: A positive number x such that x2 = y  Make sure specification is not ambiguous Darshan Gohel
  • 22. Solving the problem using an Algorithm  Algorithm – a clear sequence of instructions for performing a task  a well-ordered sequence  of well-defined,  feasible operations  that takes finite time to carry out Darshan Gohel
  • 23. Finding the square root to the nearest tenth  For this example we are interested in the square root of 55 1. Find the two integers between which √55 lies  Do this by starting at 0 and continuing up through the integers until you find an integer whose square is less than 55 and the next integer has a square larger than 55 2. Find the first estimate by averaging the two integers 3. Divided 55 by the estimate. Compute it to one more place than you want in the final answer 4. Average the estimate and the result of step 3 5. Repeat steps 3 and 4 until the tenth digit does not change Darshan Gohel
  • 24. Almost Algorithms  To shampoo your hair 1. Rinse 2. Lather 3. Repeat  To set the time on the VCR 1. Open the front panel 2. Push the button 3. Set the hours, then the minutes  To write the Great American Novel 1. Get paper and pencil 2. Sit down 3. Write word on paper 4. If novel is great, quit. Otherwise, go back to step 3. Darshan Gohel
  • 25. Using the computing agent  The square root algorithm is only an algorithm for an agent that understands English and can perform arithmetic  Requirements imposed by the computing agent  Algorithm is in a language the computing agent understands  Algorithm uses primitive operations that the agent can carry out Darshan Gohel
  • 26. Necessity of artificial languages  Problems with natural languages (like English)  Flexible  Often ambiguous  Computers use artificial languages with precise meanings  mathematical equations, music notation, programming languages  Programming languages define primitive operations computing agents understand Darshan Gohel
  • 27. What is computer science?  The study of computers  The study of algorithmic processes including their  Theory  Analysis  Design  Efficiency  Implementation  Application Darshan Gohel
  • 28. Who invented computers?  Computer science has roots in two fields  Mathematics  Alan Turing and the Turing machine (1930s)  Developed theories with paper and pencil about how to perform computations by hand  Engineering  John von Neumann and the von Neumann machine (1940s)  Showed how to build physical computers out of electronic circuitry Darshan Gohel
  • 29. Mathematical Roots  Leibniz’s Dream (1600s)  Can we find a universal language for mathematical algorithms that will let us describe and solve any problem?  Reduce all reasoning to a fixed set of basic rules  Determine truth or falsity of sentences by fixed rules for manipulating sentences  George Boole (1800s)  Introduces binary notation of calculation  Computers use binary system for logic and arithmetic Darshan Gohel
  • 30. More on Theory  David Hilbert (1928)  Challenges the mathematical community to find an infallible, mechanical method for constructing and checking truth of mathematical statements  Interested in an algorithm  Alonzo Church, Alan Turing, and Kurt Gödel construct arguments that there is no solution to Hilbert’s Challenge  Turing builds a conceptual computer for his argument Darshan Gohel
  • 31. The Turing Machine and the Church- Turing Thesis  Turing Machine  Machine with a finite set of rules and an infinite amount of “scratch paper” for computation  No one has designed a physical computer that can do more than a Turing machine  Machine could not solve Hilbert’s problem  Church-Turning Thesis  The Turing Machine captures what we mean by computational systems  Is as powerful an any other mechanical computing agent Darshan Gohel
  • 32. Engineering Roots  First step development of calculators  Abacus – developed 5000 years ago in the Middle East  Pascaline – first mechanical calculator using gears for calculation (1642)  Charles Babbage’s Difference Engine – conceptual design that used hundreds of gears to compute mathematical functions (1820s) Darshan Gohel
  • 33. Electronic Circuits  Telegraph – uses electricity to convey letters and transmit information quickly (1844)  Hollerith Tabulating Machine – Uses electricity and punch cards to calculate the US census (1890)  Z2 – used circuitry to compute arithmetic operations (1930s) Darshan Gohel
  • 34. Programmed Devices  Jacquard Loom – weaves cloth using a pattern specified using punch cards (1801)  The Analytic Engine – conceptual design for a machine consisting of a Mill, Store, Printer, and Readers  Led Ada Lovelace to define programming concepts such as the subroutine  ENIAC – one of the first programmable electronic computers (1945)  Programmed by routing cables and flipping switches Darshan Gohel
  • 35. von Neumann Machine  Store programs in electronic memory along side the data (1943)  Move and manipulate a program like data  Enabled high-level programming languages Input Central Processing Unit (CPU) Memory Output Darshan Gohel
  • 36. Machine Languages  Only language computers directly understand  “Natural language” of computer  Defined by hardware design  Machine-dependent  Generally consist of strings of numbers  Ultimately 0s and 1s  Instruct computers to perform elementary operations  One at a time  Cumbersome for humans  Example: +1300042774 +1400593419 +1200274027 Darshan Gohel
  • 37. Assembly Languages  English-like abbreviations representing elementary computer operations  Clearer to humans  Incomprehensible to computers  Translator programs (assemblers)  Convert to machine language  Example: LOAD BASEPAY ADD OVERPAY STORE GROSSPAY Darshan Gohel
  • 38. High-level Languages  Similar to everyday English, use common mathematical notations  Single statements accomplish substantial tasks  Assembly language requires many instructions to accomplish simple tasks  Translator programs (compilers)  Convert to assembly language  Interpreter programs  Directly execute high-level language programs  Example: grossPay = basePay + overTimePay Darshan Gohel
  • 39. Programming Approaches  Structured programming (1960s)  Disciplined approach to writing programs  Clear, easy to test and debug, and easy to modify  Focus on what the program does  Object Oriented programming  Object is an entity characterized by a state and a behavior  state is encoded in the computer program as data  behavior is encoded as methods Darshan Gohel
  • 40. Objects  Reusable software components that model real world items  Meaningful software units  Date objects, time objects, paycheck objects, invoice objects, audio objects, video objects, file objects, record objects, etc.  Any noun can be represented as an object  More understandable, better organized and easier to maintain than structured programming  Favor modularity  Software reuse  Libraries Darshan Gohel
  • 41. C++  C++ programs  Built from pieces called classes and functions  C++ standard library  Rich collections of existing classes and functions  “Building block approach” to creating programs  “Software reuse” Darshan Gohel
  • 42. Basics of a Typical C++ Environment  C++ systems  Program-development environment  Language  C++ Standard Library Darshan Gohel
  • 43. Basics of a Typical C++ Environment Phases of C++ Programs: 1. Edit 2. Preprocess 3. Compile 4. Link 5. Load 6. Execute Loader Program is created in the editor and stored on disk. Preprocessor program processes the code. Loader puts program in memory. CPU takes each instruction and executes it, possibly storing new data values as the program executes. Compiler Compiler creates object code and stores it on disk. Linker links the object code with the libraries, creates a.out and stores it on disk Editor Preprocessor Linker CPU . . . . . . . . . . . . Disk Disk Disk Disk Disk Edit Compile Run Make Primary Memory Primary Memory Darshan Gohel