Rechercher : dans
Par :

Assembleur 8086

maya, le 4 fév 2006 à 20:28:56
 Signaler ce message aux modérateurs

Bonsoir,pouvez vous m'aider sur 1 sujert?etablir 1 programme en assembleyr 8086 permettant d'effectuer l'adition de 2 nombres double-word 32 bits chacun N1 et N2 codés en BCD le resulta de l'addition doit etre en BCD.merci de me repondre

Meilleures réponses pour « assembleur 8086 » dans :
Exercice assembleur x86 occurence d'un caractère VoirIntroduction Notions abordées dans cet exercice Enoncé Corrigé Explication Introduction Ce petit exercice d'assembleur vise les architectures x86 (Processeurs Intel et Amd 32 bits) et utilise la syntaxe de Nasm, un assembleur libre,...
Assembleur - Multiplication par une constante VoirEn assembleur vous pouvez effectuer une multiplication en utilisant les instructions mul (nombres non signés) et imul. On l'utilise ainsi: mul nom_registre Ensuite en interne, le processeur multiplie le contenu de eax ou ax ou al (selon la taille...
[Photofiltre]Réaliser un assemblage de 2 images VoirPhotofiltre est un logiciel de retouche d'image. Cette astuce fonctionne aussi bien avec Photofiltre qu'avec Photofiltre Studio Dans ce cas précis, Photofiltre va permettre d'assembler un collage c'est-à-dire de coller une deuxième image (en...
Introduction à l'assembleur VoirLes prérequis nécessaires Le langage assembleur est très proche du langage machine (c'est-à-dire le langage qu'utilise l'ordinateur : des informations en binaire, soit des 0 et des 1). Il dépend donc fortement du type de processeur. Ainsi il...
Assembler un PC VoirDe l'assemblage d'un ordinateur Un ordinateur de type PC est modulaire, c'est-à-dire qu'il peut être monté en assemblant des éléments matériels de différents constructeurs, afin d'obtenir un ordinateur conforme à ses besoins. Les éléments...
Liste des instructions en assembleur VoirTableau des principales instructions en assembleur Voici une liste (non exhaustive) des principales instructions en assembleur des processeurs 80x86, ainsi que du code machine qui leur est associé et de leur taille en mémoire. Les valeurs val et...

1

Yonnel.BALEZ, le 6 fév 2006 à 12:04:20
  • +2

L'algorithme est senssiblement le même que lorsque tu fais une addition à la main.
Sauf qu'il faut utiliser les instruction BCD sur 20 chiffres.
Commence par programmer une addition de deux chiffres, ajouté à deux autres chiffres en BCD
exemple 12+34
tu commence par programmer 2+4 = 6
ici tu n'a pas de retenue
ensuite tu fait 1+3=4

en généralisant l'opération tu pourra voir comment placer tes boucles pour rendre le programme général.

Je ne me suis jamais servi de ces instructions, car je pense que c'est complètement dépassé. On peut faire nettement mieux en travaillant sur des chaines d'octets en base 256 sur le même algorithme. C'est ce j'ai fait. J'additionne, soustrait et multiplie des chaînes d'octets de longueur quelconque (<32000 octets).

Si tu y arrive en BCD , merci de me communiquer ton programme car cela m'interesse à titre d'information et d'exemple...

2

IMEN, le 27 nov 2007 à 23:13:16

Je veux justement savoir c'est quoi exactement l'utilité de la procedure dans un programme en assembleur8086,ca sert a quoi exactement.merci

3

le père, le 28 nov 2007 à 08:10:50

Bonjour

pour l'utilité, à part pédagogique (argument passe-partout), bof...

Je suppose que ton prof veut te faire utiliser l'instruction DAA qui permet, après une addition de 2 octets (2 chiffres + 2 chiffres d'un seul coup) de retrouver un résultat en BCD. Je n'ai pas de manuel assembleur 8086 sous la main pour^être plus précis, mais si tu l'étudies tu dois bien avoir le jeu d'instructions avec les explications détaillées.

4

bourbet mouloud, le 28 nov 2007 à 09:04:18

Bonjour
concerant l'addition de deux nombres en 32bits n'est pas sorcier.ce qu'il faut connaitre c'est juste les registres utilises:il faut qu'ils soient de taille 32 bits seulement commme:AX, BX, ......ETC.merci et bon courage.

5

le père, le 28 nov 2007 à 09:14:26

Bonjour,

AX, BX etc font 16 bits et pas 32
ADD fera une addition en binaire, pas en BCD

mais l'instruction à utiliser après l'addition n'est pas DAA (ça c'est du Z80) mais AAD (voir http://fr.wikipedia.org/...

11

girl, le 24 mar 2008 à 22:04:59

Bjr mouloud,
tu sais ,en 8086 y'a pas de registre en 32 bits.tt se qu'il faut faire C'est d'utiliser l'ADD et l'ADC voici le prg:
Z:=X+Y avec X:DD;Y:DD et le Z:DD bien sur
MOV AX,X
MOV BX,X+2
ADD AX,Y
ADC BX,Y+2
MOV Z,AX
MOV Z+2,BX

6

iba, le 4 déc 2007 à 21:42:30
  • +2

Slt je cherche des exos corrigés en micro p 8086 pouvez vous m'aider merci

7

Bibipol, le 15 déc 2007 à 16:20:19

Salut,

Moi également je cherches ces exos corrigés si poss avec le 8051 si jamais un connaisseur peut nous aider n'hésitez pas.
merci

Bibipol

8

aamma, le 12 jan 2008 à 18:03:36

Salut tou le monde
j'ai vraiment besoin à des exercices corrigés en programmation assembleur pour les processeurs INTEL
SVP aidez moi

9

angel, le 24 jan 2008 à 14:52:50
  • +1

J'ai un problème de manipulation de tableau avec l'assemble 8086 est aussi pour les boucles j'ai besoin d'exercice corrigés ,merci

10

sousane, le 26 jan 2008 à 16:06:42
  • +1

Je vx s il vous plais le corrige de se programme: un programme ki renvoie le nombre d onccurences d 1 caractere ds 1 chaine de caracteres; et le caractere et la chaine doivent etre lus. et merci bcq

12

santibaniez, le 5 mai 2008 à 21:08:08
  • +1

Bonsoir,g 1gros pb,je cherche la correction du pb suivant:ecrire 1programme en assembleur qui permet de tracer deux axe de longueur l, paralelle,et de largeur w.la longueur l et la largeur w sont d parametre a saisir.j'attend 1reponse rapidement mercie.

13

 kilian, le 5 mai 2008 à 21:32:13
  • +1

Pour un nouveau problème => ouvrez un nouveau sujet!

Merci de votre compréhension.