Check Out: Free Ringtone Maker App Download
- An absolute loader loads a binary program in memory for execution.
- The binary program is stored in a file contains the following:
- A Header record showing the load origin, length and load time execution start address of the program.
- A sequence of binary image records containing the program’s code. Each binary image record contains a part of the program’s code in the form of a sequence of bytes, the load address of the first byte of this code and a count of the number of bytes of code.
- The absolute loader notes the load origin and the length of the program mentioned in the
- It then enters a loop that reads a binary image record and moves the code contained in it
to the memory area starting at the address mentioned in the binary image record.
- At the end, it transfers control to the execution start address of the program.
Advantages of the absolute loading scheme: Absolute Loaders
Simple to implement and efficient in execution.
Moreover, Saves the memory (core) because the size of the loader is smaller than that of the assembler.
Allows use of multi-source programs written in different languages. In such cases, the given language assembler converts the source program into the language. And a common object file is then prepared by address resolution.
The loader is simpler and just obeys the instruction regarding where to place the object code in the main memory.
Disadvantages of the absolute loading scheme: Absolute Loaders
The programmer must know and clearly specify to the translator (the assembler) the address in the memory for inner-linking and loading of the programs. Care should take so that the addresses do not overlap.
For programs with multiple subroutines, the programmer must remember the absolute address of each subroutine and use it explicitly in other subroutines to perform linking.
If the subroutine is modified, the program has to assemble again from first to last.