Computer Languages : Machine Language, Assembly Language and High-Level Language

Computer languages : Machine, Assembly and high level

Computer Language

A language is a prime medium of communication for interaction between two or more individuals. Similarly, the user needs a language to interact with the computer.

Computer languages are the languages that are used to provide interaction between user and computer or between two or more computers to perform a specific task. There are various types of computer languages, each developed for performing specific types of work by communicating with the machine.

For Example,

1. A Programming language is a type of computer language used by the programmers to communicate with the machine by giving a set of instructions.

2. HTML (Hyper Text Markup Language) is a markup language used to add structure.

Computer Languages Classification

The Computer Languages are broadly classified into three categories

1.    Machine Language

2.    Assembly Language

3.    High Level Language

Machine Language

Machine language is the first-generation language. It is the low-level computer language that can be understood only by the machine. It comprised entirely of binary digits (0’s and 1’s) to represent instructions and code. For example, the value 123 is represented as 1111011 in the computer system. As a result, it becomes extremely difficult for the users and programmers to remember it. To overcome this difficulties Assembly language came into existence.

The machine languages make use of binary language (combinations of 0’s and 1’s) to represent machine code. The 0’s and 1’s in binary language indicates false and true states respectively. The main advantage of machine language is that the machine code is directly read by the CPU. As a result, it does not require a translator or interpreter.

Assembly Language

Assembly language is the second-generation language. It is a middle level programming language for microprocessors and other programmable devices. It makes use of symbols, numbers and abbreviations to represent instructions.

The assembly language is considered as a symbolic representation of machine code needed to program a given processor architecture.  The usage of binary coded instructions in low level language is replaced by mnemonics and operands in assembly language. A mnemonic is an abbreviation for an operation in assembly language. It is entered in the OPCODE (Operation Code) section of an assembler program instruction.

For example, the mnemonics ADD, SUB, MUL, DIV, INC, DEC are used to perform arithmetic operations.

As we know, computer can understand only machine language, we need a translator to convert assembly language into machine language for processing. This translation is done by Assembler which takes an assembly code as input and produces machine code as output. Also, assembly language is not portable. It is processor specific i.e., the program written in one assembly language would need to be completely rewritten for it to run on any other CPU.

High Level Language

High Level language is the third-generation language which can be understood by the users. The various limitations encountered in machine and assembly languages led to the development of High-level languages. A high-level language is any programming language that is human readable and enables programmers to develop programs in a user-friendly environment. They are less independent to a particular type of computer and has a higher level of abstraction from the computer.

Examples of high-level languages are C, C++, JAVA, FORTAN, COBOL, etc. All these programming languages are easier for the user to understand and portable.

As we know, computer can understand only machine language, we need to convert high level language into machine language for processing. To do such translations we use Compiler or an Interpreter to convert into binary code for a computer to understand.

Understanding Computer Languages

The following figure depicts three categories of computer languages 

Computer language typed

From the figure, we can observe the following points
  • The High-Level language is easily readable and understandable by the user.
  • It is very difficult for users and programmers to identify errors in Machine language.
  • In the given figure, under Assembly Language, the mnemonic MVI (Move Immediate) move immediate data to a register or memory location. The mnemonic ADD performs addition operation on the given data.
  • It is difficult for programmers to memorize machine language.




Post a Comment

0 Comments