You are on page 1of 2

Université Kasdi Merbah Ouargla

Faculté des Nouvelle Technologies d’informatique et de Communication


Département d’électronique et Télécommunication
Option : L3 Electronique Module : Système à Microprocesseur

TD N°4 : Programmation En Assembleur Du µp INTEL 8085

Exercice 1 :
Ecrivez un programme en assembleur d’Intel 8085 qui double le contenu de registre C jusqu’ à
ce qu’il y ait dépassement de capacité. Cet algorithme doit pouvoir donner le nombre de fois que
la boucle a été faite.
Indication : C=52h => C=C+C+C+C.=1 48 h, on a un carry. Registre C est doublé 4 fois.

Exercice 2:
Ecrivez un programme en assembleur d’Intel 8085 qui calcule la somme des valeurs des cases
mémoires 0010h et 0011h et mettre le résultat dans la case 0012h.

Exercice 3 :
Ecrivez un programme en assembleur d’Intel 8085 qui permet de compter le nombre de 0 à
gauche de l’accumulateur « A ». Le résultat est stocké dans le registre B. Si ce résultat est pair le
programme saute en 0100h. Si le résultat est impair, le programme saute en 0150h.
Indication : A=13h =0001 00112. Nous avons 3 zéros` à gauche de A. Ce résultat est impair.

Exercice 4:
Ecrivez un programme assembleur d’Intel 8085 ; pour déterminer le nombre le plus grand dans
un tableau de n éléments. La valeur de n est stockée à l’adresse 2050h et le tableau commence à
l’adresse 2051h. Le résultat est stocké à l’adresse 3050h. L’adresse de d’part du code est 2000h.

Exercice 5:
Ecrivez un programme assembleur d’Intel 8085 ; pour soustraire le nombre de 16 bits stocké
dans les emplacements mémoire 4002h et 4003h du nombre de 16 bits stocké dans les
emplacements mémoire 4000h et 4001h. Les 8 bits les plus puissants des deux nombres sont
dans les emplacements 4001h et 4003h. Stockez le résultat obtenu en mémoire adresses 4004h et
4005 avec l’octet le plus puissant dans l’emplacement de mémoire 4005h.

Exercice 6:
Ecrivez un programme assembleur d’Intel 8085 ; pour multiplier deux nombres de 8 bits stockés
à les adresses 2050h et 2051h. Le résultat est stocké à les adresses 3050h et 3051h.
Indication : 3 x 6 = 6 + 6 + 6 (Multiplication = Répétition d’addition N fois).

Mr A LATI Page 1/1 UKMO


Université Kasdi Merbah Ouargla
Faculté des Nouvelle Technologies d’informatique et de Communication
Département d’électronique et Télécommunication
Option : L3 Electronique Module : Système à Microprocesseur

TD N°4 : Programmation en Assembleur du µp INTEL 8085


Exercice 1 : Exercice 2 :
Adresse Instructions Commentaries Adresse Instructions Commentaries
2000h MVI B, 00h B← 00h 2000h LXI H,0010h 10→ L et 00 → H
2002h MVI C,13h C← 13h 2004h MOV A,M A← [M]
2004h MOV A,C A← C 2005h INX H L H← 0011h
2005h INR B B← B + 1 2006h MOV B,M B← [M]
2006h ADD A A← A + A 2007h ADD B A← A + B
2007h JNC 2005h IF C=0 go to 2005h 2008h INX H L H← 0012h
2008h HLT FIN 2009h MOV M,A [M]← A
200Ah HLT FIN

Exercice 3 : Exercice 4 :
Adresse Instructions Commentaries Adresse Instructions Commentaries
0000h MVI A, 13h A← 13h 2000 LXI H 2050h H←20, L←50
0002h MVI B,00h B← 00h 2003 MOV C, M C←M
0004h RLC Rotate Left without carry
2004 DCR C C←C-01
0005h JC 000Ch IF C=1 go to 000Ch
0008h INR B B← B + 1 2005 INX H HL←HL+0001
0009h JMP 0004h go to 0004h 2006 MOV A, M A←M
000Ch MOV A,B A← B 2007 INX H HL←HL+0001
000Dh ANI 01h A= A and 0000 0001b 2008 CMP M A-M
000Fh JZ 0100h IF Z= 1 go to 0100h 2009 JNC 200Dh If C=0, go to 200D
0012h JMP 0150h Go to 0150h 200C MOV A, M A←M
0013h HLT FIN 200D DCR C C←C-1
200E JNZ 2007h If Z =0, go to 2007
2011 STA 3050h A→3050
2014 HLT FIN

Exercice 5 : Exercice 6 :
Adresse Instructions Commentaries Adresse Instructions Commentaries
0000h LHLD 4000H H L←[4000 4001] 2000h LHLD 2050H H L← [2050 2051]
0003h XCHG H<-> D et L<-> E 2003 XCHG H<-> D et L<-> E
0004h LHLD 4002H H L←[4002 4003] 2004h MOV C ,D D→ C
0006h MOV A, E A← E 2005h MVI D, 00h 00→ D
0007h SUB L A← A - L 2007h LXI H, 0000h 00→ L et 00 → H
0008h MOV L, A L← A 200Ah DAD D HL→ HL + DE
0009h MOV A, D A← D 200Bh DCR C C→ C -1
000Ah SBB H A← A – H (with Carry)
200Ch JNZ 200Ah IF Z=1 go to 200A
000Bh MOV H, A H← A
200Fh SHLD 3050h H L→ [3050 3051]
000Ch SHLD 4004H H L→[4004 4005]
2012h HLT FIN
000Fh HLT FIN

Mr A LATI Page 1/1 UKMO

You might also like