Syllabus Detail

  • Evolution of programming languages; machine, assembler, procedural, non-procedural and object oriented. 11 ATAR

 

Background

  • Early programming code was what made the CPU in a computer work.
  • They originally only worked for the one type of computer CPU.
  • Different CPUs had different languages.
  • All programming languages must be translated to 0s and 1s, for the CPU to carry out those instructions. 
  • These instructions are code in binary using 0s and 1s  eg  0000 1101
  • The more modern the programming language, the more people friendly it is to code.
  • The older it is, the less people friendly, but more computer friendly to run.
  • Programming languages are the symbols used to write code.
  • They have started machine like and are now more like human natural language.
  • All programming languages, even the most modern, translate to machine language.
  • Some categorise these into First Generation Languages (GL), Second GL, Third GL, Fourth GL, Fifth GL

Machine Language (1GL)

  • Language or instructions that can be totally understood by the computer hardware.
  • Language that cannot be understood by humans, unless they can read binary.
  • It is binary and uses 0s and 1s    eg 1110100010101010101010101001010
  • Each section of binary is one instruction for the CPU to act on. This is repeated many times.
  • Different machine language for different CPUs
  • Can we code directly in machine language? Yes, but not easily.
  • Input methods include punch cards, magnetic tape and by toggling switches.
  • Yes, this is before keyboards were common for computer use.

Assembler Language (2GL)

  • Programs written in assembler language need to be translated into machine language to be understood by the CPU.
  • The assembler is the program that translates assembler language to machine code/language.
  • Example code has LOAD,  ADD, STORE,   
  • Assembler language is specific to hardware.
  • Assembler code runs fast. (advantage)
  • See example at wikipedia

Procedural Languages (3GL)

  • The first type of programming to be portable to many computers.
  • Procedural language works by performing a sequence of steps.
  • These become the source code which gets compiled into machine language
  • This source code gives instructions to do the necessary steps.
  • Words and symbols are used 
    • Compute Total Pay
    • If Pay >0
  • Procedures can be used for functions that can be called and run to return a value.(chunks of code that can be re-used)
  • Example program languages are C / C++, PASCAL and Java and many more.

 Non-Procedural Language (4GL)

  • Non-procedural languages specify what a program should do.
  • Enables users to access a relational database eg
    • SELECT * FROM Customers
    • WHERE CustomerName = 'Bill';
  • These are very good for getting reports from a database eg SQL
  • The code is more like natural speech and focuses on input and output

Object Oriented Programming (OOP)

  • Programming that uses objects by communicating with other objects.
  • This programming uses classes and objects that model objects in the real world.
  • The main module is called a class which can have actions or methods.
  • Objects can send and receive messages from other objects and also they can process data.
  • The code modules can share information that saves time in programming.
  • Examples are Java, Visual Basic, Python, Ruby and many more.

Step 5 - Further Research 

  1. Video on youtube.com - History of Computing in 90 secs
  2. http://www.extremetech.com/computing/91572-the-evolution-of-computer-languages-infographic
  3. Comparison of procedural and object-oriented with examples.
  4. OOP explained quite well.

 

Step 6 - Quiz Below.

 

This quiz is for registered users only.

 

Found an error or have an enhancement? Please let us know via this contact form