CHAPTER 1.1 INTRODUCTION TO COMPUTERS AND C++ Dr. Shady Yehia Elmashad.

Slides:



Advertisements
Similar presentations
EC-111 Algorithms & Computing Lecture #1 Instructor: Jahan Zeb Department of Computer Engineering (DCE) College of E&ME NUST.
Advertisements

 2000 Prentice Hall, Inc. All rights reserved. 1 Chapter 1 – Introduction to Computers and C++ Programming Outline 1.1Introduction 1.2What is a Computer?
Computers, Internet and Web Risanuri Hidayat, Ir.,M.Sc.
Three types of computer languages
Java Environment (CSS444)
Introduction to Computers and Programming Using Java Professor Deena Engel V : Sections 1 and 4 Office hours: Tuesdays & Thursdays.
 2007 Pearson Education, Inc. All rights reserved Introduction to Computers, the Internet and the Web.
Bil104E Introduction to Scientific and Engineering Programming
© Copyright 1992–2004 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Chapter 1 – Introduction to Computers and C++ Programming.
Introduction to Computers and Programming Using Java Professor Deena Engel V : Section 1 Office hours: MW 12:00 - 1:00 in room.
 2000 Prentice Hall, Inc. All rights reserved. Chapter 1 – Introduction to Computers and C++ Programming Outline 1.1Introduction 1.2What Is a Computer?
 2001 Deitel & Associates, Inc. All rights reserved. 1 Chapter 1 – Introduction to Computers, the Internet and the Web Outline 1.1Introduction 1.2The.
 2000 Prentice Hall, Inc. All rights reserved. 1 Introduction to Computers and C Programming Outline Introduction What Is a Computer? Computer Organization.
C programming language Computer Programming Language 計算機程式設計 Chapter 1 Overview 台大電機系 吳安宇教授 Sept
Introduction to computers and programming RIZWAN REHMAN Assistant Professor Centre For Computer Studies.
1 6 Abacus An early device to record numeric values Blaise Pascal Mechanical device to add, subtract, divide & multiply Joseph Jacquard Jacquard’s Loom,
COMPUTER PROGRAMMING. Introduction to C++ History Merges notions from Smalltalk and notions from C The class concept was borrowed from Simular67 Developed.
CS102 Introduction to Computer Programming
 2003 Prentice Hall, Inc. All rights reserved. Chapter 1 – Introduction to Computers, the Internet, and the Web Outline 1.1 Introduction 1.2 What Is a.
Introduction to Computers and Python. What is a Computer? Computer- a device capable of performing computations and making logical decisions at speeds.
Department of Computer and Information Science, School of Science, IUPUI Dale Roberts, Lecturer Computer Science, IUPUI CSCI.
1 Chapter 1 - Introduction to Computers, the Internet, and the World Wide Web Outline 1.1Introduction 1.2What Is a Computer? 1.3Computer Organization 1.4Evolution.
Lecture 1: Introduction to Computers. OBJECTIVES In this lecture you will learn:  Basic computer concepts.  The different types of programming languages.
 2008 Pearson Education, Inc. All rights reserved Introduction to Computers, the Internet and World Wide Web.
 2000 Deitel & Associates, Inc. All rights reserved. Chapter 1 – Introduction to Computers and C++ Programming Outline 1.1Introduction 1.2What is a Computer?
Chapter 1 Introduction to Computers, the Internet and the World Wide Web.
Spring 2005, Gülcihan Özdemir Dağ BIL104E: Introduction to Scientific and Engineering Computing, Spring Outline 1.1Introduction 1.2What Is a Computer?
History of C and C++ C++ evolved from C ANSI C C++ “spruces up” C
C++ Programming Language Lecture 1 Introduction By Ghada Al-Mashaqbeh The Hashemite University Computer Engineering Department.
© Copyright 1992–2004 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved Computer Organization Six logical units in every.
 2002 Prentice Hall. All rights reserved. Chapter 1 – Introduction to Computers, the Internet, and the Web Outline 1.1 Introduction 1.2 What Is a Computer?
1.8History of Java Java –Based on C and C++ –Originally developed in early 1991 for intelligent consumer electronic devices Market did not develop, project.
© Copyright 1992–2004 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Introduction to Computers Outline 1.1Introduction.
 2000 Prentice Hall, Inc. All rights reserved. 1 Introduction Jyh-Cheng Chen Department of Computer Science and Institute of Communications Engineering.
 2006 Pearson Education, Inc. All rights reserved Introduction to Computers, the Internet and World Wide Web.
© Copyright 1992–2004 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. Chapter 1 Introduction to Computers, the Internet and.
Outline 1 MECH 215 Programming for Mech. and Ind. Eng. I Prof. Chadi Assi CB , Ext. 5799
1 CISC181 Introduction to Computer Science Dr. McCoy Lecture 1 February 8, 2005.
1 MIS 131 Introduction to Algorithms and Programming 2015/2016 Fall - Chapter 1 -
1 Programming Fundamentals How to Program in C++ How to Program in C++
COMPUTER PROGRAMMING. Computer programming the objective of the module to gain the necessary skills to develop a computer program using one of the high.
 2000 Prentice Hall, Inc. All rights reserved. 1 Chapter 1 - Introduction to Computers, the Internet, and the World Wide Web Outline 1.1Introduction 1.2What.
CHAPTER 1 INTRODUCTION 1 st Semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
Computer Organization & Assembly Language © by DR. M. Amer.
Spring 09- ICE0124 Programming Fundamentals I Java Programming XuanTung Hoang Lecture No. 1.
CHAPTER 1 INTRODUCTION 2 nd Semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
 2008 Pearson Education, Inc. All rights reserved Introduction to Computers, the Internet and World Wide Web.
 2001 Prentice Hall, Inc. All rights reserved. Chapter 1 – Introduction to Computers, the Internet and the World Wide Web Outline 1.1Introduction 1.2What.
1 Types of Programming Language (1) Three types of programming languages 1.Machine languages Strings of numbers giving machine specific instructions Example:
Chapter 1 – Introduction to Computers, the Internet, and the Web Outline 1.1 Introduction 1.2 What Is a Computer? 1.3 Computer Organization 1.4 Evolution.
Structured programming 1 st stage By Heba.A Raheem Assist Lecturer College of Sciences/Computer Sciences Department.
Introduction to Computers - Hardware
Introduction to Computers, the Internet and the Web
 2001 Prentice Hall, Inc. All rights reserved.
Chapter 1 – Introduction to Computers, the Internet, and the Web
Outline Introduction What Is a Computer? Computer Organization
Chapter 1 – Introduction to Computers and C++ Programming
Chapter 1 – Introduction to Computers and C++ Programming
Chapter 1 – Introduction to Computers, the Internet, and the Web
Introduction to Computers, the Internet and the Web
Chapter 1 – Introduction to Computers, the Internet, and the Web
Chapter 1 – Introduction to Computers and C++ Programming
Introduction to Computer Programming
Chapter 1 – Introduction to Computers and C++ Programming
Introduction to Computers, the Internet and the Web
Introduction to Computers, the Internet and the Web
Chapter 1 – Introduction to Computers, the Internet, and the Web
Introduction to Computers, Internet and the World Wide Web
Chapter 1 – Introduction to Computers and C++ Programming
Presentation transcript:

CHAPTER 1.1 INTRODUCTION TO COMPUTERS AND C++ Dr. Shady Yehia Elmashad

Outline 1.Introduction 2.What is a Computer? 3. Features of a Good Program 4. Stages of Program Building 5.Computer Organization 6.Evolution of Operating Systems 7.Personal Computing, Distributed Computing and Client/Server Computing 8.Machine Languages, Assembly Languages, and High-level Languages 9.History of C and C++ 10.C++ Standard Library 11.Java and Java How to Program 12.Other High-level Languages

Outline 13.Structured Programming 14.The Key Software Trend: Object Technology 15.Basics of a Typical C++ Environment 16.Hardware Trends 17.History of the Internet 18.History of the World Wide Web 19.General Notes About C++

1. Introduction In this course you will learn - C and C++ C++ is one of today’s most popular software development languages. - Structured programming and object oriented programming

2. What is a Computer? Computer - A device capable of performing computations and making logical decisions OR - A machine that can be programmed to accept data (input), process it into useful information (output), and store it away (in secondary storage device) for safekeeping or later reuse - Process is directed by software but performed by the hardware

2. What is a Computer? Computer programs - Sets of instructions that control a computer’s processing of data Hardware - Various devices comprising a computer  Examples: keyboard, screen, mouse, disks, memory, CD-ROM, and processing units Software - Programs that run a computer

3. Features of a Good Program Integrity Clarity Simplicity Efficiency Modularity Generality

4. Stages of Program Building Define the problem Algorithms development Program coding Program execution and testing

5. Computer Organization Six logical units in every computer: - Input unit Obtains information from input devices (keyboard, mouse) - Output unit Outputs information (to screen, to printer, to control other devices) - Memory unit Rapid access, low capacity, stores input information - Arithmetic and logic unit (ALU) Performs arithmetic calculations and logic decisions - Central processing unit (CPU) Supervises and coordinates the other sections of the computer - Secondary storage unit Cheap, long-term, high-capacity storage, stores inactive programs

6. Evolution of Operating Systems Batch processing - Do only one job or task at a time Operating systems - Manage transitions between jobs - Increased throughput Amount of work computers process Multiprogramming Many jobs or tasks sharing a computer’s resources Timesharing Perform a small portion of one user’s job then moves on to service the next user

7. Personal Computing, Distributed Computing, and Client/Server Computing Personal computers Economical enough for individual Distributed computing Organizations computing is distributed over networks Client/server computing Sharing of information, across computer networks, between file servers and clients (personal computers)

8. Machine Languages, Assembly Languages, and High-level Languages Three types of programming languages  Machine languages - Strings of numbers giving machine specific instructions Example:  Assembly languages - English-like abbreviations representing elementary computer operations (translated via assemblers) - Example: LOAD BASEPAY ADD OVERPAY STORE GROSSPAY

8. Machine Languages, Assembly Languages, and High-level Languages  High-level languages - Similar to everyday English, use mathematical notations (translated via compilers) - Example: grossPay = basePay + overTimePay

9. History of C and C++ C++ evolved from C  which was developed by Dennis Ritchie at Bell Laboratories  C evolved from two other programming languages, BCPL and B  C++ was developed by Bjarne Stroustrup in the early 1980s at Bell Laboratories. ANSI C Established worldwide standards for C programming C++ “spruces up” C Provides capabilities for object-oriented programming Objects are reusable software components that model things in the real world Object-oriented programs are easy to understand, correct and modify

10. C++ Standard Library C++ programs Built from pieces called classes and functions You can program each piece yourself, but it is better to take advantage of the C++ Standard Library. C++ standard library Provides rich collections of existing classes and functions for all programmers to use

11. Java and Java How to Program Java used to - Create web pages with dynamic and interactive content - Develop large-scale enterprise applications - Enhance the functionality of web servers - Provide applications for consumer devices (such as cell phones, pagers and personal digital assistants) Java how to program - Closely followed the development of Java by sun - Teaches first-year programming students the essentials of graphics, images, animation, audio, video, database, networking, multithreading and collaborative computing

12. Other High-level Languages Other high-level languages  FORTRAN Used in scientific and engineering applications  COBOL Used to manipulate large amounts of data  Pascal Used to teach structured programming

13. Structured Programming Structured programming - Disciplined approach to writing programs - Clear, easy to test and debug, and easy to modify Multitasking - Many activities to run in parallel

14. The Key Software Trend: Object Technology 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 procedural programming  Favor modularity

15. Basics of a Typical C++ Environment Phases of C++ Programs: 1.Edit 2.Preprocess 3.Compile 4.Link 5.Load 6.Execute Loader Primary Memory 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 Primary Memory Disk

16. Hardware Trends Every year or two computers approximately double  The amount of memory they contain - Memory used to execute programs  The amount of secondary storage they contain - Secondary storage (such as disk storage) is used to to hold programs and data over time  Their processor speeds - The speed at which computers execute their programs

17. History of the Internet The Internet enables - Quick and easy communication via - International networking of computers Packet switching - Transfers digital data via small packets - Allows multiple users to send and receive data simultaneously No centralized control - If one part of the Internet fails, other parts can still operate Bandwidth - Carrying capacity of communications lines

18. History of the World Wide Web World Wide Web - Allows users to locate and view multimedia- based documents on almost any subject - Makes information instantly and conveniently accessible worldwide -Makes it possible for individuals and small businesses to get worldwide exposure - Is changing the way business is done

19. General Notes About C++ Book is geared toward novice programmer Programming clarity is stressed C and C++ are portable languages - Programs written in C and C++ can run on many different computers