Skip to content
Snippets Groups Projects
Commit 1e2f0f9e authored by GUYOMARCH NICOLAS's avatar GUYOMARCH NICOLAS
Browse files

Lecture fichier presque fini

parent 18a3cada
Branches
No related merge requests found
......@@ -15,6 +15,12 @@ jal AfficherUnString #Fonction pour afficher un string
la $a0 buffer
jal NomFichier
#LEcture de l'image
jal ImageEntree
#Sauvegarder le buffer qui contient l'image
move $s0 $v0
exit:
li $v0 10
syscall
......@@ -79,4 +85,118 @@ lw $ra 0($sp)
lw $a0 4($sp)
lw $a1 8($sp)
j $ra
##########################################
ImageEntree:
#Entree:
# $a0: emplacement de l'image
#
#Sortie:
# $v0: Adresse du v=buffer contenant l'image.
#
#Description:
# Prend en argument l'emplacement de l'image et retourne un buffer qui contient l'image
#Prologue
subi $sp $sp 28
sw $s4 24($sp)
sw $s3 20($sp)
sw $s2 16($sp)
sw $s1 12($sp)
sw $a1 8($sp)
sw $a0 4($sp)
sw $ra 0($sp)
#Corps
li $a1 0
jal ActionSurFichier
move $s1 $v0 #Sauvegarde pour utilisation ulterieur
li $a0 16
li $v0 9
syscall
move $s2 $v0
move $a0 $s1
li $a2 16
jal LectureFichier
lw $s3 2($s2)
move $a0 $s3
li $v0 9
syscall
move $s4 $v0
li $v0 16
syscall
move $v0 $s4
#Epilogue
lw $ra 0($sp)
lw $a0 4($sp)
lw $a1 8($sp)
lw $s1 12($sp)
lw $s2 16($sp)
lw $s3 20($sp)
lw $s4 24 ($sp)
addi $sp $sp 28
j $ra
##########################################
ActionSurFichier:
#Entree:
# $a0: registre avec l'emplacement du fichier
# $a1: flag de l'action. 0=lecture $a1=Ecriture
# $a2: Le mode. Ici il sera forcé à 0, car ignoré avec le syscall.
#
#Sortie:
# $v0: Description du fichier
#
#Description:
# Prend en argument l'emplacement du fichier ainsi que le type de l'action à effectuer et retourne une description du fichier.
#Prologue
subi $sp $sp 8
sw $a2 4($sp)
sw $ra 0($sp)
#Corps
li $a2 0
li $v0 13
syscall
#Epilogue
lw $ra 0($sp)
lw $a2 4($sp)
addiu $sp $sp 8
j $ra
##########################################
LectureFichier:
#Entree:
# $a0: adresse de la chaîne à terminaison nulle contenant le nom de fichier
# $a1: adresse du buffer d'entree.
# $a2: Nombre maximal de charactère à lire.
#
#Sortie:
# $v0: Description du fichier
#
#Description:
# Prend en argument l'emplacement du fichier ainsi que l'adresse du buffer d'entree et le nombre max de charactere a lire et retourne une description du fichier.
#Prologue
subi $sp $sp 8
sw $a2 4($sp)
sw $ra 0($sp)
#Corps
li $v0 14
syscall
#Epilogue
lw $ra 0($sp)
lw $a2 4($sp)
addiu $sp $sp 8
j $ra
##########################################
\ 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