N_ROWS = 6 N_COLS = 12 main: # Locals: # - $t0: int row # - $t1: int col # - $t2: temporary result main__row_loop_init: li $t0, 0 # int row = 0; main__row_loop_cond: bge $t0, N_ROWS, main__row_loop_end # if (row >= N_ROWS) goto main__row_loop_end; main__row_loop_body: main__col_loop_init: li $t1, 0 # int col = 0; main__col_loop_cond: bge $t1, N_COLS, main__col_loop_end # if (col >= N_COLS) goto main__col_loop_end; main__col_loop_body: li $v0, 11 # syscall 11: print_char mul $t2, $t0, N_COLS # (row * N_COLS add $t2, $t2, $t1 # + col) lb $a0, flag($t2) # syscall # printf("%c", flag[row][col]); main__col_loop_step: addi $t1, $t1, 1 # col++; j main__col_loop_cond main__col_loop_end: li $v0, 11 # syscall 11: print_char li $a0, '\n' # syscall # putchar('\n'); main__row_loop_step: addi $t0, $t0, 1 # i++; j main__row_loop_cond main__row_loop_end: li $v0, 0 jr $ra # return 0; .data flag: .byte '#', '#', '#', '#', '#', '.', '.', '#', '#', '#', '#', '#', .byte '#', '#', '#', '#', '#', '.', '.', '#', '#', '#', '#', '#', .byte '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', .byte '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', .byte '#', '#', '#', '#', '#', '.', '.', '#', '#', '#', '#', '#', .byte '#', '#', '#', '#', '#', '.', '.', '#', '#', '#', '#', '#'