Section courante

A propos

Section administrative du site

Voici un exemple d'un programme permettant d'afficher un triangle Pascal :

  1. .MODEL small
  2.    .STACK 100h
  3.    .DATA
  4. Space     DB ' ','$'
  5. CRLF      DB 13,10,'$'
  6. BeginLine DB '< ','$'
  7.    .CODE
  8. PrintDigit PROC NEAR
  9.     OR  AX,AX
  10.     JNS Positif    
  11.     PUSH AX
  12.      MOV AH,02h
  13.      MOV DL,'-'
  14.      INT 21h
  15.     POP AX
  16.     NEG AX
  17. Positif:
  18.     MOV BX,10           
  19.     XOR CX,CX
  20. NextDigit:
  21.     XOR DX,DX
  22.     DIV BX
  23.     PUSH DX
  24.      INC CX              
  25.      OR  AX,AX
  26.      JNZ NextDigit
  27. PrintOneDigit: 
  28.     POP AX       
  29.     ADD AL,48           
  30.     MOV DL,AL           
  31.     MOV AH,02h
  32.     INT 21h             
  33.     LOOP PrintOneDigit
  34.     RET
  35. ENDP
  36.  
  37.     .startup   
  38.     XOR  DX,DX
  39. @Loop1:    
  40.     XOR  CX,CX
  41. @Loop2:
  42.     PUSH CX
  43.      PUSH CX
  44.       PUSH DX
  45.        MOV  AX,@data
  46.        MOV  DS,AX                  
  47.        MOV  AH,9                   
  48.        MOV  DX,OFFSET Space
  49.        INT  21h            
  50.       POP DX
  51.      POP CX
  52.      PUSH DX
  53.       XCHG AX,DX
  54.       MUL CL
  55.       CALL PrintDigit
  56.      POP DX
  57.     POP CX
  58.     INC CX
  59.     CMP CX,DX
  60.     JNG @Loop2    
  61.     PUSH DX
  62.      MOV  AX,@data
  63.      MOV  DS,AX                  
  64.      MOV  AH,9                   
  65.      MOV  DX,OFFSET CRLF
  66.      INT  21h
  67.     POP DX
  68.     INC  DX          
  69.     CMP  DX,10
  70.     JNGE @Loop1
  71.  
  72.     MOV  AX,4C00h                 
  73.     INT  21h                    
  74.     END

on obtiendra le résultat suivant :

0
0 1
0 2 4
0 3 6 9
0 4 8 12 16
0 5 10 15 20 25
0 6 12 18 24 30 36
0 7 14 21 28 35 42 49
0 8 16 24 32 40 48 56 64
0 9 18 27 36 45 54 63 72 81

Si par exemple vous utilisez le Turbo Assembleur version 5.0, vous n'aurez que les trois commandes suivantes a effectuer pour voir le résultat en supposant que le programme s'appel «triapasc.asm» :

TASM triapasc.asm
TLINK triapasc.obj
triapasc.exe

Voir également

Science - Mathématique

Dernière mise à jour : Vendredi, le 4 mars 2016