What is Machine Language ? Learn with Video
What is the program ?
A computer program is a sequence of instructions written using a Computer Programming Language to perform a specified task by the computer.
The two important terms that we have used in the above definition are:
- Sequence of instructions
- Computer Programming Language
Uses of Computer Programs
Today computer programs are being used in almost every field, household, agriculture, medical, entertainment, defense, communication, etc.
Listed below are a few applications of computer programs:
- MS Word, MS Excel, Adobe Photoshop, Internet Explorer, Chrome, etc., are examples of computer programs.
- Computer programs are being used to develop graphics and special effects in movie making.
- Computer programs are being used to perform Ultrasounds, X-Rays, and other medical examinations.
- Computer programs are being used in our mobile phones for SMS, Chat, and voice communication.
Definition of Programming Language
A computer or a system is operated by given a set of rules and instruction to perform some task. These set of rules and instructions are able to control the working of computer or any automated and manipulated machine. To control the computer system using these sequential set of grammatical rules are known as programming language.
In other words, ‘A programming language is a vocabulary and a set of grammatical rules for instructing a computer system to perform any specific task’. Hence we can say that a programming language plays a very important role to control and operating a computer system.
Classification of Programming Languages
In the present scenario of study programming languages become a very wide area of engineering and research. As the involvement of computer, automation and robotics growing in our daily life, programming becomes highly required to control all of them. To control all of these systems and machines and take desired output by them skilled programming languages is necessary. However the area of programming language become how much wide but it will be under one of the three categories of programming languages. Since the starting of programming language, it is classified into three categories. Sometime it is also known as level and generation of programming language.
All computer programming languages are broadly classified into the following –
- Low level Language
(a) Machine Language
(b) Assembly Language
- High-level Language
Low Level Language
Languages that do not include any translator to convert their signals into machine signals, it is called lower level language. There is no need to translate the code of the lower-level language in some way. Machine Language and Assembly Language are two examples of this language. But it is very difficult to use them in the program. To use it, it is necessary to have deep knowledge about computer hardware. It takes a lot of time and the probability of error is excessive. Execution is faster than the high level language.
These are of two types –
- Machine Language
- Assembly Language
(a) Machine languages (First Generation of programming language)
Machine language is the language that uses only 0 (Off) and 1 (on) two digits. Which we call each digit as bit. It is the computer’s own language which he understands, just as we understand Hindi language very easily. In the same way we have given different names to the language understood by human beings, in the same way the machine language has been given the name which only the machine can understand, we can understand the machine language, but we can talk in the machine language. Only the written medium can be used which we call coding in the language of computer.
Machine language is written in the Binary Code, with two digits 0 and 1 being used. 0 means ‘low or off’ and 1 means ‘high or on’. To understand 0 and 1, then the electrical switch in your own homes, by which you run a fan cooler refrigerator in your home appliance, take a look at them when you run a device, the button has to be turned on, which we will call 1 which is an electric There is a signal and will close the button to shut down which is an electrical signal of off 0. Programming or coding in computer with the help of these electrical signals is done by computer experts. We understand this something like this.
- 000 0
- 001 1
- 010 2
- 011 3
- 100 4
- 101 5
- 110 6
- 111 7
Defination of Machine Language
It is the lowest level and named as first generation of programming language. Machine language consist only two condition i.e. either true (1) or false (0); this type of language known as binary language.
A computer system could understand only binary language i.e. all the instruction feed into the computer system must be in the form of 0 or 1. Machine level languages are very tough to understand by the humans.
Here is a binary example of the machine language –
We take text “Hello World”:
01001000 01100101 01101100 01101100 01101111 00100000 01010111 01101111 01110010 01101100 01100100
What is Machine Language ?
Advantages of Machine Language
There have many advantage of machine level language; some of them are listed below –
- They are directly interacting with computer system.
- There is no requirement of software of conversion like compiler or interpreters.
- It takes very less time to execute a program, because there is no conversion take place.
Disadvantages of Machine Language
Some of the disadvantages of machine language are listed below –
- Its machine dependent language i.e. individual program required for each machine.
- To develop a program in machine language, it is too hard to understand and program.
- Its time consuming to develop new programs.
- Debugging process is very hard because of finding errors process is typical.
- It is not portable language.
(b) Assembly level languages (Second Generation programming language)
It is a middle level and named as second generation programming language. It contains the same instruction as machine level language, but the instructions and the variables have specific name or called commands instead of being just binary numbers. It also uses symbols to describe field of instructions. Every aspect of machine variable in program, assembly language uses one statement per machine instruction. It managed explicitly all instruction like register allocation, call, stack, timer, jump, loop etc.
To understand the assembly language computer must require an assembler which takes a part in between assembly language and computer system to convert the assembly instructions into the machine language. This assembler is software or a set of program which translates assemble language programming instruction into the machine language.
For example –
Advantages of Assembly Language
There have many advantage of assembly level language. Some of them are listed below –
- It is easily understood by human because it is uses statements instead of binary digits.
- To develop a program it takes less time.
- Debugging and troubleshoot is easy due to easily find error.
- It is a portable language.
Disadvantages of Assembly Language
Some of the disadvantages of assembly level language are listed below –
- It is a machine dependent language due to that program design for one machines no use of other machine.
- Sometime it’s hard to understand the statement or command use.
- High-level language
High level language is the upper level language and also known as third generation programming language. It does consider as high level because, which language comes under this category are closer to human languages. Hence this is highly understood programming language by human. There have many examples of high level languages such as, FORTRAN, Pascal, C, C++, JAVA, ADA, COBOL, LISP, Prolog etc.
The first high level programming language was written in 1950. Those programs written in high level language must require software or a set of program to translate that program into machine understandable. This software called compiler and interpreter. The main job of compiler and translator is to take the source code of the program and convert that code into the machine understood code.
Advantages of High Level Language
There have many advantage of high level language. Some of them are listed below –
- In this instructions and commands much easier to remember by programmer.
- Its logic and structure are much easier to understand.
- Debugging is easier compare to other languages.
- Less time consuming to writing new programs.
- HLL are described as being portable language.
Disadvantages of High Level Language
Some of the disadvantages of high level language are listed below;
- HLL programming language take more space compare to other MLL (machine level language) and ALL (Assembly level language).
- This programming language execute slowly.
Features of High Level Language
Some general features of High level languages are:-
- Problem-Oriented Language: These are languages used for handling specialized types of data processing problems where programmer only specifies the input/output requirements and other relative information of the problem, that are to be solved. The programmer does not have to specify the procedure to be followed in solving that particular problem.
- Procedural Language: These are general purpose languages that are designed to express the logic of a data processing problem.
- Non-procedural Language: Computer Programming Languages that allow users and professional programmers to specify the results they want without specifying how to solve the problem.
So , it was all about What is Machine Language ? , We hope you understand everything well. If you have still any questions or doubts related with What is Machine Language ? then you can freely ask us in the comment box below.