Download presentation
Presentation is loading. Please wait.
Published byAndra Davis Modified over 8 years ago
1
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Chapter 1: Introduction to Computers and Programming
2
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 1.1 Why Program?
3
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 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 SO, without programmers, no programs; without programs, a computer cannot do anything
4
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 1.2 Computer Systems: Hardware and Software
5
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Main Hardware Component Categories: 1.Central Processing Unit (CPU) 2.Main Memory 3.Secondary Storage 4.Input Devices 5.Output Devices
6
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Main Hardware Component Categories Figure 1-2
7
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Central Processing Unit (CPU) 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
8
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. CPU Organization Figure 1-3
9
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Main Memory Called Random Access Memory (RAM) Volatile Erased when the computer is turned off
10
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Secondary Storage Non-volatile Data retained when computer is turned off Variety of media: Magnetic: Floppy disk Hard drive Optical: Compact Disk-Read Only Memory (CD-ROM) Digital Video Disk (DVD) Blu-Ray Disk (BRD) Universal Serial Bus (USB) drives Secure Digital High Capacity (SDHC) cards
11
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Memory and Storage Organized as follows: bit: Smallest piece of memory Has values 0 (off, false) or 1 (on, true) byte: 8 consecutive bits Each byte is identified by a unique number, its address Each byte is unique (no overlap)
12
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Memory and Storage Each block above represents a byte The number 149 is stored in the byte with the address 16 The number 72 is stored at address 23. 255 is the largest number for a byte
13
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Input Devices Devices that send information to the computer from outside Many devices can provide input: Initial Input: Keyboard, mouse, scanner, digital camera, microphone, etc. Secondary Storage: Hard drives, CD drives, DVD drives, etc.
14
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Software-Programs That Run on a Computer Categories of software: System software: Programs that manage the computer hardware and the programs that run on them Examples: operating systems, utility programs, device drivers Application software: Programs that provide services to the user Examples: word processing, games, programs to solve specific problems, software development tools
15
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 1.3 Programs and Programming Languages
16
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Programs and Programming Languages A program is a set of instructions for the computer to follow to perform a task Starts with an algorithm A set of well-defined steps.
17
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Example Algorithm for Calculating Gross Pay
18
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Machine Language The previous algorithm defines the steps for calculating the gross pay, but it is not ready to be executed on the computer. The computer only executes machine language instructions
19
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Machine Language Machine language instructions are binary numbers, such as 10110100 00000101 Programmers use programming languages instead of writing programs in machine language
20
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Programs and Programming Languages Types of languages: Low-level: used for communication with computer hardware directly. Often written in binary machine code (0’s/1’s) directly or code very close to machine language High-level: closer to human language
21
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Some Well-Known High-Level Programming Languages BASIC FORTRAN COBOL C C++ C# Java JavaScript Python Ruby Visual Basic
22
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 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–d are often performed by a single command or button click. Errors detected at any step will prevent execution of following steps.
23
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. From a High-Level Program to an Executable File #include int main() { std::cout << “Hello World” << std::endl; return 0; }
24
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 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 C++, Turbo C++ Explorer, CodeWarrior, Dev C++, CodeBlocks, etc.
25
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Integrated Development Environments (IDEs)
26
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 1.4 What is a Program made of?
27
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. What is a Program Made of? Common elements in programming languages: Key Words Operators Punctuation Programmer-Defined Identifiers Syntax Rules on how to integrate all of the above
28
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Program 1-1 // This program calculates the user's pay #include int main() { double hours, rate, pay; // Get the number of hours worked std::cout << "How many hours did you work? "; std::cin >> hours; // Get the hourly rate std::cout << "How much do you get paid per hour? "; std::cin >> rate; // Calculate the pay pay = hours * rate; // Display the pay std::cout << "You have earned $" << pay << std::endl; return 0; }
29
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Key Words 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: int double return
30
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. // This program calculates the user's pay #include int main() { double hours, rate, pay; // Get the number of hours worked std::cout << "How many hours did you work? "; std::cin >> hours; // Get the hourly rate std::cout << "How much do you get paid per hour? "; std::cin >> rate; // Calculate the pay pay = hours * rate; // Display the pay std::cout << "You have earned $" << pay << std::endl; return 0; } Key Words
31
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Programmer-Defined Identifiers Names made up by the programmer Not part of the C++ language Represent various things: variables, functions, etc. In Program 1-1: hours rate pay
32
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. // This program calculates the user's pay #include int main() { double hours, rate, pay; // Get the number of hours worked std::cout << "How many hours did you work? "; std::cin >> hours; // Get the hourly rate std::cout << "How much do you get paid per hour? "; std::cin >> rate; // Calculate the pay pay = hours * rate; // Display the pay std::cout << "You have earned $" << pay << std::endl; return 0; } Programmer-Defined Identifiers
33
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Operators Used to perform operations on data Many types of operators: Arithmetic: +,-,*,/ Assignment: = Some operators in Program1-1: << >> = *
34
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. // This program calculates the user's pay #include int main() { double hours, rate, pay; // Get the number of hours worked std::cout << "How many hours did you work? "; std::cin >> hours; // Get the hourly rate std::cout << "How much do you get paid per hour? "; std::cin >> rate; // Calculate the pay pay = hours * rate; // Display the pay std::cout << "You have earned $" << pay << std::endl; return 0; } Operators
35
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Punctuation Characters that mark the end of a statement, or that separate items in a list In Program 1-1:, ; " ( ) { } //
36
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. // This program calculates the user's pay #include int main() { double hours, rate, pay; // Get the number of hours worked std::cout << "How many hours did you work? "; std::cin >> hours; // Get the hourly rate std::cout << "How much do you get paid per hour? "; std::cin >> rate; // Calculate the pay pay = hours * rate; // Display the pay std::cout << "You have earned $" << pay << std::endl; return 0; } Punctuation
37
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Syntax The rules of grammar that must be followed when writing a program Controls the use of key words, operators, programmer-defined identifiers, and punctuation
38
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Programmer Defined Identifiers System Rules Letters, Digits, Underscores Cannot start with a digit Devore’s Rules Must be meaningful Cannot start with underscore Cannot be a single letter (not meaningful)
39
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Programmer Defined Identifiers Uses and Format Variables (more later, Chapter 2) Begin with a lower case letter Use under_scores to separate words or Use camelCase Constants (more later, Chapter 2) All upper case using underscore to separate words. Function Names (more later, Chapter 6) Same as variables Structure/Class Names (more later, Chapter 11) Begin with a upper case letter
40
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 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
41
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Variable Definitions To create a variable in a program you must write a variable definition Here is the statement from Program 1-1 that defines the variables: double hours, rate, pay;
42
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Variable Definitions There are many different types of data, which you will learn about in this course. A variable holds a specific type of data. The variable definition specifies the type of data the variable holds, and the variable name.
43
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Variable Definitions Once again, line 6 from Program 1-1: double hours, rate, pay; The word double is used to hold double- precision floating point numbers. (more in Chapter 2)
44
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 1.5 Input, Processing, and Output
45
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Input, Processing, and Output Three steps that a program typically performs: 1) Gather input data: From keyboard, or other input device From files on disk drives 2) Process the input data 3) Display the results as output: Send it to the screen Write it to a file
46
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 1.6 The Programming Process
47
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. The Programming Process
48
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. 1.7 Procedural and Object-Oriented Programming
49
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Procedural and Object-Oriented Programming Procedural programming: Focus is on the process. Procedures/functions are written to process data. Object-Oriented programming: Focus is on objects, which contain data and the means to manipulate the data. Messages are sent to objects to perform operations.
50
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Procedural and Object-Oriented Programming C++ can be used to: Develop procedural programs Develop Object-Oriented Programs Develop programs that are a combination of procedural and object-oriented Intro to C++ focuses on procedural programs but using some objects Advanced C++ focuses on Object Oriented programs (developing your own objects)
51
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. End of Chapter 1
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.