#  ---------------------------------------------------------------------------------- 
#				tutorias.co  |  @tutorias
#  ----------------------------------------------------------------------------------

.data
guion:	.asciiz "-"			# guion tomara un guion separador
line:	.asciiz "\n"			# line tomara una linea en blanco

.text 
.globl main		

main:

li $s1 1				# carga del entero uno
li $s0 -1				# variable i controladora del ciclo
li $s2 -1				# variable j controladora del ciclo
li $s3 2				# fin del primer ciclo for

j for1

for1:	
	add $s0 $s0 $s1			# incremento controlador del ciclo
	beq $s0 $s3 fin
	
	li $s2 -1	
	j for2
	
	for2:
		add $s2 $s2 $s1		# incremento controlador del ciclo 2
		beq $s2 $s3 for1
		
		move $a0 $s0
		li $v0 1		# carga $v0 a 1: muestra un entero			
		syscall
	
		la $a0 guion		# carga separador
		li $v0 4		# carga $v0 a 4: permite mostrar una cadena
		syscall
		
		move $a0 $s2
		li $v0 1		# carga $v0 a 1: muestra un entero			
		syscall
		
		la $a0 guion		# carga separador
		li $v0 4
		syscall
		la $a0 guion		# carga separador
		li $v0 4		# carga $v0 a 4: permite mostrar una cadena
		syscall
		
		and $t0 $s0 $s2
		move $a0 $t0
		li $v0 1		# carga $v0 a 1: muestra un entero			
		syscall
		
		
		la $a0 guion		# carga separador
		li $v0 4
		syscall
		la $a0 guion		# carga separador
		li $v0 4		# carga $v0 a 4: permite mostrar una cadena
		syscall
		
		or $t0 $s0 $s2
		move $a0 $t0
		li $v0 1		# carga $v0 a 1: muestra un entero			
		syscall
		
		la $a0 line		# carga separador
		li $v0 4		# carga $v0 a 4: permite mostrar una cadena
		syscall
			
		j for2
	
fin:

li $v0 10							
syscall					# salir
