RISC Vs CISC, Harvard V/s Van Neumann
RISC Vs CISC, Harvard V/s Van Neumann
Preprocessor Linker
Libraries
Preprocessed Code Executable Code
Compiler Loader
Assembly Code
Debugger
Assembler
Compiler, Assembler,
Linker, Cross Compiler...
Compiler
A software program that converts
source code that written in high level
programming language into low
level language.
A Native-compiler runs on a
computer platform and produces
code for that same computer
platform.
A Cross-compiler runs on one
computer platform and produces
Assembler
Convert assembly into object
file
Linker
A linker or link editor is a program that
takes one or more objects generated
by compilers and assembles them into
a single executable program or a
library that can later be linked to in
itself.
Link the object files and libraries to
form an executable
Cross-Compiler
A cross compiler is a compiler
capable of creating executable code
for a platform other than the one on
which the compiler is running.
For example, a compiler that runs on
a Windows 7 PC but generates code
that runs on Android smartphone is a
cross compiler.
Debugger
A debugger or debugging tool is a
computer program that is used to test
and debug other programs.
The code to be examined might
alternatively be running on an
instruction set simulator .
When the program crashes, the
debugger shows the actual
position(Segment) in the original code
if it is a source-level debugger.
If it is a low-level debugger or a machine-
language debugger it shows that line in
the program.
Emulator
An emulator is a piece of
Hardware/Software that enables one
computer system to run programs
that are written for another computer
system.
For example emulator 8086,
8086 microprocessor programs.
An emulator is used on the target
processor (the processor for which
the program is being written).
Emulator Example
Android
Virtual
Machine(AVM)