Προς το περιεχόμενο

Assembly se (MIPS)


anemelos4

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα ήθελα να ρωτήσω επειδή είμαι λίγο αρχάριος πως γινεται να γεμιζω εναν πινακα 5 θέσεων με 5 ακέραιους αριθμούς που θα δίνει ο χρήστης εγραψα τον παρακατω κώδικα αλλα μου βγάζει το εξης error οταν το τρέχω:

 

Dwse enan akeraio arithmo! 1

Exception 5 [Address error in store] occurred and ignored

 

.data

.align 2

eisodos:.asciiz "Dwse enan akeraio arithmo! "

allagi:.asciiz "\n"

Pinakas: .space 20

 

.text

.globl main

main:

add $18,$0,$0 # metritis gia to gemisma tou pinaka

addi $19,$0,5 #gia to elegxo ton loops

addi $17,$0,0

L1:

addi $v0, $0, 4 # emfanisi minimato dose enan akeraio arithmo

la $a0, eisodos

syscall

 

addi $v0, $0, 5 # eisagogi enos akeraiou arithmou

syscall

add $16, $v0, $0

 

sw $16,Pinakas($17)

addi $17,$17,4

 

addi $v0, $0, 4

la $a0, allagi

syscall

 

addi $18,$18,1

 

bne $18,$19,L1

Δημοσ.

Ο παρακάτω κώδικας γεμίζει εναν πίνακα 5 θέσεων...

.data

array:.space 20

msg:.asciiz"Dwste stoixeio gia ton pinaka\n"

msg1:.asciiz "\n"

.text

main:

li $s7,5

li $s1,0

li $s0,0

l1: li $v0,4

la $a0,msg

syscall

li $v0,5

syscall

move $t0,$v0

sw $t0,array($s0)

addi $s0,$s0,4

addi $s1,$s1,1

blt $s1,$s7,l1

li $v0,10

syscall

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...