Thousands of languages ​​are spoken and written in different ways in the world. Some of these languages ​​are limited to any country or region. Whereas English is an internationally spoken language.

Therefore, English is used as a programming language in computers. Indo-Arabian numerals are used in computer keyboards. With the development of computer technology, word processors were invented, which made it possible to write in various scripts. But still, English is currently used in high-level computer language. It is important to point out here that computer programs, according to which the computer works, are written in a variety of languages. These languages ​​are-

  • Low-level language or machine languages, also known as machine codes.
  • Assembly language, also known as assembly code.
  • High-level language, such as FORTRAN, BASIC, COBOL, etc.



Low-level language is considered inferior because it moves to the level of the machine and can determine how exactly the hardware elements of a computer interact. These low-level languages ​​require detailed knowledge of hardware components and their configuration. Machine level language and assembly language are classified under low-level languages.

Machine language is considered the natural language of computers, which can be directly identified by electronic machines. It is a non-portable and machine-dependent language consisting of only two binary numbers 0 and 1. Each instruction in the computer exists in the form of binary code. However, it is quite difficult to instruct a computer in a binary language, which means interacting with a computer in a binary language or writing programs in a machine-level language. Writing, testing, and debugging in machine language is slow and latent errors are very common. The language of a machine is defined by the hardware design of that hardware platform. It is tedious and time-consuming.

Another type of low-level language is assembly language. Programmers in this language use commands that are slightly similar to normal English that is somewhat understandable and interpreted by the programmer. Programs are constructed using alphanumeric symbols (also known as Mnemonics) instead of 0 and 1. This includes ADD, SUB, MUL, DIV, RLC, and RAL as symbols or Mnemonics.

Although each program is written in a language other than machine language is translated to the machine language. Assembler is used for such operations to translate non-machine language to machine language. Each processor is enabled with its own assembly language such as 8085, 8086, 80186 processors have their own assembly language.


Assembly Language Was Created To Overcome The Difficulties In Writing Programs In Machine Language As It Was Very Difficult For Us To Understand The Signs To Be Written In Machine Language 0 And 1.

Signs Were Also Used In Assembly Language, But This Signal Was Made From Our Understandable Words Called Mnemonic Code, Using These Mnemonic Codes Made It Easier To Write Programs In Assembly Language.

Examples of mnemonic codes.

Mnemonic Code

Machine Code










To run a program written in assembly language, we have to use mnemonic court then to convert these codes into machine language we need a translator which we call assembler. And after completion of the work, we get the answer according to the program written in assembly language.

We understand this in the same way that we go to another country and we know Hindi and the people of the country we are going to speak in English, then we will need a band that we will need for the people of that country.

We can be called translators or translators, so that we can help English to speak Hindi and Hindi to English. To do this, the translator must have knowledge of both languages ​​so that they can help to communicate.

High level language

High-level languages ​​are programming languages ​​constructed by combining mathematical symbols, natural language characters, and symbols and constructed by real-world scenarios. In a general way, Modern Procedure-Oriented Programming Languages ​​are known as high-level languages.

These are mainly implemented for faster and easier development of a program. It does not require memorizing the architecture and registers of the CPU for the development of a program. The compiler is used to translate high-level language programs into machine language. COBOL, FORTRAN, BASIC, C and C ++, Java, etc. are various top-level languages.

How does machine language work?

The computer works according to our commands but being a machine, it first converts them into machine languages ​​to understand our commands. As we have read, machine language means to convert any information to be electric puls or not, i.e. 0 and 1 respectively. The machine code of each computer is determined by the chip used in it. We can understand the command given in machine code with an example.

Suppose an order of machine code is 0011, 1000, 1001. In this first 'Nibble' (four digits) 0011 means 'add'. The second nibble 1000 means 8 and the third nibble 1001 means 9. In this way, this command means that the data of location number 8 is associated with the data of location number 9 and writes the cumulative result to location number 8.

The central processing unit of the computer accepts these binary signals according to whether or not the power pulse is there. These pulses are released from the clock of the computer which then passes through the electronic gates (Gates). On average, 8 MHz is released in a computer on an average of 8 MHz.

To understand how machine code instructions are made and how the computer works, we will understand something about the central processing unit. The following parts of the central processing unit play different roles in this work -

  1. Arithmetic and Logical Unit (ALU)
  2. Main memory
  3. Control unit
  4. Digital clock
  5. register

The registers are also of four types -

  1. Memory data register
  2. Current Instruction Register
  3.  Memory cards register
  4. Sequence control register

While working on the data, they are kept in these registers for some time, extracted from the main memory. These registers are called temporary memory due to the data being held for some time. Apart from this, there is also an accumulator inside the ALU in which the results obtained after calculation are kept for some time.


Millions of word-locations are made to hold data in the main memory, which are the same size. In this way, some locations are 8 bits, some 16, and some 32 bits. Every word location has a serial number called its address. Through this address, the data filled in that location can be easily accessed.

The instructions given in machine language have two parts -

  1. Operation or function code and
  2. Operand address

Operation or function code means the work done on the data like addition, subtraction, multiplication, division etc.

Operand address

The operand address, abbreviated as OP code, means the submission of the number of locations of data on which to work, in binary code. In simple terms, an operand address is the physical location in memory where the element information is stored.

Function code

Function codes are written in modern computers by the hex method. Here we will take the example of a hypothetical command which is written by binary method. To reduce the number given in memory location 910 from the number given in the accumulator (the location of the result of the calculation operations so far), an instruction will be given as follows-

Function code operand code

















The function code ie 0011 means subtract and 0000 0000 1001 binary number means decimal location number 9

As we have read earlier, a location has to be determined for each 'data' on which the work is performed. Suppose the address is to be written in binary method and for this we have set four bits in the command, then the total will be 24 i.e. 16 commands will get the location number. In this way, 212 or 4096 memory addresses can be given in 12 locations of the operand address. In other words, we can call this memory address as 4 kilobytes. (1k = 1024 bytes)

Suppose we have to store two numbers in the memory location 1980 and 2142 by multiplying their product in address 0042. For this, three tasks have to be done-

  1. Sending data from memory address 1980 to the accumulator
  2. Ordering multiplication and giving related address
  3. Transferring the product to the accumulator and sending it to the memory location.

The following orders will be given for these three works.

O.P.Code Address

(Operand address)

Order 1



Order 2



Order 3



According to the first coded order, the computer memory location will send the accumulated numbers in 1980 to the accumulator. If there is already a number in the accumulator, it will be found. According to the second order, this number in the accumulator will be multiplied by the accumulated number in memory location 2142 and the product will be multiplied into the accumulator. According to the third order, this product will be transferred from the accumulator and sent to location 0042. If location 0042 already contains a number, it will automatically disappear. 


I am an engineer by profession but being a blogger is my old day's dream to create my site for those who are more curious about my birthplace than I am coming from (India). the current city lives in Navi Mumbai, India

Post a Comment


Previous Post Next Post

نموذج الاتصال