---
# System prepended metadata

title: Cahier des charges

---

# Cahier des charges

## Contexte
Dans le cadre du cours de *conception OS* de 3e année en *Développement logiciel et multimédia* à la HE-Arc , il est demandé de réaliser un projet parmi une liste proposé. Le projet est supervisé par M. Cortinovis.

Le choix du projet c’est porté sur la proposition numéro 9: *Assembleur / moniteur pour un mini processeur didactique.*

## Objectifs
Le projet a pour but de permettre à un utilisateur d’observer l’exécution d’un code assembleur pas à pas. Pour ce faire une simulation de processeur doit être créée ainsi qu’un assembleur.

### Principaux
- définir les instructions du CPU
- définir l’espace dédié au registre (16 x 1 octet)
- définir l’espace dédié à la mémoire (256 x 1 octet)
- lecture d’un fichier binaire
- générer un fichier binaire depuis un fichier assembleur
- implémenter la lecture pas à pas
- implémenter un affichage console
- afficher les registres
- afficher la mémoire
- afficher la queue des instructions avec un pointeur sur l’instruction courante

### Secondaire
- mettre en avant la dernière case mémoire modifiée
- permettre de changer le suivie du pointeur entre libre ou focus
- permettre à l’utilisateur de choisir à quelle adresse mémoire les instructions doivent commencer

## Calendrier

|      Date       |            Description            |
|:---------------:|:---------------------------------:|
| 13 janvier 2022 | Choix et initialisation du projet |
|  17 avril 2022  |            Rendu final            |