vuoi
o PayPal
tutte le volte che vuoi
1 #==============================================================================
2 # STRSTR: implementazione della funzione strstr, la quale ricerca una stringa
3 # all'interno di un'altra stringa, entrambe fornite dall'utente.
4 #==============================================================================
5
6
7 .data
8 #------------------------------------------------------------------------------
9
10 ask1: .asciiz "Inserisci stringa 1: "
11 ask2: .asciiz "Inserisci stringa 2: "
12
13 msg1: .asciiz "Stringa contenuta\n"
14 msg2: .asciiz "Stringa NON contenuta\n"
15
16 buff1: .space 32 # Riservo 32 byte per la stringa
17 buff2: .space 32 # Riservo 32 byte per la stringa
18
19
20 .text
21 #------------------------------------------------------------------------------
22
23 main_program:
24
25 li $v0, 4
26 la $a0, ask1
27 syscall # Chiedo all'utente la prima stringa (str1)
28
29 li $v0, 8
30 la $a0, buff1
31 li $a1, 32
32 syscall # L'utente inserisce str1
33 move $t1, $a0 # Salvo l'indirizzo di str1 in $t1
34
35 li $v0, 4
36 la $a0, ask2
37 syscall # Chiedo all'utente la seconda stringa (str2)
38
39 li $v0, 8
40 la $a0, buff2
41 li $a1, 32
42 syscall # L'utente inserisce str2
43 move $t2, $a0 # Salvo l'indirizzo di str2 in $t2
44
45 move $a1, $t1 # Mettro indirizzo str1 nel registro argomento $a1
46 move $a2, $t2 # Mettro indirizzo str2 nel registro argomento $a2
47
48 move $a0, $a1
49 jal strlen
50 move $s1, $v0 # Metto in $s1 la lunghezza di str1
51
52 move $a0, $a2
53 jal strlen
54 move $s2, $v0 # Metto in $s2 la lunghezza di str2
55
56 jal strstr # Vado alla funzione strstr
57
58 li $v0, 10