Signed-off-by: Jérôme Benoit <jerome.benoit@piment-noir.org>
input_string: .asciiz "Saisir un mot ? "
msg_palindrome_part_1: .asciiz "Le mot "
msg_palindrome_part_2: .asciiz " un palindrome"
input_string: .asciiz "Saisir un mot ? "
msg_palindrome_part_1: .asciiz "Le mot "
msg_palindrome_part_2: .asciiz " un palindrome"
-msg_is_palindrome: .asciiz "est"
-msg_is_not_palindrome: .asciiz "n'est pas"
+msg_is: .asciiz " est"
+msg_is_not: .asciiz " n'est pas"
newline: .asciiz "\n"
.text
newline: .asciiz "\n"
.text
syscall
li $v0, 8
la $a0, input
syscall
li $v0, 8
la $a0, input
syscall
jr $ra
clean_and_length_word:
syscall
jr $ra
clean_and_length_word:
+ la $s4, ($zero) # word length
la $s0, input # $s0 contains base address of the string buffer
addi $s3, $0, '\n' # $s3 = '\n'
loop1:
la $s0, input # $s0 contains base address of the string buffer
addi $s3, $0, '\n' # $s3 = '\n'
loop1:
addi $s4, $s4, 1
j loop1
end1:
addi $s4, $s4, 1
j loop1
end1:
+ sb $0, 0($s0) # replace newline with 0
la $a0, input
li $v0, 4
syscall
la $a0, input
li $v0, 4
syscall
- la $a0, msg_is_palindrome
li $v0, 4
syscall
la $a0, msg_palindrome_part_2
li $v0, 4
syscall
la $a0, msg_palindrome_part_2
la $a0, input
li $v0, 4
syscall
la $a0, input
li $v0, 4
syscall
- la $a0, msg_is_not_palindrome
li $v0, 4
syscall
la $a0, msg_palindrome_part_2
li $v0, 4
syscall
la $a0, msg_palindrome_part_2
la $a0, newline
li $v0, 4
syscall
la $a0, newline
li $v0, 4
syscall
- jr $ra
\ No newline at end of file