Advertisement
Guest User

Untitled

a guest
Mar 19th, 2019
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
ARM 0.89 KB | None | 0 0
  1. for_affichage: @ correpond au corps de la boucle interieur de l'affichage
  2.     ldr r1, adr_barre
  3.     bl EcrChn @ affichage de '|'
  4.  
  5.     @ Application  de la formule pour calculer l'index du caractère à afficher
  6.     sub r7, r5, #1 @ r7 = n_lig - 1
  7.     mov r8, #N_MAX
  8.     mul r9, r8, r7 @ r9 = N_MAX * n_lig-1
  9.     sub r8, r6, #1 @ r8 = n_col - 1
  10.     add r9, r9, r8 @ r9 = r8 + r9 = (N_MAX * n_lig-1) + n_col -1 , notre index est donc dans r9
  11.  
  12.     ldr r3,ptr_debutTab
  13.     @ Convertion de l'index en addresse mémoire, à partir de l'addresse du départ du tableau
  14.     add r3, r3, r9, lsl #2 @ r3 = ptr_tab + 4*r9
  15.  
  16.     @ Récupération de la valeur
  17.     ldr r2, [r3] @ r2 = *r3, la valeur du tab que l'on veut
  18.  
  19.     cmp r2, #100 @ Si elle est inférieur a 100, on affiche un espace
  20.     bge finloop
  21.     ldr r1, adr_espace
  22.     bl EcrChn
  23.  
  24.     cmp r2, #10 @ Si elle est aussi inférieur a 10, on affiche un deuxième espace
  25.     bge finloop
  26.     bl EcrChn
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement