Skip to content
Snippets Groups Projects
Commit d51fc6cd authored by JREDA AHMAD's avatar JREDA AHMAD
Browse files

ajout du passage par ligne de commande du nom du fichier de sauvegarde

parent 2e45cabe
Branches
Tags
No related merge requests found
17 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15
\ No newline at end of file
25 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15
\ No newline at end of file
......
03 15 15 15 15 15 15 15 15 15
\ No newline at end of file
......@@ -2,12 +2,12 @@
demandeNom : .asciiz "veuillez entrer la taille du tableau \n"
space: .asciiz " "
newLine: .asciiz "\n"
fileName : .asciiz"laby.txt"
fileName : .asciiz "laby.txt"
N : .word 2554
buffer : .space 32
.text
# a0 = le nombre entré par l'utilisateur ; a1 = a0*a0 ; a2= pointeur vers le tableaux en memoire qui contient les inforation ; s7 nom du fichier ou le contenu sera enregistré |||| faire attention a ne pas modifier ces valeur ou de les resorer a la fin de la fonction
jal initialiseLesValeurEnModeLigneDeCommande #il faut faire une fonction char to int
......@@ -31,23 +31,28 @@ b finDuProgramme
initialiseLesValeurEnModeLigneDeCommande :
lw $s7 8($a1) #ne pas touche s7
la $a0 ($s7)
li $v0 4
syscall
la $a0 space
syscall
lw $a0 4($a1) # chargement dans a0 de la taille du tableau sous la forme d'une chaine de caratere
addi $sp $sp -4
sw $ra 0($sp)
jal chartoint # appele de la fonction qui prend en argument un caractere dans $a0 et qui renvoi un entier dans $v0
jal chartoint # appele de la fonction qui prend en argument un caractere dans $a0 et qui renvoi un entier dans $v0 conversion de a0 de chaine de caratere a entier
lw $ra 0($sp)
addi $sp $sp 4
la $t3 ($v0)
la $a0 ($v0) # chargement de l'entier dans $a0
li $v0 1
syscall # affichage de l'entier
la $a0 ($v0) # chargement de l'entier dans $a0
mul $a1 $a0 $a0 #initialisation du nombre de cellules utilse pour le programme
mul $a1 $a0 $a0
jr $ra
chartoint: # prend en argument une chaine de caractere représenter un entier dans $a0
......@@ -105,6 +110,8 @@ demandeLaTaille :
syscall
la $a0 ($v0)
mul $a1 $a0 $a0 #enregistrement de la valeur et du nombre de case memoire nécessaire
la $s7, fileName
jr $ra
retourchariot:
li $a0 -35 #chargement du code ASCII de l'espace par rapport a celui du 0 48-35 = code ascii de l'espace
......@@ -157,7 +164,7 @@ enregistrerLaGrille:
la $t2 ($a0)
li $v0,13
la $a0,fileName #ouverture du fichier filName
la $a0, ($s7) #ouverture du fichier dont le nom est dans s7
li $a1,1
syscall
move $s6,$v0
......
.data
msgerror: .asciiz "The string does not contain valid digits."
input: .space 9
.text
.globl main
main:
li $v0, 8
la $a0, input #read a string into a0
move $t0, $a0
syscall
li $t3,0
li $t4,9
la $t0, input #address of string
lbu $t1, ($t0) #Get first digit of string
li $a1, 10 #Ascii of line feed
li $a0, 0 #accumulator
addi $t1,$t1,-48 #Convert from ASCII to digit
move $a2, $t1 #$a2=$t1 goto checkdigit
add $a0, $a0, $t1 #Accumulates
addi $t0, $t0, 1 #Advance string pointer
lbu $t1, ($t0) #Get next digit
beq $t1, $a1, print #if $t1=10(linefeed) then print
addi $t1,$t1,-48 #Convert from ASCII to digit
move $a2, $t1 #$a2=$t1 goto checkdigit
mul $t2, $a0, 10 #Multiply by 10
add $a0, $t2, $t1 #Accumulates
addi $t0, $t0, 1 #Advance string pointer
lbu $t1, ($t0) #Get next digit
print:
li $v0, 1 #print integer $a0
syscall
b end
checkdigit:
blt $a2, $t3, error
bgt $a2, $t4, error
jr $ra
error:
la $a0, msgerror
li $v0, 4 #print eror
syscall
end:
li $v0, 10 #end program
syscall
\ No newline at end of file
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment