C is called middle level language because it actually binds the gap between a machine level language and higher level languages by providing features of both high level and low level language.
A user can use C language to do system programming (for writing operating system ) as well as Application programming ( for generating menu driven customer billing system) . That’s why it is called the middle level language.
C is referred to as middle level language as with C we are able to manipulate bits,bytes, and addresses and interact with the hardware directly.we are also able to carry out memory management functions.
So we can say , Though C lies between the elements of high level programming language and low level language It provides relatively good programming efficiency ( as compared to machine oriented language ) and relatively good machine efficiency ( as compared to high level languages ).
For this reasons c is called middle level language.
Related post - Why is C called a structured programming language?
Features
- C programming supports Inline Assembly Language programs.
- Using Inline assembly language feature is C we can directly access system registers.
- C programming is used to access memory directly using pointer.
- C program supports high level language features.
- It is more user friendly as compare to previous languages so C programming is Middle level language.
High level language example - Ada, Modula-2,Pascal,COBOL,FOTRAN,BASIC.
Middle Level language example - JAVA,C,C++,FORTH
Low level language example - Assembler
Low level features of C language -
- C programming language supports low level inline assembly language programs.
- Using low level inline assembly feature of C we can directly access system register.
- C programming supports bit level programming which means we can modify and manipulate in bit level while programming.
- Using pointer , we can directly access memory.Which allows us to dynamic memory allocation.
High level features of C
- Program written in C are machine independent and this portable.
- Rich set of built in functions,data types and operators.
- High level constructs like if-else, do-while etc
- C is more user friendly and syntax's approaches to English like language.
0 Comments