@@ -158,7 +158,10 @@ hash_func:
158
158
insert: # operacao: inserir
159
159
jal list_insert
160
160
161
-
161
+ # Funcao: void list_insert(List * list , int item)
162
+ # Argumentos: $ a0 , $ a1
163
+ # Valor de Retorno: void
164
+ # Descricao: Recebe o ponteiro 'list' para uma lista em que sera inserido um elemento 'item'
162
165
list_insert: # funcao: insere valor em uma lista
163
166
# guarda $ a0 , $ a1 e $ ra na stack
164
167
addi $ sp , $ sp , - 12
@@ -219,7 +222,7 @@ ilist_empty_end:
219
222
syscall
220
223
j insert_finish
221
224
222
- insert_same: # se já existe o número , finaliza a funcao
225
+ insert_same: # se j� existe o n�mero , finaliza a funcao
223
226
li $ v0 , 4
224
227
la $ a0 , str_insre
225
228
syscall
@@ -263,7 +266,10 @@ insert_finish: # final da funcao de insercao
263
266
remove: # operacao: remover
264
267
jal list_remove
265
268
266
-
269
+ # Funcao: void list_insert(List * list , int item)
270
+ # Argumentos: $ a0 , $ a1
271
+ # Valor de Retorno: void
272
+ # Descricao: Recebe o ponteiro 'list' para uma lista em que sera removido um elemento 'item'
267
273
list_remove: # funcao: remove um valor da lista , se existente
268
274
# guarda $ a0 , $ a1 e $ ra na stack
269
275
addi $ sp , $ sp , - 12
@@ -272,8 +278,8 @@ list_remove: # funcao: remove um valor da lista, se existente
272
278
sw $ ra , 0 ( $ sp)
273
279
274
280
# checar se a lista esta vazia
275
- lw $ t1 , 0 ( $ a0) # $ t1 recebe o número de elementos na lista( $ a0)
276
- beq $ t1 , $ zero , exit_rem_notfound # se o número de elementos na lista == 0 , apenas sai da funcao
281
+ lw $ t1 , 0 ( $ a0) # $ t1 recebe o n�mero de elementos na lista( $ a0)
282
+ beq $ t1 , $ zero , exit_rem_notfound # se o n�mero de elementos na lista == 0 , apenas sai da funcao
277
283
278
284
279
285
lw $ t3 , 8 ( $ sp) # $ t3 = item buscado
@@ -283,19 +289,19 @@ lr_loop:
283
289
beq $ t1 , $ zero , exit_rem_notfound # if( $ t1 == NULL( 0 )) , elemento nao encontrado , sai da funcao
284
290
285
291
lw $ t2 , 0 ( $ t1) # $ t2 = $ t1 - >item
286
- beq $ t2 , $ t3 , rem_node # if (item atual é o buscado) rem_node
292
+ beq $ t2 , $ t3 , rem_node # if (item atual � o buscado) rem_node
287
293
lw $ t1 , 8 ( $ t1) # $ t1 = $ t1 - >prox
288
294
289
295
j lr_loop
290
296
291
297
rem_node:
292
- # decrementa o número de elementos na lista
298
+ # decrementa o n�mero de elementos na lista
293
299
lw $ t5 , 4 ( $ sp) # $ t5 = ponteiro da lista
294
300
lw $ t6 , 0 ( $ t5) # $ t6 = list - >n
295
301
addi $ t6 , $ t6 , - 1 # $ t6 --
296
302
sw $ t6 , 0 ( $ t5) # list - >n = $ t6
297
303
298
- # $ t1 é o nó a ser removido
304
+ # $ t1 � o n� a ser removido
299
305
lw $ t2 , 4 ( $ t1) # $ t2 = no - >prev
300
306
lw $ t3 , 8 ( $ t1) # $ t3 = no - >next
301
307
lw $ t4 , 4 ( $ sp) # $ t4 = endereco da lista
@@ -438,7 +444,7 @@ print_list:
438
444
loop_all_nodes: # while( 1 ) {
439
445
beq $ t0 , $ zero , print_enter # if( $ t0 == null) goto print_enter
440
446
441
- # print do número relativo ao nó
447
+ # print do n�mero relativo ao n�
442
448
li $ v0 , 1
443
449
lw $ a0 , 0 ( $ t0)
444
450
syscall # printf( "%d" , $ t0.item) ;
0 commit comments