Académique Documents
Professionnel Documents
Culture Documents
Many languages convert source code, either directly or after having been
preprocessed, to target code through the use of a
generates some target
A compiler typically translates all of the source code to a target code at one time.
As is usually the case in embedded systems, most compilers are located on the
programmers host machine and generate target code for hardware platforms that
differ from the platform the compiler is actually running on.
Some generate machine code while others generate other high-level languages,
which
compiler.
Still other compilers generate assembly code, which must be run through an
assembler.
After all the compilation on the programmers host machine is completed, the
remaining target code file is commonly referred to as an object file depending
on the programming language used.
A linker integrates this object file with any other required system libraries,
creating
Memory
can
defragmentation
typically
become
very
fragmented
and
or too expensive
Certain types of embedded software may need to be executed from a particular
memory
location.
This software placement capability can be supported by the master processor, which
supplies specialized instructions that can be used to generate position independent
code, it could be separated by the software translation tools alone.
Where a compiler/assembler produces relocatable modules, process instruction
formats, and may do some translation of relative to physical (absolute)
addresses. An interpreter generates (interprets) machine code one source code
line at a time from source code or
This is because the compiler, in large part, determines the size of the executable
code by how well it translates the code. This not only means selecting a
compiler based on
Optimizing the code for performance means that the compiler understands and
makes
the register set, knowing the various types of on-chip ROM and RAM, the
number of clock cycles for
how the compiler translates the code, a developer can recognize what support is
provided by the compiler and learn.