Language is a mode of communication; either it is used to communicate with person to person or any other. In computer science, the language is a mode of communicating with computer system.
We must have heard names like FORTRAN (Formula Translation), BASIC (Beginners All-purpose Symbolic Instruction Code), COBOL (Common Business Oriented Language) etc. these are programming languages. So instructions or programs are written in a particular language based on the type of job. As an example, for scientific application FORTRAN and C languages are used. On the other hand COBOL is used for business applications.
Computer Languages are two types:-
-
Programming Languages:-
There are two types of programming languages. There are Low Level Languages (L.L.L) and High Level Languages (H.L.L).
-
Low Level Languages:-
The term low level means closeness to the way in which the machine has been built. Low level languages are machine oriented and require extensive knowledge of computer hardware and its configuration.
-
Machine Language:-
It is a language of computer, that’s the computer directly, understands. Machine level language is based on binary number systems, i.e., everything is specified in terms of 0’s and 1’s. When this sequence of codes is fed to the computer, it recognizes the codes and converts it in to electrical signals needed to run it.
It is not an easy language for you to learn because of its difficult to understand. It is efficient for the computer but very inefficient for programmers. It is considered to the first generation language. It is also difficult to debug the program written in this language.
-
Assembly Language:-
It is the first step to improve the programming structure. We should know that computer can handle numbers and letter. Therefore some combination of letters can be used to substitute for number of machine codes.
The set of symbols and letters forms the Assembly Language and translator program is required to translate the Assembly Language into Machine Language, which the computer can understand. The translator program is called “Assembler”. It is considered to be a second- generation language.
-
High Level Languages:-
We know that Assembly Language and Machine Level Language require deep knowledge of computer hardware where as in higher language have to know only the instructions in English words and logic of the problem irrespective of the type of computer we are using.
High level languages are simple languages that use English & Mathematical symbols like +, -, %, / etc. for its program construction.
High level languages are problem oriented languages because the instructions are suitable for solving a particular problem. For example COBOL (Common Business Oriented Language) is mostly suitable for business oriented language where there is very little processing and huge output. The mathematical oriented languages like FORTRAN (Formula Translation) and BASIC (Beginners All-purpose Symbolic Instruction Code) where very large processing is required.
In the late 1950’s and 1960’s the high level languages developed. Unlike low level languages (Machine & Assembly) high level languages make it easy for programmers to develop and maintain programs.
Compiler and interpreter are the programs used to converts the high level languages into machine level languages.
-
Compiler:-
It is a program translator that translates the instruction of a high level language to machine language. It is called compiler because it compiles machine language instructions for every program instructions of high level language. Thus compiler is a program translator like assembler but more sophisticated. It scans the entire program first and then translates it into machine code.
-
Interpreter:-
An interpreter is another type of program translator used for translating high level language into machine language. It takes one statement of high level languages, translate it into machine language and immediately execute it. It differs from compiler, which translate the entire source program into machine code and does involve in its execution.