Architecture des ordinateurs
Résolu/Fermé
Bonjour, je n'arrive pas à bien traiter cet exercice.aidez moi
Ecrire un programme en assembleur 80x86 qui calcule la somme mots de 16 bits chacun (mots) sachant qu’ils sont précédés du nombre FFFF h. le résultat sera stocké à partir de l’adresse 2000 h.
a) Donner l’organigramme
b) Donner le programme
Consignes :
- l’étendu des adresses de 0100 h et 01FA h
- le résultat peut tenir sur 16 ou 32 bits.
Ecrire un programme en assembleur 80x86 qui calcule la somme mots de 16 bits chacun (mots) sachant qu’ils sont précédés du nombre FFFF h. le résultat sera stocké à partir de l’adresse 2000 h.
a) Donner l’organigramme
b) Donner le programme
Consignes :
- l’étendu des adresses de 0100 h et 01FA h
- le résultat peut tenir sur 16 ou 32 bits.
A voir également:
- Architecture des ordinateurs
- Logiciel architecture gratuit - Télécharger - Architecture & Déco
- Architecture 3d gratuit - Télécharger - Architecture & Déco
- Logiciel de plan de maison : les meilleurs outils gratuits - Guide
- Ecrans ordinateurs - Guide
- Logiciel architecture gratuit sketchup - Télécharger - 3D
2 réponses
Pierre1310
Messages postés
8564
Date d'inscription
lundi 21 décembre 2015
Statut
Membre
Dernière intervention
21 juillet 2020
650
6 juil. 2016 à 19:21
6 juil. 2016 à 19:21
Salut,
On est pas la pour bosser à ta place mais t'aider.
On est pas la pour bosser à ta place mais t'aider.
ElementW
Messages postés
4814
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
5 octobre 2021
1 227
6 juil. 2016 à 21:00
6 juil. 2016 à 21:00
'lut
De ce que je comprends, l'exercice demande, pour le contenu de mémoire suivant:
Pour chaque paire d'entiers de 16 bits partant de 0x0100 jusqu'à 0x01FA, si le premier de la paire est 0xFFFF, alors ajouter le 2e à un compteur, dont on stockera le résultat dans 0x2000 (en 16 ou 32 bits).
(Je pense qu'on peut supposer que la liste d'entiers est "contiguë"; que l'on peut arrêter d'additionner dès que le 1er de la paire ne vaut pas 0xFFFF, mais pas sûr)
Si tu as copié l'énoncé tel quel, alors je comprend que tu aies du mal, c'est mal expliqué. J'ai mis une bonne dizaine de minutes à vraiment comprendre.
De ce que je comprends, l'exercice demande, pour le contenu de mémoire suivant:
0x0100 | 0xFFFFF |
0x0102 | 0x0001 |
0x0104 | 0xFFFFF |
0x0106 | 0x0002 |
0x0108 | 0xFFFFF |
0x010A | 0x0003 |
... | |
0x01F8 | 0xFFFFF |
0x01FA | 0x0000 |
... | |
0x2000 | résultat |
Pour chaque paire d'entiers de 16 bits partant de 0x0100 jusqu'à 0x01FA, si le premier de la paire est 0xFFFF, alors ajouter le 2e à un compteur, dont on stockera le résultat dans 0x2000 (en 16 ou 32 bits).
(Je pense qu'on peut supposer que la liste d'entiers est "contiguë"; que l'on peut arrêter d'additionner dès que le 1er de la paire ne vaut pas 0xFFFF, mais pas sûr)
Si tu as copié l'énoncé tel quel, alors je comprend que tu aies du mal, c'est mal expliqué. J'ai mis une bonne dizaine de minutes à vraiment comprendre.
6 juil. 2016 à 19:36
6 juil. 2016 à 19:52
6 juil. 2016 à 20:34