Επισκέπτης Δημοσ. 15 Μαΐου 2015 Δημοσ. 15 Μαΐου 2015 Θα μπορούσε κάποιος να με βοηθήσει να λύσω αυτές τις ασκήσεις ? μαθαίνω μόνος και είμαι αρχάριος .. Α. Γράψτε κώδικα σε assembly mips που να κάνει τις παρακάτω πράξεις. (2/10) i. w = x+y+z ii. w = x-y+7 Β. Μετατρέψτε σε assembly του ΜIPS μηχανής (binary) τον παρακάτω κώδικα. (2/10) lw $9 12($8) add $8,$18, $8 sw $8,12($9) Γ. Μετατρέψτε σε assembly του ΜIPS μηχανής (binary) τον παρακάτω κώδικα. To ‘mat’ είναι στην θέση μνήμης 100 (3/10) lw $9, mat($8) slti $11, $9, 100 beq $11, $0, end sub $9, $9, $12 addi $8, $8, 4 end: Δ. Πόσες εντολές εκτελεί ο επεξεργαστής όταν τρέχει τον παρακάτω κώδικα; Αν όλες οι εντολές κοστίζουν 4 κύκλους ρολογιού, εκτός της LW που κοστίζει 5, πόσο χρόνο κάνει ο επεξεργαστής, αν λειτουργεί στα 100MHz; (3/10) main: addi $8, $0, 12 addi $9, $0, 0 addi $10, $0, 0 loop1: la $11, mat lw $12, 0($11) addi $9, $9, 9 beq $8, $9, L1 addi $10, $10, 3 beq $8, $10, L2 j loop1 L1: addi $13, $0, 1 j end L2: addi $13, $0, 2 end:
gon1332 Δημοσ. 15 Μαΐου 2015 Δημοσ. 15 Μαΐου 2015 Τι έχεις μάθει μέχρι τώρα; Είναι εύκολη η mips assembly. Έχεις μάθει για τους καταχωρητές; Το instruction set;
gon1332 Δημοσ. 16 Μαΐου 2015 Δημοσ. 16 Μαΐου 2015 Εφόσον έφτασες εκεί, έχεις μάθει σίγουρα και καταχωρητές. Η πρώτη άσκηση είναι πολύ εύκολη. Έχεις κατεβάσει κάποιον simulator; Ο Mars είναι από τους καλύτερους, αν όχι ο καλύτερος για εκπαιδευτικούς σκοπούς. Παρακάτω σου έλυσα την πρώτη άσκηση. Από σένα θέλω να με πείσεις πως κατάλαβες τί κάνει. Θέλω να μου πεις τί σε δυσκόλεψε από να την πραγματοποιήσεις. Συγκεκριμένα πράγματα δηλα- δή. Αν θες γράψε και σχόλια σε MIPS δίπλα από κάθε γραμμή για να εξηγήσεις τί καταλαβαίνεις. Α. Γράψτε κώδικα σε assembly mips που να κάνει τις παρακάτω πράξεις: i. w = x + y + z ii. w = x - y + 7 i. add $t0, $s0, $s1 add $t0, $t0, $s2 add $s3, $t0, $0 ii. sub $t0, $s0, $s1 addi $t0, $t0, 0x7 add $s3, $t0, $0
Επισκέπτης Δημοσ. 16 Μαΐου 2015 Δημοσ. 16 Μαΐου 2015 Εγώ έχω το QtSpim , την πρωτη την εκανα απο την 2η και μετα δεν ξερω τι να κανω.
gon1332 Δημοσ. 16 Μαΐου 2015 Δημοσ. 16 Μαΐου 2015 Εγώ έχω το QtSpim , την πρωτη την εκανα απο την 2η και μετα δεν ξερω τι να κανω. Αν έκανες την πρώτη τότε και η δεύτερη είναι πολύ εύκολη. Για δείξε τί έκανες στην πρώτη.
Επισκέπτης Δημοσ. 16 Μαΐου 2015 Δημοσ. 16 Μαΐου 2015 i.add $8, $9, $10 add $8, $0, $11 add $12, $0, $8ii.sub $9, $10, $11 addi $8, $0, 7 add $12, $9, $8 σωστά ?
gon1332 Δημοσ. 16 Μαΐου 2015 Δημοσ. 16 Μαΐου 2015 Αν δεν αναφέρεις με τί είναι αρχικοποιημένος ο κάθε καταχωρητής, τότε είναι λάθος η άσκηση. Τι περιέχει ο $9, o $10 και ο $11; Γιατί κάνεις την τελυταία add;
Επισκέπτης Δημοσ. 16 Μαΐου 2015 Δημοσ. 16 Μαΐου 2015 Δεν κατάλαβα... εννοείς γιατί δεν δίνω αριθμούς?
gon1332 Δημοσ. 17 Μαΐου 2015 Δημοσ. 17 Μαΐου 2015 Για παράδειγμα: Α. Γράψτε κώδικα σε assembly mips που να κάνει τις παρακάτω πράξεις: i. w = x + y + z ii. w = x - y + 7 # Υποθέτω πως οι $s0, $s1 & $s2 περιέχουν τις τιμές των # μεταβλητών x, y & z αντίστοιχα. Στον καταχωρητή $s3, # θα αποθηκευτεί το τελικό αποτέλεσμα, το οποίο αντιστοι- # χει στην τιμή της μεταβλητής w. Συν τοις άλλοις, εφαρμόζω # τις πράξεις ίδιας προτεραιότητας από τα αριστερά προς τα # δεξιά και υποθέτω πως μόνο οι καταχωρητές $s0-$s7 ($16-$23) # αντιστοιχίζονται σε μεταβλητές, ενώ οι καταχωρητές $t0-$t9 # ($8-$15, $24-$25) σε προσωρινά αποτελέσματα, όπως άλλωστε # ορίζουν οι συμβάσεις ονοματολογίας για τις χρήσεις αυτών # (από compiler κ.α.). i. add $t0, $s0, $s1 # tmp <- x + y add $t0, $t0, $s2 # tmp <- tmp + z add $s3, $t0, $0 # w <- tmp + 0 ii. sub $t0, $s0, $s1 # tmp <- x - y addi $t0, $t0, 0x7 # tmp <- tmp + 0x7 add $s3, $t0, $0 # w <- tmp + 0
Επισκέπτης Δημοσ. 17 Μαΐου 2015 Δημοσ. 17 Μαΐου 2015 i.add $8, $16, $17 # tmp <- x + yadd $8, $8, $18 # tmp <- tmp + zadd $19, $8, $0 # w <- tmp + 0ii.sub $8, $16, $17 # tmp <- x - yaddi $8, $8, 0x7 # tmp <- tmp + (0x7 αυτο εδω τι ειναι ? )add $18, $8, $0 # w <- tmp + 0 κατα τα αλλα σωστα ειναι ?
gon1332 Δημοσ. 17 Μαΐου 2015 Δημοσ. 17 Μαΐου 2015 Σωστά είναι. Το 0x7 είναι το 7 αλλά σε δεκαεξαδική μορφή. Καλό είναι να τη συνηθίσεις.
gon1332 Δημοσ. 17 Μαΐου 2015 Δημοσ. 17 Μαΐου 2015 Αν το βάλω σκετο 7 θα είναι λαθος? Θα είναι μια χαρά σωστό. Πάμε στη δεύτερη άσκηση τώρα. Τι σου φαίνεται άγνωστο σ' αυτή;
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα