Next:
- C and
Up: The
- C or
Previous: The
- C or
As introduced in chapter 2, we describe, as a target
language, the processor and the memory models, using a subset of
the standard C-language, called Restrained-C or
. This
provides us with a kind of ``virtual target machine'' for our
specifications.
Therefore, the restrained C-language will be used for
two purposes:
- Define memory-objects, i.e. pieces of memory which contain some
data on which we want to do apply pieces of code. Very restrictive
aspects will be introduced, since we want:
- To avoid any erroneous addressing, i.e. to able to demonstrate
at compilation time that no memory violation or overflow wil occur.
- To be able to compute the memory addressing time.
- Define pieces of codes, i.e. certain sequences of instructions
which modifies the value of a memory object. Similarly, very
restrictive properties are required, since we want: :
- To avoid any infinite loops or spurious jumps in the code, and
to calculate the computation time, in function of the input data.
- To be able to predict the semantic of the action performed by
the piece of code.
However, it is important to note that we are not going to analyse what,
in the C-language, can fit with the previous requirements and what
cannot, but simply utilize a minimal set of C-features to define the
memory structure and generate pieces of code.
Here the presentation of the set of C-features to be used in the ReViMoGe
system to define the memory structure and to generate pieces of code.
Soraya Arias
Mon Aug 5 17:38:44 MET DST 1996