# 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 |