Advertisement
Guest User

Untitled

a guest
Jun 9th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .DATA
  2.                 chaine DW "Somos los mejores."          ; Chaine à afficher
  3.    
  4. .CODE
  5.                 LEA SP, STACK                           ; Initialisation de la pile
  6.                 LD R0,%0000                             ; Commande pour effacer l'écran
  7.                 OUT R0, 5                               ; Commande envoyée au port 5
  8.                 LEA R0, chaine                          ; R0 <- @chaine
  9.                 LD R1, 10                               ; Coordonnées x du début de la chaine
  10.                 LD R2, 10                               ; Coordonnées y du début de la chaine            
  11.                 CALL afficher                           ; Appel de la procédure Afficher
  12.                 IN R3, 1                                ; On récupère la coordonnée du dernier x dans R3                        
  13.                 IN R4, 2                                ; On récupère la coordonnée du dernier y dans R4
  14.                 ADD R2, 5                               ; On ajoute 5 pixels pour le premier y
  15.                 ADD R4, 5                               ; on ajoute 5 pixels pour le deuxième y
  16.                 OUT R1, 1                               ; Placement du premier x
  17.                 OUT R2, 2                               ; Placement du premier y
  18.                 OUT R3, 3                               ; Placement du deuxième x
  19.                 OUT R4, 4                               ; Placement du deuxième y
  20.                 LD R5,%11110010                         ; Commande graphique dans R5
  21.                 OUT R5, 5                               ; Envoie de la commande tracer un trait blanc
  22.                 HLT                                     ; Arrêt du processeur
  23.  
  24.     afficher:   OUT R1, 1                               ; Envoie du x sur le port 1
  25.                 OUT R2, 2                               ; Envoie du y sur le port 2
  26.  
  27.     boucle:     CMP [R0], '.'                           ; Comparaison entre @RO et le point
  28.                 BEQ fin                                 ; Si @R0 = . alors on termine le programme
  29.                 OUT [R0], 3                             ; On envoie le caractère
  30.                 LD R4,%11110111                         ; R4 = commande graphique pour afficher le caractère
  31.                 OUT R4,5                                ; On envoie la commande pour afficher le caractère
  32.                 INC R0                                  ; R0++
  33.                 JMP boucle                              ; On refait un tour de boucle
  34.                
  35.     fin:        RET                                     ; Fin de la procédure
  36.  
  37. .STACK 50                                               ; Allocation de la pile
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement