### A good answer might be:

See Below

# Flowchart

The flow chart could work for any language. Language details are left out of the design. The chart is a structured flowchart. Here is an outline of the program:

    ## addIntArray.asm
    ##
    ## Sum all integers, the positive integers,
    ## and the negative integers in an array.

    ## Registers:
    ## $8 --- count
    ## $9 --- pointer to the array entry
    ## $10 -- current array entry
    ## $11 -- sum of all integers
    ## $12 -- sum of negative integers
    ## $13 -- sum of positive integers
    ## $14 -- pos. or neg. flag
    ## $15 -- SIZE of the array

             .text
             .globl  main
    # Initialize
    main:    ori      $____,$0,0       #  count = 0
             ori      $____,$0,0       #  sum = 0
             ori      $____,$0,0       #  neg = 0
             ori      $____,$0,0       #  pos = 0

    # while  count < SIZE do
    loop:
             . . . .

             j        loop
             sll      $0,$0,0        #  branch delay

            .data
    size:   .word  17
    array:  .word  12, -1, 8, 0, 6, 85, -74, 23, 99, -30, 30, 95, 4, 7, 10, 28, 14

    ## End of file

SPIM initializes registers to zero, but it is good practice to explicitly zero accumulators.

### QUESTION 9:

Fill in the blanks.