programma che fa una procedura e somma due parametri assembly code example

Example: programma che fa una procedura e somma due parametri assembly

.model small
.stack 100h
.data
  num1 db 50
  num2 db 250
  tot dw ?
.code
inizio:
   mov ax,@data
   mov ds,ax
 
   ; metti qui l'input di num1 e di num2
 
   mov ax,0
   push ax          ; parametro: risultato
   mov al, num2
   push ax          ; parametro: primo num da sommare
   mov al, num1
   push ax          ; parametro: secondo num da sommare
   call addizione   ; chiamata procedura addizione
   pop ax
   pop ax
   pop tot
 
   ; metti qui la stampa del risultato contenuto in tot
 
   mov ah,4Ch
   int 21h
addizione proc     ; definizione della procedura         
   push bp
   mov bp,sp
   par1 equ [bp+4]
   par2 equ [bp+6]
   par3 equ [bp+8]
 
   mov ax,par1
   add ax,par2
   mov par3,ax
 
   pop bp
   ret
addizione endp       ; fine della procedura
 
end inizio           ; fine del programma