The memory size is a significant aspect in the development of embedded systems. Programmers try to reduce the size of the generated compilation of codes through the use of compiler optimization techniques. This method is known as procedural abstraction.
Procedural abstraction is mainly used for optimizing code size. In the process, the repetitive instances of similar code fragments are grouped into new subroutines. During the early methods of programming, procedural abstraction is used on the primitive levels of the machine code in optimizing linkers and binary rewriting tools. A procedure is used to compile codes. It then provides an interface for the code through a formal parameter list and a mechanism for transferring parameters.
There are two types of procedural abstraction. Abstraction by parametrization skips the identification of the provided actual parameters used in the calling procedure. On the other hand, the specification technique provides abstraction from details of implementation of a procedure. Since a procedure has its unique piece of code with well-defined entry and exit points, a specification can be created for the specified code. A code specification defines the functions of the procedure without giving the details of how the procedure is implemented.
Continue reading Procedural abstraction