Programming?
- The process of writing a program following the grammar of the programming language is known as Programming.
- The process of using programming language to instruct the computer is known as Programming.
- Computers are dumb, we make them smart by programming.
How do we write code?
- To properly send instructions to the computer we need a programming language.
- We used IDE (Integrated Development Environment). It is a place where we write, run and debug the code and also convert it into machine code.
- Each language has its own set of rules you must follow within IDE. It means you need syntax.
Programming Language?
- •The language which employs to interact with computers is known as a computer or programming language.
- •Computer only understands machine code i.e. series of 1 and 0.
- •Programming language can be categorized into the following ways.
A. Low-Level language
- Machine/Binary language or 1st generation language (1GL)
2.Assembly language or 2nd generation language (2GL)
B. High-Level language
1. Procedural-oriented language or Third generation language (3GL)
2. Problem-oriented language or Fourth generation language (4GL)
3. Natural language or Fifth generation language (5GL)
1. Low-level language
- Low-level language is closer to the hardware designs.
- Developing programs in a low-level language are time-consuming and difficult
- Programmers require detailed knowledge of hardware architecture to use this language.
- It is machine dependent language
- It is more efficient to develop hardware-oriented language.
- Low-level language can be further categorized as.
- a)Machine Language
- b)Assembly Language
a) Machine Language (1GL)
- A machine language consists of binary numbers (i.e. 0 and 1) and this is the only language that is directly understood by the computer so, a language translator is not required for translation.
- It has a very fast execution speed and efficient use of memory.
- A programmer needs knowledge of the internal architecture of computer systems to write a program.
- Programs written in Machine language are machine dependent.
- It is tedious, difficult, and time-consuming to develop and debug a program.
b) Assembly language (2GL)
- Assembly language lies between the low-level and high-level language and this language uses mnemonics (symbolic code like ADD, SUB, etc.) code to write a program instead of 1 and 0 in binary.
- Programs written in this language cannot be executed directly. It needs to translate into machine language code(object code) with the help of an assembler.
- It is easier to develop and debug programs compared to machine language.
- It is also a machine-dependent language.
- Programmers require detailed knowledge of hardware architecture.
- It is useful for developing hardware-oriented system software like device drivers.
2) High-level language
- High-level languages are closer to human languages or English-like words which makes it easy to write, read and debug the program.
- A compiler or interpreter translates the program written in a high-level language into machine language because high-level language is not directly understood by a computer.
- High language is machine-independent language. So, a program developed for a system can also be used in another system without modification.
- Examples of High-level languages are C, C++, FORTRAN, BASIC, etc.
- High-level language can be further categorized as:
- a)Procedural Oriented language (3GL)
- b)Problem-Oriented language (4GL)
- c)Natural Language (5GL)
a) Procedural-oriented language (3GL)
- It is a general-purpose programming language that is designed to express the logic and procedure of a problem.
- More advanced and user-friendly software can be developed.
- Programmers need to specify the working process of the program in detail.
- Program execution is slower than the Low language.
- Programmers don’t require detailed knowledge of hardware architecture.
- It is a machine-independent language.
- Examples are C, C++, BASIC, etc.
b) Problem-oriented language (4GL)
- It allows the user to specify what the output should be, without describing all the details of how the data should be manipulated to produce the result.
- These are result oriented and include database query languages.
- It increases the speed of developing programs.
- Reduce errors while writing programs that are easy to maintain.
- It is even easier to develop and debug programs than in procedural-oriented language.
- Web-based software can be developed.
- It is also a machine-independent language.
- Program execution is even slower and difficult to develop hardware-oriented software.
- Example: PHP, My SQL, SQL, etc.
c) Natural Language (5GL)
- It is currently being used for neural networks and is still in the stage of development.
- In this language, statements look like normal sentences.
- It will be even easier to develop and debug programs.
- It will also be machine independent language
- Programmers will not require detailed knowledge of hardware architecture and programmers don’t require specifying the working process in detail.
- Examples: PROLOG, LISP, etc.
•