Chapter 1: Why Program? Computers and Programming. Why Program?

Similar documents
Chapter 1: Why Program? Main Hardware Component Categories 8/23/2014. Main Hardware Component Categories: Why Program?

Chapter 1: Introduction to Computers and Programming

Chapter 1 Introduction to Computers and Programming

Week 0: Intro to Computers and Programming. 1.1 Why Program? 1.2 Computer Systems: Hardware and Software. Hardware Components

Introduction. Arizona State University 1

CHAPTER 1: INTRODUCTION TO COMPUTERS AND PROGRAMMING. 1 Muhalim Mohamed Amin Faculty of

BITG 1113: Introduction To Computers And Programming Language LECTURE 1 LECTURE 1 1

SCSP Programming Technique C

Chapter 1. Introduction to Programming and Visual Basic Pearson Addison-Wesley. All rights reserved. Addison Wesley is an imprint of

CHAPTER 1 Introduction to Computers and Java

Chapter 1: An Overview of Computers and Programming Languages. Objectives. Objectives (cont d.) Introduction

An Overview of the Computer System. Kafui A. Prebbie 24

C H A P T E R 1. Introduction to Computers and Programming

Chapter 1: Introduction to Computers and Java

8/23/2014. Chapter Topics. Introduction. Java History. Why Program? Java Applications and Applets. Chapter 1: Introduction to Computers and Java

Chapter 1 INTRODUCTION

The Programming Process Summer 2010 Margaret Reid-Miller

Chapter Two. Hardware Basics: Inside the Box

AN INTRODUCTION TO THE COMPUTER

Topics. Hardware and Software. Introduction. Main Memory. The CPU 9/21/2014. Introduction to Computers and Programming

Chapter. Focus of the Course. Object-Oriented Software Development. program design, implementation, and testing

Programming 1. Lecture 1 COP 3014 Fall August 28, 2017

Elements of Computers and Programming Dr. William C. Bulko. What is a Computer?

Programming 1 - Honors

Intro to Programming & C Why Program? 1.2 Computer Systems: Hardware and Software. Why Learn to Program?

Basic Computer Programming for ISNE. Santi Phithakkitnukoon ผศ.ดร.ส นต พ ท กษ ก จน ก ร

Ch. 1: Computer System part I

Information Communications Technology (CE-ICT) 6 th Class

Chapter 1 Computer and Programming. By Zerihun Alemayehu

Computer is an electronic machine that can receive, store, transform and output data of all kinds (image, text, numeric, graphics and sound).

Introduction to Computers. Joslyn A. Smith

Welcome to Solving Problems with Computers I

KULLEĠĠ SAN BENEDITTU Secondary School, Kirkop

Electricity: Voltage. Gate: A signal enters the gate at a certain voltage. The gate performs operations on it, and sends it out was a new signal.

COMP Computer Basics. Yi Hong May 13, 2015

Sahalsoftware college. Welcome To understanding Basic Computer Concept

National 5 Computing Science Software Design & Development

Computer Fundamentals

Chapter 1 Introduction to Computers and C++ Programming

CMSC 104 -Lecture 2 John Y. Park, adapted by C Grasso

1.1 Bits and Bit Patterns. Boolean Operations. Figure 2.1 CPU and main memory connected via a bus. CS11102 Introduction to Computer Science

15/09/15. Introduction to Computers & The Internet. Contents. Computer hardware and software. Input and output devices CPU. Memory.

Information Science 1

Java and Software Design

1.The First Instrument known in the history of computers was. a) Pascal s adding machine b) Napier s bones c) Abacus d) Analytical Engine

CS1500 Algorithms and Data Structures for Engineering, FALL Virgil Pavlu, Jose Annunziato,

Lab Determining Data Storage Capacity

Computer Basics 1/24/13. Computer Organization. Computer systems consist of hardware and software.

LECTURE SCHEDULE 2. Units of Memory, Hardware, Software and Classification of Computers

What is the typical configuration of a computer sold today? 1-1

CSCE150A. Administrivia. Overview. Hardware. Software. Example. Program. Pseudocode. Flowchart. Control Structures. Hello World Program CSCE150A

Computer Science & Engineering 150A Problem Solving Using Computers

Scientific Computing

Computers Are Your Future

Chapter 2: Introduction to C++

Introduction To Computers: Hardware

CS 241 Computer Programming. Introduction. Teacher Assistant. Hadeel Al-Ateeq

System Unit Components Chapter2

Introduction to Computers and Java

Chapter 1. Introduction to Computers and Programming. M hiwa ahmad aziz

Computer Basics 1/6/16. Computer Organization. Computer systems consist of hardware and software.

Introduction To Computers: Hardware and Software

Chapter 2: Special Characters. Parts of a C++ Program. Introduction to C++ Displays output on the computer screen

COMPUTER SYSTEM. COMPUTER SYSTEM IB DP Computer science Standard Level ICS3U. COMPUTER SYSTEM IB DP Computer science Standard Level ICS3U

Zimmer CSCI /24/18. CHAPTER 1 Overview. COMPUTER Programmable devices that can store, retrieve, and process data.

Computer Organization

Day 3. Storage Devices + Types of Memory + Measuring Memory + Computer Performance

Pharmacy college.. Assist.Prof. Dr. Abdullah A. Abdullah

1a Computers, Problem Solving!

CMSC 1513 Lecture 1.2

2.1. Chapter 2: Parts of a C++ Program. Parts of a C++ Program. Introduction to C++ Parts of a C++ Program

Computer Organization

EKT 120/4 Computer Programming KOLEJ UNIVERSITI KEJURUTERAAN UTARA MALAYSIA

INTRODUCTION TO COMPUTERS

Your First C++ Program. September 1, 2010

Management Information Systems OUTLINE OBJECTIVES. Information Systems: Computer Hardware. Dr. Shankar Sundaresan

Main Parts of Personal Computer

Agenda Computer Hardware Input Devices Output Devices Secondary Storage Computer Software System Software Application Software Working with Windows

9/11/08 (c) 2008 Matthew J. Rutherford Class (c) 2008 Matthew J. Rutherford Class

Chapter 1. Data Storage Pearson Addison-Wesley. All rights reserved

Computers Are Your Future

Chapter 2. Prepared By: Humeyra Saracoglu

Types of Data. PE 231 Education Media AND Technology. Information. Assessment. Information Concepts

Components of a Computer System

I1100 E Introduction to computer.

Introduction To Computer Hardware. Hafijur Rahman

! Learn how to think like a computer scientist. ! Learn problem solving. ! Read and write code. ! Understand object oriented programming

Chapter 2. Working with Disks and Other Removable Media

Introduction to Computers and Java

Chapter One. Introduction to Computer System

Parts are adapted from Windows 98 by Mark Twain Media, Inc. A Computer System has Hardware and Software

Copyright 2012 Pearson Education, Inc. Publishing as Prentice Hall

Chapter 4 The Components of the System Unit

Introduction to Computers

HARDWARE AND OPERATING SYSTEMS

1- Write a single C++ statement that: A. Calculates the sum of the two integrates 11 and 12 and outputs the sum to the consol.

Computer Programming. Dr. Fahad Computer Science Deptt.

2011 Francisco Delgadillo

Padasalai.Net s Computer Instructor TRB Exam Study Material Chapter One Introduction to Computer

Downloaded From :

Transcription:

Chapter 1: Introduction to Computers and Programming 1.1 Why Program? Why Program? Computer programmable machine designed to follow instructions Program instructions in computer memory to make it do something Programmer person who writes instructions (programs) to make computer perform a task 1.2 Computer Systems: Hardware and Software SO, without programmers, no programs; without programs, a computer cannot do anything Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-3

Main Hardware Component Categories: Main Hardware Component Categories 1. Central Processing Unit (CPU) 2. Main Memory 3. Secondary Memory / Storage 4. Input Devices 5. Output Devices Figure 1-1 Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-5 Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-6 Central Processing Unit (CPU) CPU Organization Comprised of: Control Unit Retrieves and decodes program instructions Coordinates activities of all other parts of computer Arithmetic & Logic Unit Hardware optimized for high-speed numeric calculation Hardware designed for true/false, yes/no decisions Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-7 Figure 1-2 Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-8

Main Memory Main Memory It is volatile. Main memory is erased when program terminates or computer is turned off Also called Random Access Memory (RAM) Organized as follows: bit: smallest piece of memory. Has values 0 (off, false) or 1 (on, true) byte: 8 consecutive bits. Bytes have addresses Addresses Each byte in memory is identified by a unique number known as an address Other units for measuring memory sizes: Kilobyte (KB) = 1024 bytes Megabyte (MB) = 1024 KB Gigabyte (GB) = 1024 MB Terabyte (TB) = 1024 GB Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-9 Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-10 Main Memory Secondary Storage In the above figure, the number 149 (10010101 in binary) is stored in the byte with the address 16, and the number 72 (1001000 in binary) is stored at address 23. Non-volatile: data retained when program is not running or computer is turned off Comes in a variety of media: magnetic: floppy disk, hard drive optical: CD-ROM, DVD Flash drives, connected to the USB port Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-11 Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-12

Input Devices Output Devices Devices that send information to the computer from outside Many devices can provide input: Keyboard, mouse, scanner, digital camera, microphone Disk drives, CD drives, and DVD drives Output is information sent from a computer program to the outside world. The output is sent to an output device Many devices can be used for output: Computer monitor and printer Disk drives Writable CD and DVD drives Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-13 Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-14 Software Programs That Run on a Computer Categories of software: Operating system: programs that manage the computer hardware and the programs that run on them. Examples: Windows, UNIX, Linux, MacOS Application software: programs that provide services to the user. They solve specific problems. Examples : word processing, games, programs to solve specific problems 1.3 Programs and Programming Languages Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-15

Programs and Programming Languages Example Algorithm for Calculating Gross Pay A program is a set of instructions that the computer follows to perform a task A programming language is a special language used to write computer programs We start with an algorithm, which is a set of well-defined steps for solving a problem Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-17 Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-18 Machine Language Machine Language Although the previous algorithm defines the steps for calculating the gross pay, it is not ready to be executed on the computer. The computer only executes machine language instructions. Machine language instructions are binary numbers, such as 1011010000000101 Rather than writing programs in machine language, programmers use high level programming languages. Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-19 Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-20

Programs and Programming Languages Some Well-Known Programming Languages (Table 1-1 on Page 9) Types of languages: Low-level: used for communication with computer hardware directly. Often written in binary machine code (0 s/1 s) directly. High-level: closer to human language BASIC FORTRAN COBOL C C# C++ Java Ruby Visual Basic JavaScript Python Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-21 Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-22 From a High-level Program to an Executable File From a High-level Program to an Executable File a) Create file containing the program with a text editor. b) Run preprocessor to convert source file directives to source code program statements. c) Run compiler to convert source program into machine instructions. d) Run linker to connect hardware-specific code to machine instructions, producing an executable file. Steps b c or even b d are often performed by a single command or button click. Errors detected at any step will prevent execution of following steps. Source Code Preprocessor Modified Source Code Compiler Object Code Linker Executable Code Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-23 Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-24

Integrated Development Environments (IDEs) Integrated Development Environments (IDEs) An integrated development environment, or IDE, combine all the tools needed to write, compile, and debug a program into a single software application. Examples are Microsoft Visual Studio, Turbo C++ Explorer, CodeWarrior, etc. Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-25 Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-26 What Is a Program Made Of? 1.4 What Is a Program Made Of? A program is a text file containing lines of codes in some programming language Common elements in programming languages: Key Words Programmer-Defined Identifiers Operators Punctuation Syntax Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-28

Program 1-1 Key Words 1 // This program calculates the user's pay. 2 #include <iostream> 3 using namespace std; 4 5 int main() 6 { 7 double hours, rate, pay; 8 9 // Get the number of hours worked. 10 cout << "How many hours did you work? "; 11 cin >> hours; 12 13 // Get the hourly pay rate. 14 cout << "How much do you get paid per hour? "; 15 cin >> rate; 16 17 // Calculate the pay. 18 pay = hours * rate; 19 20 // Display the pay. 21 cout << "You have earned $" << pay << endl; 22 return 0; 23 } (Note: The line numbers are not part of the program) Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-29 Also known as reserved words Have a special meaning in C++ Can not be used for any other purpose Key words in the Program 1-1: using, namespace, int, double, and return. In Visual Studio, key words will be displayed in blue color Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-30 Key Words Programmer-Defined Identifiers 1 // This program calculates the user's pay. 2 #include <iostream> 3 using namespace std; 4 5 int main() 6 { 7 double hours, rate, pay; 8 9 // Get the number of hours worked. 10 cout << "How many hours did you work? "; 11 cin >> hours; 12 13 // Get the hourly pay rate. 14 cout << "How much do you get paid per hour? "; 15 cin >> rate; 16 17 // Calculate the pay. 18 pay = hours * rate; 19 20 // Display the pay. 21 cout << "You have earned $" << pay << endl; 22 return 0; 23 } Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-31 Names made up by the programmer Not part of the C++ language Used to represent various things: variables (memory locations), functions, etc. In Program 1-1: hours, rate, and pay. Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-32

Programmer-Defined Identifiers Operators 1 // This program calculates the user's pay. 2 #include <iostream> 3 using namespace std; 4 5 int main() 6 { 7 double hours, rate, pay; 8 9 // Get the number of hours worked. 10 cout << "How many hours did you work? "; 11 cin >> hours; 12 13 // Get the hourly pay rate. 14 cout << "How much do you get paid per hour? "; 15 cin >> rate; 16 17 // Calculate the pay. 18 pay = hours * rate; 19 20 // Display the pay. 21 cout << "You have earned $" << pay << endl; 22 return 0; 23 } Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-33 Used to perform operations on data Many types of operators: Arithmetic - ex: +,-,*,/ Assignment ex: = Some operators in Program1-1: << >> = * Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-34 Operators Punctuation 1 // This program calculates the user's pay. 2 #include <iostream> 3 using namespace std; 4 5 int main() 6 { 7 double hours, rate, pay; 8 9 // Get the number of hours worked. 10 cout << "How many hours did you work? "; 11 cin >> hours; 12 13 // Get the hourly pay rate. 14 cout << "How much do you get paid per hour? "; 15 cin >> rate; 16 17 // Calculate the pay. 18 pay = hours * rate; 19 20 // Display the pay. 21 cout << "You have earned $" << pay << endl; 22 return 0; 23 } Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-35 Characters that mark the end of a statement, or that separate items in a list In Program 1-1:, and ; Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-36

Punctuation Syntax 1 // This program calculates the user's pay. 2 #include <iostream> 3 using namespace std; 4 5 int main() 6 { 7 double hours, rate, pay; 8 9 // Get the number of hours worked. 10 cout << "How many hours did you work? "; 11 cin >> hours; 12 13 // Get the hourly pay rate. 14 cout << "How much do you get paid per hour? "; 15 cin >> rate; 16 17 // Calculate the pay. 18 pay = hours * rate; 19 20 // Display the pay. 21 cout << "You have earned $" << pay << endl; 22 return 0; 23 } Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-37 The rules of grammar that must be followed when writing a program Controls the use of key words, operators, programmer-defined symbols, and punctuation Rules for programming languages are more rigid than English Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-38 Lines and Statements A program is usually written in a sequence of lines and statements Most lines contain meaningful information Some lines are empty to make the program more readable Most lines contain one statement which is a complete instruction that causes the computer to do something Ex: cout << How many hours did you work? ; Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-39 Variables A variable is a named storage location in the computer s memory for holding a piece of data. In Program 1-1 we used three variables: The hours variable was used to hold the hours worked The rate variable was used to hold the pay rate The pay variable was used to hold the gross pay Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-40

Input, Processing, and Output 1.5 Input, Processing, and Output Three steps that a program typically performs: 1) Gather input data: from keyboard from files on disk drives 2) Process the input data 3) Display the results as output: send it to the screen write to a file Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-42 The Programming Process 1.6 The Programming Process The programming process consists of several steps, which include designing, creating, testing, and debugging activities Software engineering is related to the whole process of developing computer software Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-44

The Programming Process Copyright 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1-45