In general we have different types of languages like English,Telugu,Hindi,etc.. These all are our daily life communication languages .Same way in programming we have to interact with different types of computers and mobile phones,etc. for those purpose in programming we have following types of langues.Those are listed below.
We have 3 types of Languages
1. Low Level Language.
2.High Level Language.
3. Middle Level Language.
We have already learn the low level language features of c language and its applications. In this chapter we learn what is exactly Low level Language.
What is Low level language in Computer Science
- Machine Under stand able language.
- Assembly is common high level language.
- Internal machine code Independent.
- Fast to run but slow to write & Understand.
what is Machine level language
- Machine code is the only language microprocessor can process directly without a previous transformation.
- Currently programmers never write programs directly in machine code,because it requires attention to numerous which a High level language would handle automatically.
- Low level language requires memorizing or looking up numerical codes for every instruction that is used.
- For this reason second generation programming languages one abstraction level on top of the machine code.
Below is Example function in 32bit -X86 machine code to calculate the nth Fibonacci series number. 8B542408 83FA007 06B80000 0000C383
Summary of low level languages
Low level languages are machine understandable, difficult to write,requires more efforts to code and debug.
High Level Language
- First High level language was developed in the 1950s.
- High level language is Human Understandable Language.
- English is common Example of High Level Language.
- High level language is Internal Machine Code Independent.
- High level language is Program Oriented Language.
- High level language is Developed for Providing GUI Inter face.
C program can be considerd as High level/ Low level language
- In early 70's, C programming was considered as High Level Language because it was Capble of evaluating ,expressions,parenthesis recursive functions etc.
- Now a days, c may be considered as "Low level Language" by some programmer because it lacks a large runtime-system.
Execution Models of High Level Language
- Interpreted languages are read and then executed directly,with no compilation stage.
- program is read line by line and convert it into machine code and executes it.[Interpreter].
Language are transformed into an executable form before running.There are Two Types of Compilations.
2.1 Machine Code Generation
Some compilers compiles source code directly into machine code. Machine code is generated by using compiler it is called as "truly compiled languages".
2.2 Intermediate Representations
Language is converted into Machine level language and further optimized and reused.
- A language may be translated into a lower- level programming language for which native code compilers are widely available.
- The C programming language is a common target for such translators.
Some High Level Languages:
Middle level Language
C programming bridges gap between traditional Machine Understandable Machine Level language and more Conventional High Level Languages. User can Use C Language to do system programming for writing operating system as well as application programming. "Middle level languages are closely related to Machine as well as Human."
Why c is middle level language ?
- C Programming supports Inline Assembly language programms.
- Using inline Assembly language feature in C we can directly access system registers.
- C programming is used to access memory directly using pointers.
- C programming language supports High level Features.
- It is more user friendly as Compare to Previous languages So c programming language is a Middle level language.