CS 330 Programming Languages

Slides:



Advertisements
Similar presentations
4/23/2015Engineering Problem Solving with C++ second edition, J. ingber 1 Engineering Problem Solving with C++, Etter/Ingber Chapter 1.
Advertisements

CS 330 PROGRAMMING LANGUAGES & SOFTWARE ENGINEERING Dr. Blaise W. Liffick Spring
Chapter Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing Describe.
Chapter 01 Introduction Chapter 0 Introduction. Chapter 02 History of Computing - Early Computers Abacus (ancient orient, still in use) Slide rule (17C,
Introduction Extended and Concise Prelude to Programming Concepts and Design Copyright © 2003 Scott/Jones, Inc.. All rights reserved. 1 Introduction.
Computing Components 01/26/11. Announcements & Reminders Programs 1 due Friday, 9/2/11 What is my late policy? Proxy Codes for Labs  You should be able.
Appendix The Continuing Story of the Computer Age.
Lecture 2 Computer development history. Topic History of computer development Computer generation Programming language.
Chapter 1 An Overview of Personal Computers
1 The development of modern computer systems Early electronic computers Mainframes Time sharing Microcomputers Networked computing.
Chapter 1 The Big Picture Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.
CIS 260 Computer Programming I in C Prof. Timothy Arndt.
Some of these slides are based on material from the ACM Computing Curricula 2005.
Chapter 1 The Big Picture Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.
Chapter 1 The Big Picture Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.
COMPUTER SYSTEM.
Chapter 01 Nell Dale & John Lewis.
CS 161 INTRO TO PROGRAMMING I Dr. Blaise W. Liffick Fall
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers, Problem Solving, and Programming Problem.
CS 1 •This is Computer Science 1. •Who is Professor Adams?
CCSE251 Introduction to Computer Organization
CS 1410 Intro to Computer Tecnology Computers and History1.
Generational Computing CSCI 1060 Fall CSCI 1060 — Fall 2006 — 2 First Generation Large computers, difficult to program Primarily used by scientists.
Chapter 1 The Big Picture.
Computer system overview1 The Effects of Computers Pervasive in all professions How have computers affected my life? How have computers affected my life?
CPS120: Introduction to Computer Science Introduction to Computers.
Visual C++ Programming: Concepts and Projects
COMP 268 Computer Organization and Assembly Language A Brief History of Computing Architecture.
CPS120: Introduction to Computer Science Introduction to Computers.
Brief History of Computers and Computer Languages.
History of Computers Computer Technology Day 2. Computer Generations: Overview GenerationTimePrincipal Technology Examples ZerothLate 1800’s to 1940Electro.
C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 1: An Overview of Computers and Programming Languages.
Chapter 1 The Big Picture Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.
History of Computer Wyatt Feiling Did you know... The first idea for a computer was in the early 1800s Charles Babbage is the man who is credited with.
Computer Generations ITSC 1401, Intro to Computers Instructor: Glenda H. Easter.
The 5 generations of computers. Generations of computers The history of computer development is often referred to in reference to the different generations.
CS 101 INTRODUCTION TO COMPUTING * image from The Central Eglinton Community Centre website.
Generations of Computing. The Computer Era Begins: The First Generation  1950s: First Generation for hardware and software Vacuum tubes worked as memory.
Evolution of the Computer. Zeroth Generation- Mechanical 1.Blaise Pascal –Mechanical calculator only perform Von Leibiniz –Mechanical.
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.
THE FIVE GENERATIONS OF COMPUTERS
The First Computers Jacquard’s Loom: programmed a loom
Chapter 1 Introduction.
The Five Generations of Computers
4. History of Computing Technology
Computer Science Introduction
Chapter 1: Introduction to Computers, Problem Solving, and Programming
The History of Computer Science
CSCI 161: Introduction to Programming
Chapter 1: An Overview of Computers and Programming Languages
Chapter 1 Introduction.
Chapter 1 The Big Picture
The Five Generations of Computers
The Five Generations of Computers
History Computers.
Chapter 1: An Overview of Computers and Programming Languages
C++ Programming: From Problem Analysis to Program Design
UNIV 103 CS Majors Seminar Dr. Blaise W. Liffick Fall 2017.
Milestones in Computer Development
Generations of Modern Computer
Computer Science I CSC 135.
The Five Generations of Computers
The Five Generations of Computers
The Five Generations of Computers
NIRANJAN KUMAR Seminar On Generations OF Computer GOOD MORNING.
The Five Generations of Computers
Programming Language Design
The Five Generations of Computers
INTRODUCTION TO COMPUTING
Chapter 0 Introduction Introduction Chapter 0.
Presentation transcript:

CS 330 Programming Languages Dr. Blaise W. Liffick Spring 2019

Programming Techniques Languages Programming Environments Problem Analysis Program Design Algorithms & Design Patterns Data Structures Paradigms Java C++ Hardware Network Linux Eclipse Programming Environments

Early Computers Late 1930’s, John Atanasoff, Clifford Berry ENIAC 1946 University of Pennsylvania J. Presper Eckert and John Mauchley John von Neumann, stored-program concept

First Generation: 1940 – 1956 Vacuum tubes Scientific oriented ENIAC UNIVAC – first commercial computer

Second Generation: 1956 – 1963 Transistors replaced vacuum tubes I/O via punch cards and printers First “high-level” languages developed Data processing introduced

Third Generation: 1964 - 1971 Integrated circuit (semiconductors) Keyboards & monitors Time sharing Computer “families” Minicomputers vs. mainframes

Fourth Generation: 1971 – ? VLSI CPU on a chip: Microprocessor Microcomputers & Supercomputers

Fifth Generation: ??? Based on artificial intelligence Big “Fifth Gen” project by Japanese in 1980’s Voice recognition, parallel processing, superconductors

Categories of Computers Supercomputers Mainframe Minicomputers Microcomputers Mobile devices Power Size Cost

Programming Languages Machine Language Most fundamental language of the computer Unique for each processor type Binary 0s and 1s that specify what to do 0010 0000 0000 0100 1000 0000 0000 0101 0011 0000 0000 0110

Table 1.2 A Program in Machine and Assembly Language

High - Level Languages Resemble human language Java, C++, C, Pascal, FORTRAN, Ada a = a + b; More compact and human understandable than machine language Must be translated into machine language

1.4 Processing a High-Level Language Program Set of programs used to develop software A key component is a translator Compiler Examples Java, g++, Microsoft Visual C++® Other programs needed Editor Linker Loader IDE (e.g. Eclipse)

Processing a Program Editor used to enter the program Like minimal word processor Creates source program file Compiler translates the source program Displays syntax errors Creates (usually) temporary object code file Linker/Loader to combine object file with other object files and execute program Creates final executable program

Executing a Program CPU Special instructions used to examines each program instruction in memory sends out command signals required to carry out the instruction Special instructions used to input data into memory for the program to use output data to display or printer (or other device)

Compilers Source File Object File Other Object Files Executable File Editor used to create program Compilers Source File Compiler translates program into machine language successful unsuccessful Object File Error Messages Linker connects object files Loader prepares for execution Other Object Files Executable File

Java .java .class Source File Byte Codes Other Object Files Editor used to create program Java .java Source File Compiler translates program into machine language successful unsuccessful Byte Codes .class Error Messages Other Object Files Java Runtime Environment