Download presentation
Presentation is loading. Please wait.
1
CS 330 Programming Languages
Dr. Blaise W. Liffick Spring 2019
2
Programming Techniques Languages Programming Environments
Problem Analysis Program Design Algorithms & Design Patterns Data Structures Paradigms Java C++ Hardware Network Linux Eclipse Programming Environments
3
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
4
First Generation: 1940 – 1956 Vacuum tubes Scientific oriented ENIAC
UNIVAC – first commercial computer
5
Second Generation: 1956 – 1963 Transistors replaced vacuum tubes
I/O via punch cards and printers First “high-level” languages developed Data processing introduced
6
Third Generation: 1964 - 1971 Integrated circuit (semiconductors)
Keyboards & monitors Time sharing Computer “families” Minicomputers vs. mainframes
7
Fourth Generation: 1971 – ? VLSI CPU on a chip: Microprocessor
Microcomputers & Supercomputers
8
Fifth Generation: ??? Based on artificial intelligence
Big “Fifth Gen” project by Japanese in 1980’s Voice recognition, parallel processing, superconductors
9
Categories of Computers
Supercomputers Mainframe Minicomputers Microcomputers Mobile devices Power Size Cost
10
Programming Languages
Machine Language Most fundamental language of the computer Unique for each processor type Binary 0s and 1s that specify what to do
11
Table 1.2 A Program in Machine and Assembly Language
12
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
13
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)
14
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
15
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)
16
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
17
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.