Software is a set of instruction to do a particular task. We , users, use a lot of software for carrying out various tasks on computer. These software are called as Application software. Application software are written by programmers. There are number of languages available for writing programs and these languages are known as Computer languages or Programming languages.
Computer Languages are categorised in to generations…
- First Generation
- Second Generation
- Third Generation
- Fourth Generation
- Fifth Generation
1ST GENERATION LANGUAGES - MACHINE LANGUAGE
Machine Language is a low-level language and it is coming under 1st generation languages.
-Machine language uses only the symbols ‘0’ and ‘1’.
-Machine language is a Low-level language.
-This is the only language computer can understand directly.
- It is directly understood by the computer.
- Executes very fast
- It uses primary memory only.
- Very difficult for the programmer to learn and use.
- It is machine dependant –(program written for one system will not run on another system).
2ND GENERATION LANGUAGES - ASSEMBLY LANGUAGE
-Assembly language is also a low-level language and it is coming under 2nd generation Languages.
-Assembly language uses Mnemonic codes in place of 0s and 1s.
-Mnemonic is an abbreviation of a binary instruction.
- It is easier than machine language.
- It uses less memory than High level languages.
- It executes faster than high-level languages.
- It is machine dependent.
- The programmer must know the internal working of computer system.
- It cannot be directly understood by the computer.
3RD GENERATION LANGUAGES (HIGH-LEVEL LANGUAGES)
-Third generation languages also called as High-level languages.
-Programs are written in English like manner.
-As this language is close to English programmers finds it easy to learn and use.
-A language translator is required to convert high-level language programs.
-Examples: C, C++, Java, BASIC, Pascal, FORTRAN, etc.
- Its much easier to learn and use than machine language and assembly language.
- Programs are not machine dependent.
- Program can be easily modified and corrected.
- Programs have to be translated in to machine language.
- Execution time is more than low-level languages.
4TH GENERATION LANGUAGES (Very High Level Languages)
4GL are called as very high level languages.
Examples: APL, CSP, Power Builder, Access.
- They have user-friendly interfaces.
- They are easier than high-level languages.
- They are very close to English language structure.
- Program run slower than earlier languages.
5TH GENERATION LANGUAGES
-5GL closely resemble to human speech.
-5GL designed to make the computer solve a problem without a program written by programmer.
-Fifth Generation languages are used in Artificial Intelligence research.
-Examples: LISP (List processing), PROLOG
Since computer only understands binary codes, 0 and 1, all programs written in any other language need to be translated to machine language before execution. There are three types of translator programs.
Assembler is a system software which translates assembly language to machine language.
Interpreter is a system software which translates high-level languages to machine language. Interpreter translates and executes the programs line-by-line.
Compiler is a system software which translates high level language programs to machine language. Compiler translates the whole program first and then start executing the program.