4 – History of Programming Languages

Slides:



Advertisements
Similar presentations
Dr. Ken Hoganson, © August 2014 Programming in R COURSE NOTES 2 Hoganson Language Translation.
Advertisements

ABNIAC The following slide presentation is to acquaint the student with ABNIAC. The version used for presentation is the Java version, which can be found.
101.  When you communicate with people you use a language that you both understand.  The trick is that the computer does not speak English.  To communicate.
9b. Column/Bar Charts CSCI N207 Data Analysis Using Spreadsheet Department of Computer and Information Science, IUPUI Lingma Acheson
CMPT 120 Introduction to Computer Science and Programming I Chris Schmidt.
An Introduction to Programming with C++ Fifth Edition Chapter 1 An Introduction to Programming.
Chapter 6: An Introduction to System Software and Virtual Machines
Chapter 6: An Introduction to System Software and Virtual Machines Invitation to Computer Science, C++ Version, Fourth Edition ** Re-ordered, Updated 4/14/09.
1b – Inside Visual Studio Lingma Acheson Department of Computer and Information Science, IUPUI CSCI N331 VB.NET Programming.
Activity 1 - WBs 5 mins Go online and spend a moment trying to find out the difference between: HIGH LEVEL programming languages and LOW LEVEL programming.
Chapter 2 Software Tools and Assembly Language Syntax.
1 Chapter-01 Introduction to Computers and C++ Programming.
Course Introduction C++ An Introduction to Computing.
Programming Language Rico Yu. Levels of Programming Languages 1.Low level languages 2.High level languages.
Computer Systems Organization CS 1428 Foundations of Computer Science.
Just as there are many human languages, there are many computer programming languages that can be used to develop software. Some are named after people,
Computer Science 101 How the Assembler Works. Assembly Language Programming.
9c. Line Charts CSCI N207 Data Analysis Using Spreadsheet Department of Computer and Information Science, IUPUI Lingma Acheson
1 CSCI N201 Programming Concepts and Database 9 – Loops Lingma Acheson Department of Computer and Information Science, IUPUI.
Chapter 7 Low-Level Programming Languages (slides modified by Erin Chambers)
1.
1 3. Computing System Fundamentals 3.1 Language Translators.
2a – Object Oriented Lingma Acheson Department of Computer and Information Science, IUPUI CSCI N331 VB.NET Programming.
Programming and Languages Dept. of Computer and Information Science IUPUI.
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Control Unit.
Installing Java on a Home machine For Windows Users: Download/Install: Go to downloads html.
2c – Textboxes and Buttons Lingma Acheson Department of Computer and Information Science, IUPUI CSCI N331 VB.NET Programming.
Machine Machine language is PL in which program instructions are written in strings of 0s and 1s.The computer circuitry is wired in a manner that it can.
Compilers and Interpreters
9d. Pie Charts CSCI N207 Data Analysis Using Spreadsheet Department of Computer and Information Science, IUPUI Lingma Acheson
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Control Unit.
Introduction to Computer Programming using Fortran 77.
Representation of Data - Instructions Start of the lesson: Open this PowerPoint from the A451 page – Representation of Data/ Instructions How confident.
Evolution and History of Programming Languages
Invitation to Computer Science 6th Edition
Software Development Environment
Basic Concepts: computer, program, programming …
Installing Java on a Home machine
Why don’t programmers have to program in machine code?
CHAPTER 6: The Little Man Computer
High or Low Level Programming Language? Justify your decision.
Introduction to programming
Operating System Interface between a user and the computer hardware
Control Unit Lecture 6.
CSCI-235 Micro-Computer Applications
Chapter 4 The Von Neumann Model
CHAPTER 6: The Little Man Computer
Chapter 4 The Von Neumann Model
Invitation to Computer Science 6th Edition
Chapter 4 The Von Neumann Model
TRANSLATORS AND IDEs Key Revision Points.
Translators & Facilities of Languages
Assembler, Compiler, Interpreter
Installing Java on a Home machine
High Level Programming Languages
CS105 Introduction to Computer Concepts Intro to programming
Programming.
Assembler, Compiler, Interpreter
CSCI-N 100 Dept. of Computer and Information Science
MARIE: An Introduction to a Simple Computer
Programming Concepts and Database
An Introduction to Programming with C++ Fifth Edition
2g – ComboBox Lingma Acheson CSCI N331 VB .NET Programming
7 – Variables, Input and Output
6 – Miracle And “Hello World”
1.3.7 High- and low-level languages and their translators
Programming Concepts and Database
4d – Program Design Lingma Acheson CSCI N331 VB .NET Programming
Algoritmos y Programacion
Chapter 4 The Von Neumann Model
Presentation transcript:

4 – History of Programming Languages CSCI N201 Programming Concepts and Database 4 – History of Programming Languages Lingma Acheson linglu@iupui.edu Department of Computer and Information Science, IUPUI

Progression Hardware Machine code Assemblers Compilers Interpreters

Hardware encoding Physically wiring the machine Changing the hardware structure Programming in this way is - Very difficult - Extremely tedious - Error prone - Hard to fix problems

Hardware encoding Change physical structure of machine Extremely tedious Very difficult Prone to error

Machine Language Stored Language Concept Von Neumann Treat Instructions as data Each opcode built into ALU has a number Abniac http://wally.cs.iupui.edu/n100/update/AbApplet.html

Machine Language Abniac Illustrate the usage of machine languages All commands have a number Store – 1 Add – 2 Compare – 3 All cells (place holders) have a number 0 – 99, to store instructions and values Machine codes in second blue column Description in third blue column Output window in right most window frame

Machine Language Program can be created by selecting a command, enter values and click on “OK” button Need to run the program after it’s created - click on “Run”. Need to tell the program where to stop running - click on a cell and click “Halt”. “File -> New” to refresh and create a new program.

Machine Language Run Abniac! Create your own Abniac program!

ASCII table

Assembler Mnemonics for opcodes Labeled cells, e.g. cell x E.g. use “Add” to mean “add” Labeled cells, e.g. cell x somewhat easier on programmers E.g. Sto 2 Add 3 Lod 5 …

High-level Language Typed in near-human language Converted to assembler Much easier on programmers Can be assembled or compiled Language is still very precise, but more readable E.g. If (x=2) then response.write “two” else response.write “zero”