diff options
Diffstat (limited to 'lib/memoire.c')
-rw-r--r-- | lib/memoire.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/lib/memoire.c b/lib/memoire.c new file mode 100644 index 0000000..c8dd6a4 --- /dev/null +++ b/lib/memoire.c @@ -0,0 +1,33 @@ +#include "memoire.h" +#include "interne.h" +#include "archi.h" + +/*****************************************/ +/** **/ +/** GESTION DE LA MEMOIRE PRINCIPALE **/ +/** **/ +/*****************************************/ + +/* Lit le mot qui se trouve à l'offset 'offset' en mémoire */ +Uint32 LD(Uint32 offset) +{ + Uint32 i; + + Reset(&i); + if (offset < 0 || offset >= TAILLE_MEMOIRE) { + Set(&Err_Mem); + return (i); + } else { + i = memoire_principale[offset]; + return (i); + } +} + +/* Ecrit le mot 'valeur' à l'offset 'offset' en mémoire */ +void ST(Uint32 offset, Uint32 valeur) +{ + if (offset < 0 || offset >= TAILLE_MEMOIRE) + Set(&Err_Mem); + else + memoire_principale[offset] = valeur; +} |