HELP CNED EXO D'INFORMATIQUE

Résolu/Fermé
uesgui Messages postés 172 Date d'inscription vendredi 29 décembre 2000 Statut Membre Dernière intervention 10 octobre 2012 - Modifié par ngu_david le 11/07/2011 à 16:06
 Cerebronx - 20 déc. 2008 à 08:57
Bonjour à tous ,
Je suis étudiant via le CNED (Centre National D'enseignement à Distance) et j'ai un exo en informatique qui me pose problème.J'ai fait des recherches et tout (via des sites internet) mais je ne suis pas sûr d'avoir la bonne réponse alors si quelqu'un pouvait m'indiquer des liens d'aide ou des indices ce serait bien sympa.
(Je demande pas la correction détaillée de l'exo je risquerait de me fR gronder) mais bon des indices ...

Voici l'exo :
La machine sur laquelle porte l'exercice comporte les éléments suivants:
une mémoire principale de 32 octets;
un registre de travail de 8 bits (nommé ACCU) qui contient une des entrées de l'UAL avant exécution de l'opération et le résultat de l'opération ensuite;
une Unité Arithmétique et Logique (UAL) sachant exécuter les opérations suivantes: Addition, Soustraction;
un registre de 2 bits (nommné FLAGS) qui sont positionnés en fonction du résultat de l'UAL (BitO= 1 si le résultat est nul, Bit1 =1 si le résultat est négatif) ;
un registre compteur d'instruction (IP) qui contient l'adresse de la prochaine instruction à exécuter;
un registre instruction (INST) qui contient le code de l'instruction courante.

1. La liste des instructions est la suivante : addition, soustraction, chargement du registre ACCU, rangement de ACCU (sauvegarde en mémoire de son contenu), branchement, branchement si nul, branchement si négatif, fin. Donner un code binaire (Codop) et un nom
symbolique de votre choix à chacune d'entre elles.
2. Écrire un programme (en langage symbolique) dont la première ligne sera à l'adresse 10h de la mémoire, permettant d'ajouter deux nombres (N1 et N2) stockés aux adresses 01h et 02h
et rangeant le résultat à l'adresse 03h.
3. Représenter sous forme de tableau, l'évolution des registres ACCU, FLAGS et IP au cours
de l'exécution du programme précédent (en prenant NI =2 et N2=3).
4.Représenter en binaire le contenu de la mémoire avant exécution du programme.

Pour la question 1 je trouve (000;001;010;011;100;101;110;111) et puis 8 noms . Je me trompe ?
Mais dans les questions suivantes je comprend pas :
- ("en langage symbolique")
- "l'adresse 10h " qu'est ce que cela signifie ?

Une idée ?

Merci de votre participation.

2 réponses

Bonjour Uesgui,

Voici un lien qui te parlera de programmation en langage symbolique : http://fr.wikipedia.org/wiki/LSE_(langage_de_programmation)
Le but est d'utiliser un "pseudo langage" informatique qui énonce en français une procédure :
Ex. Si A>1 alors exécuter commande 1
Si A=1 alors exécuter commande 2
Si A<1 alors fin
DefFonction>>Commande 1=[A=A+1]
DefFonction>>Commande 2=[A=A+2]


C'est un exemple fictif mais n'importe qui peut à peu près comprendre la procédure même sans apprendre un langage précis. Simplement elle reflête à la fois la logique de la programmation procédurale liée à l'exo et celle de la machine.

Pour ce qui est de tes réponses elles sont fausses. Bon courage, persévère...! lol

Enfin, 01h 02h... sont des adresses mémoire : ce sont des "cases" de la mémoire de ta machine numérotées en hexadécimal (D'où le "h"). Chacune d'elles va contenir une valeur binaire ou hexadécimale variable.

Bonne chance!
1
uesgui Messages postés 172 Date d'inscription vendredi 29 décembre 2000 Statut Membre Dernière intervention 10 octobre 2012 20
14 déc. 2008 à 11:32
J'ai eu la correction
Sujet résolu (tant et si bien que je comprenne bien la solution ! :) )
0