Course Overview. What are Computers? From Outside –CPU box, Monitor, Keyboard, mouse and Printers From inside –ICs, Chipsets, Hard Disks, PCB cards, Drives,

Slides:



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

Systems Software.
Engineering Problem Solving With C++ An Object Based Approach Fundamental Concepts Chapter 1 Engineering Problem Solving.
Chapter 1: An Overview of Computers and Programming Languages J ava P rogramming: From Problem Analysis to Program Design, From Problem Analysis to Program.
1 Engineering Problem Solving With C++ An Object Based Approach Fundamental Concepts Chapter 1 Engineering Problem Solving.
Lecture 1: Intro to Computers Yoni Fridman 6/28/01 6/28/01.
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. COMPSCI 125 Introduction to Computer Science I.
1 Lecture 1  Getting ready to program  Hardware Model  Software Model  Programming Languages  The C Language  Software Engineering  Programming.
Computers: Tools for an Information Age
16 March, 2000 CS1001 Lecture 1 Introduction - Syllabus History of Computers Computer Components.
C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 1: An Overview of Computers and Programming Languages C++ Programming:
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
Programming. Software is made by programmers Computers need all kinds of software, from operating systems to applications People learn how to tell the.
1 CHAPTER 4 LANGUAGE/SOFTWARE Hardware Hardware is the machine itself and its various individual equipment. It includes all mechanical, electronic.
Course: Introduction to Computers
CS190/295 Programming in Python for Life Sciences: Lecture 1 Instructor: Xiaohui Xie University of California, Irvine.
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.
Computer Programming-1 CSC 111 Chapter 1 : Introduction.
1 Chapter-01 Introduction to Computers and C++ Programming.
CCSA 221 Programming in C CHAPTER 2 SOME FUNDAMENTALS 1 ALHANOUF ALAMR.
Alternate Version of STARTING OUT WITH C++ 4 th Edition Chapter 1 Introduction to Computers and Programming.
Introduction to Programming Dr Masitah Ghazali Programming Techniques I SCJ1013.
© Paradigm Publishing Inc. 4-1 Chapter 4 System Software.
Chapter 1 Engineering Problem Solving 1. Hardware and Software 2 A computer is a machine designed to perform operations specified with a set of instructions.
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
Chapter 4 System Software.
1 Computing Software. Programming Style Programs that are not documented internally, while they may do what is requested, can be difficult to understand.
An Introduction to Computers August 12, 2008 Mrs. C. Furman.
What is a Computer? An, electrical machine, that can be programmed to accept data (input), process it into useful information (output) and store it away.
C++ Programming Language Lecture 1 Introduction By Ghada Al-Mashaqbeh The Hashemite University Computer Engineering Department.
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Introduction Lecture 01.
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Slide 1- 1 October 20, October 20, 2015October 20, 2015October 20,
Robert Crawford, MBA West Middle School.  Explain how the binary system is used by computers.  Describe how software is written and translated  Summarize.
C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 1: An Overview of Computers and Programming Languages.
Copyright © Prentice Hall Programming and Languages Chapter 14 Telling the Computer What to Do.
COMPUTER PROGRAMMING. Computer programming the objective of the module to gain the necessary skills to develop a computer program using one of the high.
CHAPTER 1 INTRODUCTION 1 st Semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
CHAPTER 1 INTRODUCTION 1 st semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
1 Text Reference: Warford. 2 Computer Architecture: The design of those aspects of a computer which are visible to the programmer. Architecture Organization.
CHAPTER 1 INTRODUCTION 2 nd Semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
CS 127 Introduction to Computer Science. What is a computer?  “A machine that stores and manipulates information under the control of a changeable program”
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.
Chapter 1 Computers, Compilers, & Unix. Overview u Computer hardware u Unix u Computer Languages u Compilers.
Chapter 4 Software. Introduction Program: is a set of sequence instructions that tell the computer what to do. Software: is a collection of programs,
1. COMPUTERS AND PROGRAMS Rocky K. C. Chang September 6, 2015 (Adapted from John Zelle’s slides)
Chapter 1 An Overview of Computers and Programming Languages.
The Big Picture. My Story  Wrote great programs  Didn’t understand how they worked.
Lecture #1: Introduction to Algorithms and Problem Solving Dr. Hmood Al-Dossari King Saud University Department of Computer Science 6 February 2012.
Introduction to Computer Programming Concepts M. Uyguroğlu R. Uyguroğlu.
Software Engineering Algorithms, Compilers, & Lifecycle.
PROGRAMMING (1) LECTURE # 1 Programming and Languages: Telling the Computer What to Do.
CHAPTER 1 OVERVIEW OF COMPUTER AND PROGRAMMING 1.1 Electronic Computer Then and Now 1.2 Computer Hardware 1.3 Computer Software 1.4 The Software Development.
Programming Logic and Design Seventh Edition Chapter 1 An Overview of Computers and Programming.
INTRODUCTION TO COMPUTER PROGRAMMING ITC-314. Computer Programming  Computer Programming means creating a sequence of instructions to enable a computer.
Chapter 1 Introduction 2nd Semester H
Engineering Problem Solving With C An Object Based Approach
Chapter 1 – Introduction to Computers, the Internet, and the Web
Hardware and Software Hardware refers to the physical devices of the computer system e.g. monitor, keyboard, printer, RAM etc. Software is a set of programs,
Operating System Interface between a user and the computer hardware
Computer Fundamentals 1
CSCI-235 Micro-Computer Applications
Lecture 1: Introduction to JAVA
COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE
DDC 1023 – Programming Technique
Introduction to Programming
Computer Science I CSC 135.
King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1 Done By: Asmal Alosaimi Edited By: Fatimah Alakeel.
King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1 Done By: Asmal Alosaimi Edited By: Fatimah Alakeel.
Programming Logic and Design Eighth Edition
Presentation transcript:

Course Overview

What are Computers? From Outside –CPU box, Monitor, Keyboard, mouse and Printers From inside –ICs, Chipsets, Hard Disks, PCB cards, Drives, Buses –All the above are called Computer Hardware –The physical engine that solves problems

Programmability Unique feature of Computers raw HW can not do anything on its own needs programs or software to do things Same hardware can be configured to do a variety of functions Programs provide this ability `run' or `execute' the program in the machine for this

What are Programs Sequence of precise instructions or commands tell the HW to read input, to compute simple arithmetic functions and to print outputs etc. Control HW to compute a variety of tasks It is the programs that provide the rich problem solving abilities Programming Main focus of this course

Low-level Programming Programs that can run in a computer are low-level, Instructions are simple arithmetic and logical operation on binary numbers (sequences of 0 and 1) specific to the machine and will not run in other machines called as machine programs (assembly programs) very difficult to write and understand, error prone for most common applications not necessary Example mov R1,R2– move the value from R1 to R2 add R2,R3,R4– add R2 and R3 and store it in R4 sto R4, #010110– store R4 in memory

High-level programming Instructions are complex operations on a variety of data objects programs are independent of machines closer to problem domain resembles natural language statements easier to write, debug and understand This is the focus of this course Examples –compute the interest for six months of Mr. Sachin's Savings a/c –book a tkt. for Rahul from Mumbai to Bangalore –Switch on the alarm when belt not fastened

Translators/Compilers High level programs can not run directly on computers need to be translated to low level instructions compilers do this job compilers are themselves programs - system programs CS students learn how to write compiler software

Operating Systems Compilers alone are not enough Other programs required for executing application programs – Operating Systems Provides a high level view of hardware Efficient utilization of resources various utility functions, like reading inputs, printing, etc. UNIX, Windows, SunOS, Solaris, GNU/Linux

A Simplified Picture Hard Ware Application Cmd. Interpreter Compilers, Editors OS System Programs

OS is the boss OS gateway to the machine All interaction through the OS OS is in control always Safety, Security and Efficiency Watches for inputs (mouse,keyboard) and provides appropriate responses –Giving login Prompts, –Reading user name and passwords –Allows or rejects Runs the command line interpreter (window manager)

The Shell The command line interface is called shell Various versions of shell –C-shell, Bash, etc. After login, user commands are interpreted by the shell and appropriate OS commands are executed User commands to create/remove, edit files, compile and execute programs etc. When a user command is executed, there is a momentary transfer of control After execution, control is transferred back

Programming Languages Program instructions should be precise enough to be understood by machines or other programs Compilers and Raw HW are dumb need precise syntactic rules and a unique semantics Programming languages define these rules and semantics Hundreds of languages - FORTRAN, Algol 60, PASCAL, BASIC, C, C++, Java,

Fortran We teach FORTRAN First High Level Language (1954 – 57) John Bachus (IBM), got Turing Award Revolutionary Step Grand father of all modern PL Name derived from Formula translation Simple idea: Mathematical formulae are high level descriptions of computations

Evolution of Fortran Original Fortran very primitive, restrictive and small It has evolved over the years –Fortran II –Fortran IV –Fortran 66, Fortran 77 –Fortran 90, Fortran 95 Fortran 90 compares with all modern languages We will use FORTRAN 90 So, this is a course on Programming in Fortran 90

Why Fortran Efficient compilers exist Oldest and widely used Large base of utilities and programs It has all modern features Fortran 90 is just a choice Self-learning of Programming in C, Java or any PL possible after this

Main Focus Problem solving using computers Fortran for concreteness Exercises in programming in a HLL All languages, at your level, are equivalent Obtaining a solution is more difficult Representing solution in a PL require mastery over the language and comes with practice