Bonjour a tous, je debute en assembleur et pour mes cours je doit realiser un petit programme pour calculler un volume dont voici la formule : pi*h*[(d1/2)+((2/3)*((d2-d1)/2))]^2 avec pi qui vaut 3... voici ma source
.model small
.stack 100h
.data
d1 DW 2
d2 DW 5
h DW 10
two DW 2
three DW 3
pi DW 3
volume DW ?
.code
main proc
MOV AX,@data
MOV DS,AX
; calcul de (2/3)*((d2-d1)/2) dans BX
MOV AX,d2
SUB AX,d1
DIV two
MOV BX,two
DIV three
MUL AX
; calcul de d1/2 dans AX
MOV AX,d1
DIV two
; calcul de [(d1/2)+((2/3)*((d2-d1)/2))]^2 dans AX
ADD AX,BX
MUL AX
; calcul de pi*h*[(d1/2)+((2/3)*((d2-d1)/2))]^2 dans volume
MUL pi
MUL h
MOV volume,AX
MOV AX,4c00h
INT 21h
main endp
end main
mais ca ne fonctionne pas et je n'arrive pas a comprendre pourquoi ..pouvez vous m'eclairer ????