Bonjour à tous,

Voilà je vous explique mon petit-énorme problème. Je commence à peine a programmer en Assembleur et j'aurais bien voulu faire un programme qui convertit le décimal (0 à 255) en binaire pour m'entraîner... mais voilà, c'est un échec total et cuisant !
Si quelqu'un pourrait y jeter un oeil et corriger mes erreurs pour que ce programme fonctionne.

MERCI beaucoup !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
DOSSEG 
.model small 
.stack 100h 
.DATA 
texte1 db 13,10, "Entrer un chiffre entre 0 et 255$" 
texte2 db 13,10, "Votre chiffre en binaire est:*$" 
var1 db ? 
var2 db ? 
var3 db ? 
var4 db ? 
var5 db ? 
var6 db ? 
var7 db ? 
var8 db ? 
var9 db ? 
var10 db 8 dup(1) 
 
.CODE 
mov ax,@data 
mov ds,ax 
mov dx,offset texte1 
mov ah,09h 
int 21h 
 
mov ah,01h 
int 21h 
mov var1,al 
jp paire1 
mov al,var1 
div ax,2 
mov var2,al 
jp paire2 
mov al,var2 
div ax,2 
mov var3,al 
jp paire3 
mov al,var3 
div ax,2 
mov var4,al 
jp paire4 
mov al,var4 
div ax,2 
mov var5,al 
jp paire5 
mov al,var5 
div ax,2 
mov var6,al 
jp paire6 
mov al,var6 
div ax,2 
mov var7,al 
jp paire7 
mov al,var7 
div ax,2 
mov var8,al 
jp paire8 
mov al,var8 
div ax,2 
mov var9,al 
 
 
paire1: mov var10+7,0 
ret 
paire2: mov var10+6,0 
ret 
paire3: mov var10+5,0 
ret 
paire4: mov var10+4,0 
ret 
paire5: mov var10+3,0 
ret 
paire6: mov var10+2,0 
ret 
paire7: mov var10+1,0 
ret 
paire8: mov var10,0 
ret 
 
mov dx,offset texte2 + var10 
mov ah,09h 
int 21h 
 
mov ah,4Ch 
int21h 
 
END
PS: Pas rire!!!!