Beginning Snapshots Chapter 0. C++ An Introduction to Computing, 3rd ed. 2 Objectives Give an overview of computer science Show its breadth Provide context.

Slides:



Advertisements
Similar presentations
An Overview of the Computer System
Advertisements

Laboratorio di Calcolo II Obbiettivo: insegnarvi a scrivere programmi in c++ 2 ore/settimana di lezione in aula 4 ore/settimana di esercitazioni personali.
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Lecture 1: Overview of Computers & Programming
 Computer hardware components are the physical pieces of the computer.  The major hardware components of a computer are: – The central processing.
Computer Programming Belaid Moa Phone: Office : ECS 115 Spring 2008.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design First Edition by Tony Gaddis.
Computer Basics. What is a Computer? A computer is a machine that can take inputs from the user, process that information, store that information as needed.
Lecture 1: Intro to Computers Yoni Fridman 6/28/01 6/28/01.
Introduction to Computer Systems
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. COMPSCI 125 Introduction to Computer Science I.
Introduction to Computers
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. COMPSCI 125 Introduction to Computer Science I.
1 Introduction to Computers Prof. Sokol Computer and Information Science Brooklyn College.
Hardware and Software Basics. Computer Hardware  Central Processing Unit - also called “The Chip”, a CPU, a processor, or a microprocessor  Memory (RAM)
Computer Fundamentals. A Computer Is a System Input Processing Output Data is entered into the computer Becomes useful information The data is processed.
Introduction to Computers and Python. What is a Computer? Computer- a device capable of performing computations and making logical decisions at speeds.
1 Chapter-01 Introduction to Computers and C++ Programming.
Chapter Introduction to Computers and Programming 1.
Introduction to Programming Dr Masitah Ghazali Programming Techniques I SCJ1013.
Course Introduction C++ An Introduction to Computing.
Computer Organization Hardware and Software. Computing Systems Computers have two kinds of components: Hardware, consisting of its physical devices (CPU,
INTRODUCTION TO COMPUTER PROGRAMMING itc-314 LECTURE 01.
Topics Introduction Hardware and Software How Computers Store Data
What is a Computer ? Computers are Electronic Machines that process (performs calculation and manipulation) Data under the control of Set of Instructions.
Laboratorio di Calcolo I Docente: prof. Berardi (Dip. Informatica) Lezione introduttiva su Computing ed esercitazioni di Unix/Linux tenute da Fabrizio.
CISC105 General Computer Science Class 1 – 6/5/2006.
Introduction to Computers
An Introduction to Computers August 12, 2008 Mrs. C. Furman.
1 Introduction to Computers Lect 1 Won’t tell you much you don’t know. (Misleading– the course gets more conceptual as we create webpages.) Will go into.
Computer Parts. Two Basic Parts Hardware & Software.
Course ILT Basics of information technology Unit objectives Define “information technology” (IT), distinguish between hardware and software, and identify.
Computer Basics 2.
Beginning Snapshots Chapter 0. C++ An Introduction to Computing, 3rd ed. 2 Objectives Give an overview of computer science Show its breadth Provide context.
What is computer hardware? Computer hardware are the physical components of the computer.
Fundamental Programming: Fundamental Programming K.Chinnasarn, Ph.D.
School of Computer Science & Information Technology G6DICP Introduction to Computer Programming Milena Radenkovic.
Computer Architecture
1 Programming Fundamentals How to Program in C++ How to Program in C++
An Overview of the Computer System lesson 1. This lesson includes the following sections: The Parts of a Computer System Looking Inside the Machine Software:
CS 127 Introduction to Computer Science. What is a computer?  “A machine that stores and manipulates information under the control of a changeable program”
Chapter 1 Computers, Compilers, & Unix. Overview u Computer hardware u Unix u Computer Languages u Compilers.
1 THE COMPUTER. 2 Input Processing Output Storage 4 basic functions.
Chapter 1 : Overview of Computer and Programming By Suraya Alias
Computer Systems. Bits Computers represent information as patterns of bits A bit (binary digit) is either 0 or 1 –binary  “two states” true and false,
Computer Programming (1) Code & No.: CS 102 CREDIT HOURS: 5 UNIT Lecture 3.0 hours/week Lab: 2.0 hour/on every week a. This course introduces the students.
Welcome to Technology Application Jeopardy. Hardware More Hardware Jobs & Software Computer Types Storage
1 Introduction to Computers Prof. Sokol Computer and Information Science Brooklyn College.
Chapter 1 An Overview of Computers and Programming Languages.
1 Chapter 1 Background Fundamentals of Java: AP Computer Science Essentials, 4th Edition Lambert / Osborne.
INTRODUCTION TO COMPUTERS. A computer system is an electronic device used to input data, process data, store data for later use and produce output in.
Basic Computer Fundamentals
BASIC PROGRAMMING C SCP1103 (02)
An Overview of the Computer System
Topics Introduction Hardware and Software How Computers Store Data
BASIC PROGRAMMING C SCP1103 (02)
Overview of Computers and Programming Chapter 1
COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE
An Introduction to The computer.
Computer Organization
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
An Introduction to The computer.
Looking Inside the machine (Types of hardware, CPU, Memory)
An Overview of the Computer System
Topics Introduction Hardware and Software How Computers Store Data
Chapter 3 Hardware and software 1.
Overview of Computer Architecture and Organization
Chapter 3 Hardware and software 1.
Computer components is a programmable machine that receives input, stores and manipulates data, and provides output in a useful format. Computer The computer.
ICS103 Programming in C 1: Overview of Computers And Programming
Presentation transcript:

Beginning Snapshots Chapter 0

C++ An Introduction to Computing, 3rd ed. 2 Objectives Give an overview of computer science Show its breadth Provide context for computer science concepts Events from the past Describe basic components, organization of a computer

C++ An Introduction to Computing, 3rd ed. 3 Areas of Computer Science Algorithms and Data Structures Architecture Artificial Intelligence and Robotics Database and Information Retrieval Human-Computer Communication Numerical and Symbolic Computation Operating Systems Programming Languages Software Methodology and Engineering Social and Professional Context

C++ An Introduction to Computing, 3rd ed. 4 Important Concepts in Computer History The mechanism of arithmetic The stored program The graphical user interface The computer network

C++ An Introduction to Computing, 3rd ed. 5 Computing Systems Computers have two kinds of components: Hardware – physical devices such as CPU memory storage devices Software – programs such as Operating system applications utilities

C++ An Introduction to Computing, 3rd ed. 6 Hardware: CPU Central Processing Unit (CPU): the “brain” of the machine Circuitry that performs arithmetic and logical ML statements CPU measurement Speed (roughly) in megahertz (millions of clock-ticks per second) Examples Intel Pentium, AMD K6, Motorola PowerPC, Sun SPARC,

C++ An Introduction to Computing, 3rd ed. 7 Storage Random Access Memory (RAM) “Main” memory, which is fast, but volatile... Analogous to a person’s short-term memory. Many tiny “on-off” switches “on” is represented by 1, “off” by 0. Each switch is called a binary digit, or bit. 8 bits is called a byte bytes =1024 bytes is called a kilobyte (1K) 2 20 bytes is called a megabyte (1M).

C++ An Introduction to Computing, 3rd ed. 8 Storage Secondary Memory (Disk): Stable storage using magnetic or optical media. Analogous to a person’s long-term memory. Slower to access than RAM. Examples: floppy disk (measured in kilobytes) hard disk (measured in gigabytes (2 30 bytes)) CD-ROM (measured in megabytes),...

C++ An Introduction to Computing, 3rd ed. 9 Input and Output Input devices Instructions and data must be encoded in binary form and transmitted to the CPU Examples: keyboard mouse, trackball, joystick scanner audio, video capture boards

C++ An Introduction to Computing, 3rd ed. 10 Input and Output Output devices Convert data from binary to another form Examples monitors, printers sound, video robotics control Communication between CPU and peripheral devices is through ports Ports communicate via the system bus

C++ An Introduction to Computing, 3rd ed. 11 Software: OS OS acts as the “manager” of the system, Making sure that each hardware device interacts smoothly with the others. Provides an interface Enables user to interact with the computer, Awaits user input if no application is running. Examples: MacOS, Windows-95, Windows-NT, UNIX, Linux, Solaris,...

C++ An Introduction to Computing, 3rd ed. 12 Software: Applications Applications are non-OS programs Perform some useful task Including word processors, spreadsheets, databases, web browsers, C++ compilers Example C++ compilers/environments: CodeWarrior (MacOS, Win95, WinNT, Solaris) GNU C++ (UNIX, Linux) Turbo/Borland C++ (Win95, WinNT) Visual C++ (Win95, WinNT)

C++ An Introduction to Computing, 3rd ed. 13 Software: User Programs Programs that are neither OS programs nor applications are called user programs. User programs are what you’ll be writing in this course.

C++ An Introduction to Computing, 3rd ed. 14 What is Programming? Computer Program A sequence of statements that instruct a computer in how to solve a problem. Programming The act of designing, writing and maintaining a program Programmers People who write programs

C++ An Introduction to Computing, 3rd ed. 15 What kinds of statements do computers understand? A computer only understands machine language statements. Characteristics of machine language A sequence of ones and zeros Cause the computer to perform a particular action, such as add, subtract, multiply,...

C++ An Introduction to Computing, 3rd ed. 16 Machine Language (ML) ML statements Stored in a computer’s memory Computer memory is a sequence of switches. an “on” switch is represented by 1, an “off” switch is represented by 0. ML thus appears to be binary (base-2):

C++ An Introduction to Computing, 3rd ed. 17 Early Computers... required a programmer to write in ML... Problem Easy to make mistakes! Such mistakes are hard to find! Not portable -- only runs on one kind of machine! Programming was very difficult!

C++ An Introduction to Computing, 3rd ed. 18 A Bright Idea Devise a set of abbreviations (mnemonics) corresponding to the ML statements Create a program (the assembler) to translate them into ML. ADD 34, R1 MOVER1,1200 CMPRR1, R Assembler Assembly language statements (mnemonics) Machine language statements

C++ An Introduction to Computing, 3rd ed. 19 Advantages and Disadvantages More natural than binary. Much easier to read programs Much easier to find and fix mistakes Still not portable to different machines Each machine had its own set of mnemonics Each had its own assembler

C++ An Introduction to Computing, 3rd ed. 20 High Level Languages Improvement on assembly language Devise a set of statements that are close to human language ( if, while, do,...) Create a program to translate them into ML. The set of statements is called a high level language (HLL) The translation program is called a compiler.

C++ An Introduction to Computing, 3rd ed. 21 Contrast Assembler and HLL Compiler Assembler translates one mnemonic into one ML statement Compiler translates one HL statement into several ML statements z = x + y; Compiler

C++ An Introduction to Computing, 3rd ed. 22 Advantage of HLLs Programs are easier to read Errors are easier to find Programs are portable from one computer to another Assumes the language is standard Just create a new compiler which does the translation into the correct ML

C++ An Introduction to Computing, 3rd ed. 23 Objectives in Programming A program should solve a problem: Correctly Efficiently Readably In user-friendly fashion It actually solves the problem Without wasting time or space Understandable by another person In a way that is easy for its user to use

C++ An Introduction to Computing, 3rd ed. 24 Summary of "Levels" of Computer Languages Low level ML in binary language Medium Level Assembly language High Level as in C++ Hard to read, not portable Mnemonics, easier to read, still not portable Reads like English and algebra, portable