Compiler , Interpreter , Linker , and Loader ?
https://www.computersprofessor.com/2016/06/compiler-interpreter-linker-and-loader.html
Compiler :
A
compiler is a special type of program that transforms the source code written in
a programming language (the source language)in to the machine language , which
uses only two digits _0 and 1(the target language). The resultant code is 0s and
1s is known as the object code. The object code is used to create an executable
program.
Therefore
, a compiler is used to translate the source code from a high-level programming
language to a lower level language(e.g., assembly language or machine code).
The work of a compiler is only to
translate human readable source code in to computer-executable machine code.
Interpreter :
like
the compiler , the interpreter also executes instructions written in a
high-level language. Basically, a program written in a high-level language can
be executed in any of the two ways-by compiling the program or by passing the
program through an interpreter.
The
compiler translates instructions written in a high-level programming language
directly in to machine language; the interpreter, on the other hand, translate
the instructions into an intermediate form, which it then executes.
Linker:
A linker, also called link
editor or binder, is a program that combines the object modules to form an
executable program. In general , in case of a large program, programmers prefer
to break the code in to smaller modules, as this simplifies the programming
task. Eventually, when the source code of all the modules has been converted in
to object code, all the modules need to be put together, which is done by the
linker.
Loader:
A loader is a special type of a program that copies programs from a storage device
to the main memory, where they can be executed. Most loaders are transparent to
the users.