Ошибка: множественно определенный символ, как исправить? - PullRequest
0 голосов
/ 11 июня 2019

Мой код получает ошибки, когда я пытаюсь его скомпилировать. В чем проблема.

Вот ошибка для моего кода MIPS. Сегмент кода ниже:

/ home / fac / wrc / bin / rasm -l prime.asm> prime.lst

89 0048 012A582A
Цикл: slt $ t3, $ t1, $ t2 # if ($ t1 <$ t2) $ t3 = 1 Ошибка: множественно определенный символ </p>

150 00c4 01AE782A
Цикл: slt $ t7, $ t5, $ t6 # if ($ t2 <$ t3) $ t7 = 1 Ошибка: множественно определенный символ </p>

Произошло 2 фатальные ошибки Makefile: 20: рецепт для цели 'prime.obj' не удался make: *** [prime.obj] Ошибка 2

Что я должен сделать, чтобы исправить эту ошибку

Код в сборке MIPS:

find_primes:
        addi    $sp,$sp,-40     # allocate stack frame (on doubleword boundary)
        sw      $ra, 32($sp)    # store the ra & s reg's on the stack
        sw      $s7, 28($sp)
        sw      $s6, 24($sp)
        sw      $s5, 20($sp)
        sw      $s4, 16($sp)
        sw      $s3, 12($sp)
        sw      $s2, 8($sp)
        sw      $s1, 4($sp)
        sw      $s0, 0($sp)

# ######################################
# ##### BEGIN STUDENT CODE BLOCK 1 #####

addi $t1, $zero, MIN # Insert minimum value MIN = 3 in register $t1

addi $t2, $zero, MAX # Insert maximum value MAX = 102 in register $t2

Loop:  slt $t3, $t1, $t2  # if ($t1 < $t2) $t3 = 1
             # else $t3 = 0

beq $t3, $zero, L2 # if ($t3 == $zero) go to L2
jal is_prime

add $t4, $zero, $v0

syscall

bne $t4, $zero, print_number

addi $t1, $t1, 1 # $t1 = $t1 + 1

j Loop # go to the Loop

L2:

# ###### END STUDENT CODE BLOCK 1 ######
# ######################################






is_prime:
        addi    $sp,$sp,-40     # allocate stackframe (doubleword aligned)
        sw      $ra, 32($sp)    # store the ra & s reg's on the stack
        sw      $s7, 28($sp)
        sw      $s6, 24($sp)
        sw      $s5, 20($sp)
        sw      $s4, 16($sp)
        sw      $s3, 12($sp)
        sw      $s2, 8($sp)
        sw      $s1, 4($sp)
        sw      $s0, 0($sp)

# ######################################
# ##### BEGIN STUDENT CODE BLOCK 2 #####

addi $t5, $zero, 2
add $t6, $zero, $a0

Loop:  slt $t7, $t5, $t6  # if ($t2 < $t3) $t7 = 1
                          # else $t7 = 0

beq $t7, $zero, Exit # if ($t7 == $zero) go to Exit

rem $t6, $a0, $t5

beq $t6, $zero, L1 # if ($t7 == $zero) go to L1 


addi $t5, $t5, 1 # $t5 = $t5 + 1

j Loop # go to the Loop

L1:
    addi $v0, $v0, 0  # The value of $v0 is zero

Exit:
    addi $v0, $v0, 1 # The value of $v0 is one

# ###### END STUDENT CODE BLOCK 2 ######
# ######################################


...