assembler  vs  compiler


We often encounter computer terminologies especially when we associate ourselves in the world of programming. There are two main types of computer programs used to execute a written system codes. One of which is the compiler, it refers to a program that executes in one language. The latter is known as the source language and transcribes it to another language which refers to a target language. A good example of a source language is the C++ while in a target language is the assembly language. Another programming language that used to translate specific codes is what we call an assembler.

  Assembler Compiler
Analogy Tool that translates assembly language  to machine code


Computer program that is written in one language(source) and translates it into another language(target)
Code conversion Low level language High level language
Example List of assembler Microsoft Visual studio,gcc


What is a Compiler?

A compiler as aforementioned reads a high level language which is the source language and translates it to a low level language which is the target language. It can also perform code optimizations and usually constitutes several components. It has a scanner or lexical analyzer, which converts a program into a string of tokens. Afterwards, the token strings will be converted into parse tree or abstract syntax tree and interpret these syntactic structure semantics using semantic routines.

What is an Assembler?

Specifically, an assembler translates a particular language known as assembly into a machine readable form. It is under the type of a compiler, it performs one to one mapping translation which is called isomorphic translation. This mapping program can produce codes that can be linked and run by other programs. Some additional features of an assembler have debugging systems and support program development.


No comments.

Leave a Reply