Εργαστήριο Αρχιτεκτονική Υπολογιστών Ι ΤΡΑΠΕΖΑ ΘΕΜΑΤΩΝ. Άσκηση 2 Ποιες οι τιμές των καταχωρητών μετά την εκτέλεση του προγράμματος ;



Σχετικά έγγραφα
Δρ. Παναγιώτης Μ. Παπάζογλου Επίκουρος Καθηγητής ΤΕΙ Λαμίας. Διδακτικό βοήθημα γρήγορης μελέτης για τον προγραμματισμό του μικροεπεξεργαστή MIPS 32bit

Αρχιτεκτονική Υπολογιστών Ι

Αρχιτεκτονική Υπολογιστών Ι

Παραδείγματα Assembly (Μέρος

ΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών

Λύσεις 1 ης Ενδιάμεσης Εξέτασης στο ΗΜΥ213

Προτεινόμενες Λύσεις 1 ης Ενδιάμεσης Εξέτασης στο ΗΜΥ213 & Αποτελέσματα

Λύσεις 1 ης Ενδιάμεσης Εξέτασης στο ΗΜΥ213

ΗΜΥ 213. Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών. Διδάσκων: Δρ. Γιώργος Ζάγγουλος

Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών H/Y Department of Electrical and Computer Engineering. Εργαστήριο 1. Χειμερινό Εξάμηνο

Εισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 3-4: Προγραμματισμός MIPS. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής

Τρόποι Διευθυνσιοδότησης

Εργαστήριο 2. Εαρινό Εξάμηνο Εντολές για είσοδο ακεραίων αριθμών από την κονσόλα:

Διαδικασίες ΙI. ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι. Διάλεξη 5

ΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών

Αρχιτεκτονική Υπολογιστών

Άσκηση 1 (α) Άσκηση 1 (γ) Άσκηση 1 (β) Παραδείγματα Assembly. Άρα με έλεγχο στον $t1 αποφασίζω αν είναι 0 ή 1.

Οργάνωση Υπολογιστών

1 η Άσκηση Στην Αρχιτεκτονική Υπολογιστών

ΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΜΟΣ Εντολές επιλογής και αποφάσεων 1 ο Φύλλο Εργασιών Εισαγωγικές ασκήσεις για την εντολή if ΑΠΑΝΤΗΣΕΙΣ

add $t0,$zero, $zero I_LOOP: beq $t0,$s3, END add $t1, $zero,$zero J_LOOP: sub $t2, $s3, $t0 add $t2, $t2, $s1 int i, j, tmp; int *arr, n;

ΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών

ΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών

1 η ΑΣΚΗΣΗ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Ακ. έτος , 5ο Εξάμηνο, Σχολή ΗΜ&ΜΥ

Παραδείγματα Assembly Μέρος Γ

ΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών

Εισαγωγή στους Η/Υ. Γιώργος Δημητρίου. Μάθημα 2 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Πληροφορικής

Αρχιτεκτονική Υπολογιστών

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

Συναρτήσεις-Διαδικασίες

Θέµατα Φεβρουαρίου

Μετατροπή χαρακτήρων ASCII σε αριθμό (atoi) & διάβασμα, και αποθήκευση του περιεχομένου του στη μνήμη. (Διάλεξη. Πανεπιστήμιο Κύπρου

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. Τρίτη (3 η ) δίωρη διάλεξη. Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

Εντολή Δεδομένα Περιεχόμενα μετά την εκτέλεση 1 read(x) 122 x= 2 read(a,b,c) a= b= c= 3 read(d,e)

Αρχιτεκτονική Μικροεπεξεργαστών MIPS-32. Αρχείο καταχωρητών και Χάρτης Μνήµης

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

ΗΜΥ 213 Εργαστήριο Οργάνωσης Υπολογιστών και Μικροεπεξεργαστών

Λύσεις 2 ης Ενδιάμεσης Εξέτασης στο ΗΜΥ213

ΗΜΥ 213. Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών LAB 1 ( )

Τομέας Υλικού και Αρχιτεκτονικής Υπολογιστών ΗΥ134 - Εισαγωγή στην Οργάνωση και Σχεδίαση Η/Υ 1. Εργαστήριο 6. Εαρινό Εξάμηνο

MIPS functions and procedures

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

ΜΥΥ- 402 Αρχιτεκτονική Υπολογιστών Φροντιστήριο: MIPS assembly

6. Επιστροφή ελέγχου στο σημείο εκκίνησης

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 2 Οργάνωση μνήμης Καταχωρητές του MIPS Εντολές του MIPS 1

Εργαστήριο 4. Εαρινό Εξάμηνο ΠΡΟΣΟΧΗ: Αρχίστε νωρίς το Εργαστήριο 4. Οι ασκήσεις είναι πιο απαιτητικές από τα προηγούμενα εργαστήρια.

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

Υποστήριξη διαδικασιών στο υλικό των υπολογιστών

Εντολές του MIPS (2)

Chapter 2. Εντολές : Η γλώσσα του υπολογιστή. (συνέχεια) Η διασύνδεση Υλικού και λογισμικού David A. Patterson και John L.

ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 3 Εντολές του MIPS (2)

ΜΑΘΗΜΑ / ΤΑΞΗ : ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / Γ ΕΠΑΛ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 27/01/2013

ΠΡΟΤΕΙΝΟΜΕΝΑ ΘΕΜΑΤΑ-ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΚΑΔΗΜΑΪΚΟ ΕΠΑΛ- ΚΑΝΙΓΓΟΣ 13- ΤΗΛ

3 η ΑΣΚΗΣΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ ΥΠΟΛΟΓΙΣΤΩΝ

ΕΠΛ605 Εργασία 1 Ημερομηνία Παράδοσης 12/9/2018 στην αρχή του μαθήματος

Αρχιτεκτονική Υπολογιστών

Άσκηση 1 (α) Να διατυπώσετε την πιο κάτω λογική έκφραση στη Visual Basic κάνοντας χρήση μεταβλητών:

ΣΕΤ ΑΣΚΗΣΕΩΝ 3. Προθεσµία: 7/1/2014, 22:00

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΛΑΜΙΑΣ. A. Μετατροπή αριθμών 1. Μετατροπή αριθμών από δεκαδικό σε δυαδικό σύστημα αρίθμησης

Χρησιμοποιείται για να αποφασίσει το πρόγραμμα αν θα κάνει κάτι σε ένα σημείο της εκτέλεσής του, εξετάζοντας αν ισχύει ή όχι μια συνθήκη.

Τι είναι υποπρόγραμμα; Τμήμα προγράμματος το οποίο επιτελεί ένα αυτόνομο υπολογιστικό έργο (γράφεται χωριστά από το υπόλοιπο πρόγραμμα)

Αρχιτεκτονική Υπολογιστών

Προγραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών

ΕΘΝΙKΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Ονοματεπώνυμο: ΑΜ:

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

ΘΕΜΑ Α. 1. Η δυαδική αναζήτηση χρησιμοποιείται μόνο σε ταξινομημένες συλλογές δεδομένων.

Αναδρομή. ΗΥ 232 Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 6. Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων

ΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΞΙ (6)

Αρχιτεκτονική Υπολογιστών Ασκήσεις Εργαστηρίου

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ Η/Υ ΠΡΩΤΗ ΠΡΟΟΔΟΣ ΣΤΗΝ «ΟΡΓΑΝΩΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ Η/Y»

Διαδικασίες Ι. ΗΥ 134 Εισαγωγή στην Οργάνωση και στον Σχεδιασμό Υπολογιστών Ι. Διάλεξη 4

Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Αρχιτεκτονική Υπολογιστών

Μετατροπή χαρακτήρων ASCII σε ακέραιο αριθµό (atoi) & Άνοιγµα αρχείου µέσα από τo QtSPIM, διάβασµα, και αποθήκευση του περιεχοµένου του στη µνήµη

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕΘΟΔΩΝ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ Η/Υ (ΟΜΑΔΑ ΘΕΜΑΤΩΝ A)

ΕΝΤΟΛΕΣ ΕΠΑΝΑΛΗΨΗΣ. for (παράσταση_1; παράσταση_2; παράσταση_3) εντολή επόμενη εντολή

1 η Ενδιάμεση Εξέταση Απαντήσεις/Λύσεις

Γλώσσα Προγραμματισμού C

ΗΜΥ 213 Εργαστήριο Οργάνωσης Ηλεκτρονικών Υπολογιστών και Μικροεπεξεργαστών

Γλώσσα Προγραμματισμού C. Προγραμματισμός HY: Γλώσσα Προγραμματισμού C. Γρήγορος Πίνακας Αναφοράς Σύνταξης. Εισήγηση #4. Επαναληπτικές δομές:

ΘΕΜΑΤΑ ΕΞΕΤΑΣΗΣ ΚΑΙ ΑΠΑΝΤΗΣΕΙΣ

ΓΡΑΠΤΕΣ ΠΡΟΑΓΩΓΙΚΕΣ ΕΞΕΤΑΣΕΙΣ ΜΑΪΟΥ-ΙΟΥΝΙΟΥ 2015

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

A. Να γράψετε τον αριθμό της κάθε μιας από τις παρακάτω προτάσεις και δίπλα. το γράμμα Σ, εάν είναι σωστή, ή το γράμμα Λ, εάν είναι λανθασμένη.

ΚΕΦΑΛΑΙΟ 10 ΕΝΤΟΛΕΣ ΕΠΙΛΟΓΗΣ (ή εντολές Ελέγχου και Επιλογής ή εντολές Επιλογής και Απόφασης)

Αποτελέσματα προόδου

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

Εκφώνηση άσκησης. Η Κρεμάλα σαν παιχνίδι. Ανάλυση. Μέρος Α Αναφoρά, ανάλυση τακτικής. Υλοποίηση του παιχνιδιού «Κρεμάλα»

Οργάνωση Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Ασκήσεις 7: Πρόγραμμα Συνδεδεμένης Λίστας και Διαδικασιών. Μανόλης Γ.Η.

Αρχεία Ένα αρχείο αποτελείται από μία σειρά ομοειδών δεδομένων που ονομάζονται λογικές εγγραφές (logical record)

Πανεπιστήμιο Θεσσαλίας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων

Δείγμα Τελικής Εξέτασης στο ΗΜΥ213. Διδάσκοντας: Γιώργος Ζάγγουλος

ΚΕΦΑΛΑΙΟ 9 ΒΑΣΙΚΕΣ ΕΝΤΟΛΕΣ

Δομημένος Προγραμματισμός

Δομημένος Προγραμματισμός

Transcript:

Εργαστήριο Αρχιτεκτονική Υπολογιστών Ι ΤΡΑΠΕΖΑ ΘΕΜΑΤΩΝ Άσκηση 1 Πόσους αστερίσκους θα τυπώσει το πρόγραμμα ; li $t2,2 li $t1,1 Εμφάνισε div $t1,$t2 mfhi $t3 add $t3,$t3,1 add $t1,$t1,$t3 ble $t1,10,start Πλήθος αστερίσκων Άσκηση 2 Ποιες οι τιμές των καταχωρητών μετά την εκτέλεση του προγράμματος ; li $t1,2 div $t1,$t1,1 add $t1,$t1,3 mul $t1,$t1,$t1 div $t1,$t1 mflo $t0 sub $t0,$t1,$t0 $t0= $t1= Άσκηση 3 Πόσοι αστερίσκοι θα τυπωθούν ; li $t1,1 Εμφάνισε add $t1,$t1,1 ble $t1,10,start ble $t1,5,start (α) 9 (β) 10 (γ) 15 (δ) τίποτα από αυτά

Άσκηση 4 Τι θα τυπώσει το πρόγραμμα ; la $a0,mes add $a0,$a0,4 la $a0,mes li $v0,4.data mes:.asciiz TEI Lamias Άσκηση 5 Τι θα τυπώσει το πρόγραμμα; li $t0,1 li $t1,3 start2: Εμφάνισε add $t1,$t1,-1 bgtz $t1,start2 Αλλαγή γραμμής add $t0,$t0,1 ble $t0,5,start (α) (β) (γ) (δ) άλλο, σχεδιάστε Άσκηση 6 Τι θα τυπώσει το πρόγραμμα ; li $t2,2 start1: Εμφάνισε add $t2,$t2,1 start2: Εμφάνισε & add $t2,$t2,2 ble $t2,5,start1 ble $t2,9,start2 (α) &&&& (β) &&&& (γ) &&& (δ) άλλο, σχεδιάστε

Άσκηση 7 Βρείτε το λάθος και διορθώστε το ώστε να εμφανίζεται το μήνυμα hello 1: move $v0,4 2: la $a0,mes 3: 4:.data 5: mes:.asciiz hello Γραμμές λάθους : διόρθωση : Άσκηση 8 Βρείτε το λάθος και διορθώστε το ώστε να εμφανίζεται το μήνυμα 10 φορές 1: L1: 2: li $t1,10 3: #print message 4: addi $t1,$t1,1 5: ble $t1,10,l1 Γραμμές λάθους : διόρθωση : Άσκηση 9 Τι θα εμφανίσει το πρόγραμμα αν αρχικά $t1=1, $t2=2, $t0=4 ; add $t0,$t1,$t2 mul $t0,$t0,$t2 sub $t0,$t1,$t0 bgtz $t2,l2 blt $t1,-1,l3 L1: #print AAA L2: #print BBB j exodos L3: #print CCC exodos: li $v0,10 Θεωρήστε ότι όπου υπάρχει σχόλιο #print γίνεται εμφάνιση του αντίστοιχου μηνύματος.

Άσκηση 10 Το ακόλουθο πρόγραμμα : li $t1,2 li $t2,1 L1: div $t1,$t2 mfhi $t1 add $t1,$t1,$t2 bnez $t1,l1 (α) θα κάνει ατέρμονο loop (β) Θα σταματήσει επειδή το $t1 γίνεται μηδέν (γ) Θα σταματήσει επειδή το $t2 γίνεται μηδέν (δ) τίποτα από τα παραπάνω Άσκηση 11 Τι θα εμφανίσει το ακόλουθο πρόγραμμα ; la $a0,mes li $v0,1.data mes:.asciiz hello Άσκηση 12 Γράψτε τις αντίστοιχες εντολές assembly (MIPS) P=1; I=1; do { printf( hello ); I=I+1; P=PI; } while (I<=5) #print hello Άσκηση 13 Πόσους αστερίσκους () θα εμφανίσει το ακόλουθο πρόγραμμα ; li $t1,3 again: move $t2,$t1 again2: #print addi $t2,$t2,-1 bnez $t2,again2 addi $t1,$t1,-1 bnez $t1,again (α) 7 (β) 15 (γ) 6 (δ) 1 (ε) 3

Άσκηση 14 Πότε πρέπει να καταφεύγουμε σε χρήση θέσεων μνήμης ; (α) ποτέ (β) πάντα (γ) σε περίπτωση ομαδοποιημένων υπολογισμών που απαιτούν περισσότερους καταχωρητές από τους διαθέσιμους (δ) τίποτα από τα παραπάνω Άσκηση 15 Για να εμφανίσουμε παραμετρικά το ((A+B)C/D)-E θα πρέπει να χρησιμοποιήσουμε (βέλτιστη περίπτωση): (α) 5 εμφανίσεις αριθμών, 5 εμφανίσεις αλφαριθμητικών (β) 4 εμφανίσεις αριθμών, 8 εμφανίσεις αλφαριθμητικών (γ) 7 εμφανίσεις αλφαριθμητικών (δ) 5 εμφανίσεις αριθμών, 4 εμφανίσεις αλφαριθμητικών Άσκηση 16 Τι θα εμφανίσει ο ακόλουθος κώδικας αν δώσουμε για είσοδο τo hello./after ; la $t0,lexi again: lb $t1($t0) beqz $t1,cc blt $t1,'b',bb bgt $t1,'c',bb addi $t1,$t1,-32 bb: sb $t1($t0) addi $t0,$t0,1 j again cc: #print lexi Άσκηση 17 Έστω πίνακας Α. Σημειώστε τα νέα περιεχόμενα του πίνακα μετά την εκτέλεση του ακόλουθου προγράμματος: Πίνακας Α Πρόγραμμα Πίνακας Α 2 li $t1,1 li $s0,0 1 lw $t4,pinax($s0) 33 addi $s0,$s0,4 maria: 35 lw $t3,pinax($s0) 12 blt $t3,$t4,syn sw $t4,pinax($s0) syn: addi $s0,$s0,4 addi $t1,$t1,1 ble $t1,5,maria

Άσκηση 18 Έστω ότι $t1=am Πόσους αστερίσκους θα τυπώσει το πρόγραμμα ; move $t3,$t1 li $t2,2 div $t1,$t2 mfhi $t1 Εμφάνισε add $t1,$t1,1 ble $t1,$t3,start Πλήθος αστερίσκων Άσκηση 19 Ποιες οι τιμές των καταχωρητών μετά την εκτέλεση του προγράμματος ; li $t1,2 div $t1,$t1,1 div $t1,$t1,2 mul $t1,$t1,$t1 div $t1,$t1 mfhi $t0 sub $t0,$t1,$t0 $t0= $t1= Άσκηση 20 Πόσοι αστερίσκοι θα τυπωθούν ; li $t1,1 Εμφάνισε add $t1,$t1,1 ble $t1,10,start bgt $t1,10,start (α) 9 (β) 10 (γ) 11 (δ) τίποτα από αυτά

Άσκηση 21 Τι θα τυπώσει το πρόγραμμα ; li $a0,mes li $v0,1.data mes:.asciiz Hello Άσκηση 22 Τι θα τυπώσει το πρόγραμμα; li $t0,1 li $t1,1 start2: Εμφάνισε add $t1,$t1,1 ble $t1,5,start2 Αλλαγή γραμμής add $t0,$t0,1 ble $t0,5,start (α) (β) (γ) (δ) άλλο, σχεδιάστε Άσκηση 23 Τι θα τυπώσει το πρόγραμμα ; li $t2,1 start1: Εμφάνισε add $t2,$t2,1 start2: Εμφάνισε & add $t2,$t2,1 ble $t2,5,start1 ble $t2,10,start2 (α) &&&& (β) &&&& (γ) &&& (δ) άλλο, σχεδιάστε

Άσκηση 24 Να υλοποιηθεί σε γλώσσα MIPS Assembly ο ακόλουθος ψευδοκώδικας: if (a>0) then εκτύπωσε hello1 else if (a<0) then εκτύπωσε hello2 (α) θεωρήστε ότι η μεταβλητή a υλοποιείται με τον καταχωρητή $t1 και (β) να μην χρησιμοποιηθεί κανονική συνάρτηση για την εκτύπωση αλλά απλά ένα σχόλιο του τύπου #εκτύπωσε hello1 Άσκηση 25 Γράψτε τις αντίστοιχες εντολές assembly (MIPS) P=1; I=1; while (I<=10) { printf( hello ); P=P+I; I=I+1; } Άσκηση 26 Ποια συνάρτηση υπολογίζει ο ακόλουθος κώδικας ; (θεωρήστε ότι $t1=x) mul $t2,$t1,$t1 sub $t3,$t2,$t1 add $t2,$t1,2 div $t3,$t2 mflo $t0 Άσκηση 27 Ποια συνάρτηση υπολογίζει ο ακόλουθος κώδικας ; (θεωρήστε ότι $t1=x) mul $t3,$t2,$t2 mul $t3,$t3,$t1 sub $t3,$t3,1 sub $t2,$t1,2 li $t4,2 div $t2,$t4 mfhi $t2 div $t0,$t2,$t3

Άσκηση 28 Να συμπληρωθεί ο ακόλουθος κώδικας ώστε να γεμίζει ένας λογικός πίνακας Ν θέσεων (Ν=τελευταίο ψηφίο ΑΜ+10). Κάθε αριθμός αποτυπώνεται από δύο μόνο byte. li $t2,1... li $v0,5 move $t0,$v0.data..., pinakasa (...) add $t2,..., 1 ble $t2,...,... pinakasa:.space... Άσκηση 29 Ποια η λειτουργία του ακόλουθου προγράμματος; blt $t1,10,term bgt $t1,20,term #Εμφάνιση hello term: #Έξοδος από το πρόγραμμα Άσκηση 30 Υλοποιείστε σε Assembly τον έλεγχο ΙF ((A=1) ΚΑΙ (B ανήκει στο [2,8]) then εκτύπωσε hello. Θεωρήστε ότι A=$t1, B=$t2. Η εμφάνιση του μηνύματος γίνεται απλά με την αναγραφή σχόλιου του τύπου #εκτύπωσε hello.

Άσκηση 31 Έστω πίνακας Ν θέσεων (Ν=τελευταίο ψηφίο ΑΜ+10) με συμβολικό όνομα pinakasa. Να συμπληρωθεί ο ακόλουθος κώδικας ώστε να γεμίζει ο πίνακας ξεκινώντας από την τελευταία θέση. Κάθε αριθμός αποτυπώνεται από τέσσερα byte. li $t2,1... li $v0,5 move $t0,$v0.data..., pinakasa (...)...... $t2,...,... pinakasa:.space... Άσκηση 32 Να γραφεί πρόγραμμα Assembly που να υπολογίζει τη συνάρτηση: f (x)= (x3 )modx ( x 2 )mod2 Θεωρήστε ότι $t1=x Άσκηση 33 Έστω ότι $t1 = 02 88 FA 22 $t2 = 00 29 AD 66 έστω ότι το περιεχόμενο των δύο παραπάνω καταχωρητών αποθηκεύεται σε ένα πίνακα που ξεκινά από τη διεύθυνση (AM+10) 16. Σχεδιάστε τα περιεχόμενα του φυσικού πίνακα στη μνήμη (διεύθυνση και περιεχόμενο θέσης).

Άσκηση 34 Να υλοποιηθεί σε MIPS Assembly ο ακόλουθος ψευδοκώδικας: Διάβασε Χ Επανέλαβε Π=πηλίκο (Χ/2) Υ=υπόλοιπο (Χ/2) #Εκτύπωσε Υ Χ=Π Όσο Π<>0 Θεωρήστε ότι $t1=x. Η εκτύπωση γίνεται απλά με την εκτέλεση της εντολής #Εκτύπωσε συνοδευόμενη από την κατάλληλη παράμετρο Άσκηση 35 Σε ένα πρόγραμμα Assembly έχει δηλωθεί ένας λογικός πίνακας 10 θέσεων που ξεκινά από τη διεύθυνση ΑΜ 16. Γράψτε τις απόλυτες αλλά και τις σχετικές αρχικές διευθύνσεις κάθε αποθηκευμένου καταχωρητή στο φυσικό πίνακα. Απόλυτη αρχική διεύθυνση Σχετική αρχική διεύθυνση Περιεχόμενο

Άσκηση 36 Έστω ότι ένα πρόγραμμα διαβάζει από το πληκτρολόγιο τους ακόλουθους ακέραιους αριθμούς: 34, 259, 321, 800 Οι αριθμοί αυτοί αποθηκεύονται σύμφωνα με το πρόγραμμα στους καταχωρητές $t1,$t2,$t3,$t4. Γράψτε αναλυτικά τα περιεχόμενα κάθε καταχωρητή (στο δεκαεξαδικό σύστημα). Καταχωρητής $t1 Καταχωρητής $t2 Καταχωρητής $t3 Καταχωρητής $t4 Άσκηση 37 Τι θα εμφανίσει το πρόγραμμα αν αρχικά $t1=1, $t2=28, $t0= -1 ; add $t0,$t1,$t2 mul $t0,$t0,$t2 sub $t0,$t1,$t0 bltz $t2,l2 bgt $t1,-1,l3 L1: #print AAA L2: #print DDD j exodos L3: #print CCC exodos: li $v0,10 Θεωρήστε ότι όπου υπάρχει σχόλιο #print γίνεται εμφάνιση του αντίστοιχου μηνύματος. Άσκηση 38 Για να εμφανίσουμε παραμετρικά το (((A+B)C/D)-E)+A θα πρέπει να χρησιμοποιήσουμε (βέλτιστη περίπτωση): (α) 5 εμφανίσεις αριθμών, 5 εμφανίσεις αλφαριθμητικών (β) 4 εμφανίσεις αριθμών, 8 εμφανίσεις αλφαριθμητικών (γ) 7 εμφανίσεις αλφαριθμητικών (δ) τίποτα από τα παραπάνω

Άσκηση 39 Ποιες οι τιμές των καταχωρητών μετά την εκτέλεση του προγράμματος ; li $t1,2 div $t1,$t1,1 mul $t1,$t1,3 mul $t1,$t1,$t1 div $t1,$t1 mflo $t0 mul $t0,$t1,$t0 $t0= $t1= Άσκηση 40 Έστω το ακόλουθο πρόγραμμα Assembly li $v0,4 la $a0,mes add $a0,$a0,n.data mes:.asciiz TEIofLamia Τι θα εμφανίσει το παραπάνω πρόγραμμα; (Ν = τελευταίο ψηφίο του ΑΜ)