August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 1 Introduction or Computer Programming Chapter 0: Introduction to Computers and.

Slides:



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

Introduction to Computer Programming Nai-Wei Lin Department of Computer Science and Information Engineering National Chung Cheng University.
 2002 Prentice Hall. All rights reserved. 1 Chapter 1 – Introduction to Computers, Internet and World Wide Web Outline 1.1Introduction 1.2What is a Computer?
Introduction to Computers and Programming - Class 1 1 Introduction to Computers and Programming Professor Avi Rosenfeld.
Java Environment (CSS444)
Understanding Operating Systems 1 Overview Introduction Operating System Components Machine Hardware Types of Operating Systems Brief History of Operating.
© 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?
 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
 2002 Prentice Hall. All rights reserved. 1 Chapter 1 – Introduction to Computers, Internet and Visual Basic.NET Outline 1.1Introduction 1.2What is a.
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,
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.
Using Java MINISTRY OF EDUCATION & HIGHER EDUCATION COLLEGE OF SCIENCE AND TECHNOLOGY KHANYOUNIS- PALESTINE.
Introduction to Computers, the Internet and the by Pedernal Jemerson G by Pedernal.
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.
 2002 Prentice Hall. All rights reserved. 1 Introduction to Visual Basic.NET,.NET Framework and Visual Studio.NET Outline 1.7Introduction to Visual Basic.NET.
Lecture 1 Introduction to computers & VB.Net. What is a Computer? Examples? A device capable of  Performing computation  Making logical decisions 
Spring 2005, Gülcihan Özdemir Dağ BIL104E: Introduction to Scientific and Engineering Computing, Spring Outline 1.1Introduction 1.2What Is a Computer?
© Copyright 1992–2005 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. Tutorial 1 – Car Payment Calculator and Guess the Number.
C++ Programming Language Lecture 1 Introduction By Ghada Al-Mashaqbeh The Hashemite University Computer Engineering Department.
 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?
© Copyright 1992–2004 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Introduction to Computers Outline 1.1Introduction.
 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.
1 CISC181 Introduction to Computer Science Dr. McCoy Lecture 1 February 8, 2005.
Programming Fundamentals1 Chapter 1 INTRODUCTION TO COMPUTER AND PROGRAMMING.
1 MIS 131 Introduction to Algorithms and Programming 2015/2016 Fall - Chapter 1 -
Intro to Computers Computer Applications. What is a Computer? Initially the term computer referred to an individual whose job it was to perform mathematical.
Module 2 : Part 1 INTRODUCTION TO HARDWARE & SOFTWARE INTRODUCTION TO HARDWARE & SOFTWARE.
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.
Computer Organization & Assembly Language © by DR. M. Amer.
Spring 09- ICE0124 Programming Fundamentals I Java Programming XuanTung Hoang Lecture No. 1.
© Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Outline 1.1 What Is a Computer? 1.2 Computer Organization.
1 Software. 2 What is software ► Software is the term that we use for all the programs and data on a computer system. ► Two types of software ► Program.
 2008 Pearson Education, Inc. All rights reserved Introduction to Computers, the Internet and World Wide Web.
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Edition Chapter 1 Introduction to Computers and Programming.
 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 Introduction to Computers, the Internet and World Wide Web.
 2000 Deitel & Associates, Inc. All rights reserved. Chapter 1 – Introduction to Computers and the Internet Outline 1.2What is a Computer? 1.3Types of.
CS1110: Computer Science I Chapter 1. What Is a Computer? A computer is a device capable of performing computations and making logical decisions At a.
CHAPTER 1.1 INTRODUCTION TO COMPUTERS AND C++ Dr. Shady Yehia Elmashad.
1 Chapter 1 Background Fundamentals of Java: AP Computer Science Essentials, 4th Edition Lambert / Osborne.
نظام المحاضرات الالكترونينظام المحاضرات الالكتروني Computer Software.
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 Visual Basic. NET,. NET Framework and Visual Studio
 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
© by Pearson Education, Inc. All Rights Reserved.
Introduction to Programming
Chapter 1 – Introduction to Computers and C++ Programming
Chapter 1 – 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
Chapter 1 – Introduction to Computers, Internet and World Wide 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:

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 1 Introduction or Computer Programming Chapter 0: Introduction to Computers and Computing Michael Scherger Department of Computer Science Kent State University

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 2 Contents What is a Computer? Computer Organization Operating Systems Personal, Distributed, and Client Server Computing Machine, Assembly, and High Level Languages Structured Programming Object Oriented Programming History of Python

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 3 What is a Computer? Computer –A device capable of Performing calculations Making logical decisions –Works billions of times faster than human beings –Fastest supercomputers today Perform hundreds of billions of additions per second

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 4 What is a Computer? Programs –Sets of instructions that process data –Guide computer through orderly sets of actions specified by computer programmers Computer system –Comprised of various hardware devices Keyboard Screen (monitor) Disks Memory Processing Units

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 5 Computer Organization Every computer divided into six units CPU InputOutput Memory Secondary Storage ALU

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 6 Computer Organization Every computer divided into six units –1. Input unit “Receiving” section of computer Obtains data from input devices –Usually a keyboard, mouse, disk or scanner Places data at disposal of other units –2. Output unit “Shipping” section of computer Puts processed info on various output devices –Screens, paper printouts, speakers Makes info available outside the computer

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 7 Computer Organization –3. Memory unit Rapid access, low capacity “warehouse” Retains information entered through input unit Retains info that has already been processed until can be sent to output unit Often called memory, primary memory, or random access memory (RAM) –4. Arithmetic and Logic Unit “Manufacturing” section of computer Performs calculations (addition, subtraction, multiplication and division) Contains decision mechanisms and can make comparisons

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 8 Computer Organization –5. Central Processing Unit (CPU) “Administrative” section of computer Coordinates and supervises other sections –6. Secondary storage unit Long-term, high-capacity “warehouse” Stores programs or data not currently being used by other units on secondary storage devices (like discs) Takes longer to access than primary memory

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 9 Operating Systems Operating System –A program or set of programs to manage computer resources. Early Computers –Single-user batch processing Jobs on decks of punched cards One job ran at a time Results took hours to process –Operating Systems Managed transitions between jobs Increased amount of work computer could accomplish –Multiprogramming Simultaneous operation of several jobs Computer resources split between jobs Still took long hours for results

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 10 Operating Systems Timesharing Operating Systems (1960s) –Computers accessed through terminals Devices with keyboards and screens –Hundreds of people use system at once Quickly performs small portions of each person’s job Gives appearance of running simultaneously

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 11 Operating Systems UNIX –Originally an experimental timesharing OS –Developed by Dennis Ritchie and Ken Thompson Developed at Bell Labs Written in C –Open-Source software Source code freely distributed among programmers Created large community –Powerful and flexible Handled any task a user required Developed into many versions –Linux –BSD

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 12 Personal, Distributed, and Client Server Computing Personal Computing –Pioneered by Apple and IBM Computer prices dropped –Computers reasonable for personal or business use –Stand-alone units People work on personal machines Transported disks to share information –“Sneakernet” Machines linked together –Telephone lines –Local Area Networks (LANs) –Led to distributed computing

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 13 Personal, Distributed, and Client Server Computing Distributed Computing –Work distributed over networks N-Tier applications –Split parts of applications over numerous computers »User interface »Database »Business-logic processing –Different parts interact when application runs

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 14 Personal, Distributed, and Client Server Computing Client/Server Computing –Workstations High-powered desktop machines Easily share information over computer networks –Servers Store programs and data Information accessed by clients –Capabilities provided by modern Operating Systems Windows (and its variants), UNIX, Linux, MacOS

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 15 Machine, Assembly, and High Level Languages Programming Languages –Hundreds exist today –Fall into three categories Machine languages Assembly languages High-level languages

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 16 Machine, Assembly, and High Level Languages Machine Languages –Only language understood directly by computer –Defined by computer’s hardware design Machine-dependent –Languages specific to particular computers –Incomprehensible to human readers Streams and numbers –Ultimately reduced to 0s and 1s –Instruct most elementary of operations Slow, tedious and error-prone –Led to Assembly languages

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 17 Machine, Assembly, and High Level Languages Assembly Languages –English-like abbreviations Represent elementary operations of computer –Translated to machine language Assemblers convert to machine language High-speed conversion –More clear to human readers Still tedious to use –Many instructions for simple tasks –Led to high-level languages

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 18 Machine, Assembly, and High Level Languages High-Level Languages –Single statements accomplish substantial tasks –Translated to machine language Compilers convert to machine language Conversion takes considerable time –Interpreters run programs without compiling »Used in development environment –Instructions comprehensible to humans Look like everyday English Contain common mathematical notation

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 19 Structured Programming Early Software Development –Complex and costly for businesses (1960s) Costs exceeded budgets Final products unreliable –Research led to structured programming Disciplined approach to programming –Programs clear and easy to modify Several languages resulted from research –C, Pascal, Ada

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 20 Structured Programming Structured Languages –Pascal Designed for teaching structured programming Lacked features for commercial use –C Had features Pascal didn’t Quickly adopted by programmers –Ada Developed by U.S. Department of Defense (late 1970s) –Based on Pascal –DOD wanted one language for all its needs –Supported multitasking »Many activities occur in parallel

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 21 Object Oriented Programming What is Object Technology? –Packaging scheme for creating software units Units are objects –Any noun can be represented as an object »Date object, time object, car object –Have properties »Size, color, weight –Perform actions »Moving, sleeping, drawing –Defined in classes »Specify general format »Provide specific attributes and behaviors

August 29, 2005ICP: Chapter 0: Introduction to Computers and Computing 22 Object Oriented Programming Object-Oriented programming –Based on nouns Reflects way world is perceived –Advantages over structured programming More natural process –Results in better productivity Classes provide reusability –Microsoft Foundation Classes (MFC) Easier to maintain –Programs more understandable –Focus on behaviors and interactions –Less attention to details