Συστήματα Μικροϋπολογιστών

Σχετικά έγγραφα
Συστήματα Μικροϋπολογιστών

Συστήματα Μικροϋπολογιστών. Παραδείγματα χρήσης διαδικασιών Εισόδου Εξόδου δεδομένων στον με 8085

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Αρχιτεκτονική-Ι. Ενότητα 1: Εισαγωγή στην Αρχιτεκτονική -Ι

ΘΕΜΑΤΑ & ΕΝΔΕΙΚΤΙΚΕΣ ΛΥΣΕΙΣ

Εισαγωγή στην Πληροφορική & τον Προγραμματισμό

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

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ: ΠΛΗ-21

Πληροφορική. Ενότητα 4 η : Κωδικοποίηση & Παράσταση Δεδομένων. Ι. Ψαρομήλιγκος Τμήμα Λογιστικής & Χρηματοοικονομικής

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:01. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

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

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 3 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

«ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ» ΕΣΩΤΕΡΙΚΗ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΚΑΙ ΛΕΙΤΟΥΡΓΙΕΣ

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 4 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

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

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 5 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

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

Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

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

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

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

Αριθμητικά Συστήματα

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

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Πληροφορική Ι. Ενότητα 3 : Αναπαράσταση αριθμών στο δυαδικό σύστημα. Δρ.

Συστήματα Μικροϋπολογιστών

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 8: Συστήματα αρίθμησης

Εισαγωγή στην πληροφορική

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

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

Εισαγωγή στην Επιστήμη των Υπολογιστών

Εισαγωγή στην Πληροφορική

ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ ΛΥΣΕΙΣ ΘΕΜΑΤΩΝ ΦΕΒ 2014 Καθηγητής: Νικολαΐδης Νικ. Ημ/νία εξέτασης:

ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Ι

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

ΒΟΗΘΗΤΙΚΕΣ ΣΗΜΕΙΩΣΕΙΣ

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

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

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 6 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

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

Ψηφιακά Συστήματα. 1. Συστήματα Αριθμών

Εισαγωγή στην Επιστήμη των Υπολογιστών

Υπολογιστικά & Διακριτά Μαθηματικά

ΑΣΚΗΣΕΙΣ ΣΤΑ ΣΥΣΤΗΜΑΤΑ ΑΡΙΘΜΗΣΗΣ (σελ στο ΜΥ1011Χ.pdf)

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Αναπαράσταση αριθμών στο δυαδικό σύστημα. Δρ.

Εισαγωγή στην Επιστήμη των Υπολογιστών

ΠΛΗΡΟΦΟΡΙΚΗ I Ενότητα 6

Εισαγωγή στην Πληροφορική ΓΕΝΙΚΟ ΤΜΗΜΑ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ TEI ΧΑΛΚΙ ΑΣ

Εθνικό Μετσόβιο Πολυτεχνείο Σχολή Ηλεκτρολόγων Μηχανικών - Μηχανικών Υπολογιστών. ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ Νεκτάριος Κοζύρης ΑΡΙΘΜΗΤΙΚΕΣ ΠΡΑΞΕΙΣ

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

Αριθµητική υπολογιστών

Συστήματα Μικροϋπολογιστών

! Εάν ο αριθμός διαθέτει περισσότερα bits, χρησιμοποιούμε μεγαλύτερες δυνάμεις του 2. ! Προσοχή στη θέση του περισσότερο σημαντικού bit!

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

Πράξεις με δυαδικούς αριθμούς

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

Ψηφιακή Σχεδίαση. Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ No:07. Δρ. Μηνάς Δασυγένης. Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ

ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Ι Μικροεπεξεργαστής Intel 8085, Εργαστηριακές Ασκήσεις

Αριθμητικά Συστήματα

Μαθηματικά. Ενότητα 1: Οι Αριθμοί. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

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

ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Ι Μικροεπεξεργαστής 8085, Εργαστηριακές Ασκήσεις

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

Συστήματα Μικροϋπολογιστών

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ψηφιακή Σχεδίαση

Υπολογιστικά & Διακριτά Μαθηματικά

Εισαγωγή στους Υπολογιστές

Συστήματα αρίθμησης. = α n-1 *b n-1 + a n-2 *b n-2 + +a 1 b 1 + a 0 όπου τα 0 a i b-1

Θ. Ζαχαριάδης Αν. Καθηγητής. Λ. Σαράκης Καθ. Εφαρμογών

Αριθμητικά Συστήματα Η ανάγκη του ανθρώπου για μετρήσεις οδήγησε αρχικά στην επινόηση των αριθμών Κατόπιν, στην επινόηση συμβόλων για τη παράσταση

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

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

ΣΤΑΤΙΣΤΙΚΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

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

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

Εισαγωγή στην Επιστήμη των Υπολογιστών

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

Συστήματα Μικροϋπολογιστών

{ int a = 5; { int b = 7; a = b + 3;

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. 2 ο Μάθημα. Λεωνίδας Αλεξόπουλος Λέκτορας ΕΜΠ. url:

Τμήμα Μηχανολόγων Μηχανικών Πανεπιστήμιο Θεσσαλίας ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ. Βασικές Έννοιες Προγραμματισμού. Ιωάννης Λυχναρόπουλος Μαθηματικός, MSc, PhD

Δυαδικη παρασταση αριθμων και συμβολων

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

ΠΛΗ21 Κεφάλαιο 2. ΠΛΗ21 Ψηφιακά Συστήματα: Τόμος Α Κεφάλαιο: Παράσταση Προσημασμένων Αριθμών Συμπληρώματα

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

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

; Οι HL δείχνουν την επόµενη θέση µνήµης MVI A, 38H CMP H JNZ DO_FLMEM ; POP B. ; Ανάκτηση καταχωρητών απο το σωρό.

Ψηφιακή Λογική Σχεδίαση

Θ. Ζαχαριάδης Αν. Καθηγητής. Λ. Σαράκης Καθ. Εφαρμογών

Μαθηματικά. Ενότητα 2: Δεκαδικοί αριθμοί, κλάσματα, δυνάμεις, ρίζες και ποσοστά. Σαριαννίδης Νικόλαος Τμήμα Λογιστικής και Χρηματοοικονομικής

Εισαγωγή στην επιστήμη των υπολογιστών

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07

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

Αναπαράσταση Δεδομένων. ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

ΥΠΟΛΟΓΙΣΤΕΣ Ι. Τα επιμέρους τμήματα Η ΟΜΗ TOY ΥΠΟΛΟΓΙΣΤΗ. Αναπαράσταση μεγεθών. Αναλογική αναπαράσταση ΚΕΝΤΡΙΚΗ ΜΝΗΜΗ ΜΟΝΑ Α ΕΛΕΓΧΟΥ

Ηλεκτρονικοί Υπολογιστές

Σύστημα Πλεονάσματος. Αναπαράσταση Πραγματικών Αριθμών. Αριθμητικές Πράξεις σε Αριθμούς Κινητής Υποδιαστολής

Περιεχόµενα. οµή Η/Υ: Αναπαράσταση εδοµένων. υαδικό σύστηµα. Συστήµατα Αρίθµησης υαδικό Οκταδικό εκαεξαδικό Παραδείγµατα

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Ψηφιακή Σχεδίαση

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

Transcript:

Συστήματα Μικροϋπολογιστών Παραδείγματα προγραμματισμού του με Intel 8085 Υπεύθυνος Μαθήματος: K. ΠΕΚΜΕΣΤΖΗ

Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άδεια χρήσης άλλου τύπου, αυτή πρέπει να αναφέρεται ρητώς.

Παράδειγμα 1 ίνεται αριθμός των 8 bit στη θέση μνήμης 0040H. Να βρεθούν τα δεκαεξαδικά ψηφία υψηλότερης και χαμηλότερης τάξης (σε δυαδική παράσταση) και να αποθηκευτούν στις θέσεις 0041H και 0042H αντίστοιχα. 0040: X Y 0041: 0 X 0042: 0 Y

Παράδειγμα 1 Λύση LXI H,0040 MOV A, M MOV B, A RRC RRC RRC RRC ; Κρατώ αντίγραφο ; 4 περιστροφές δεξιά ; Το υψηλότερης αξίας Hex ψηφίο ; πάει στη χαμηλότερη θέση ANI 0F ; Απομόνωση X, 0F 16 = 00001111 2 ΙΝΧ H MOV M, A ; Αποθηκεύω το X στη θέση 0041H MOV A, B ; Επαναφέρω ANI 0F ; Απομονώνω το χαμηλότερης ; Hex αξίας ψηφίο Y INX H MOV M, A HLT ; Αποθηκεύω το Y στη θέση 0042H ; Τέλος 0040: X Y 0041: 0 X 0042: 0 Y

Παράδειγμα 2 Αριθμός των 16 bits που βρίσκεται στις θέσεις 40 και 41 της μνήμης να προστεθεί στον αριθμό των 16 bits που βρίσκεται στις θέσεις 42 και 43 της μνήμης. Το αποτέλεσμα να τοποθετηθεί στις θέσεις 44 και 45. Τα περισσότερο σημαντικά bytes βρίσκονται στις θέσεις 41, 43 και 45. Να βρεθεί και δεύτερος τρόπος. 0040: X1 0041: X2 0042: Y1 0043: Y2 0044: S1 0045: S2 + input1 X2 X1 41 40 input2 Y2 Y1 43 42 output S2 S1 45 44 =

Παράδειγμα 2 Λύση Α LXI H,0040H INX H MOV A,M ; INX H INX H ; (A) = X1 (HL) = 42H INX H ; ADC M ; (HL) = 43H Προσθ. τα περισσότερο σημαντικά bytes X2+Y2+CY ADD M ; Προσθέτουμε τα λιγότερο σημαντικά bytes X1+Y1=S1 INX H ; MOV M,B ; (HL) = 44H Αποθήκευση S2 MOV B,A ; DCX H ; MOV A,M ; (B) = S1 (HL) = 41H (A) = X2 INX H ; MOV M,A ; HLT ; (HL) = 45H Αποθήκευση αποτελέσματος S2 Τέλος προγράμματος

Παράδειγμα 2 Λύση Β LHLD 0040H XCHG LHLD 0042H DAD D SHLD 0044H HLT Φορτώνουμε στο ζεύγος HL τα περιεχόμενα των θέσεων 40H, 41Η Φορτώνουμε στον DE τα περιεχόμενα του ζεύγους HL HL M(43)M(42) Πρόσθεση των 2 αριθμών Αποθήκευση αποτελέσματος στις θέσεις 44, 45 Τέλος προγράμματος

Παράδειγμα 3 Εδώ υπολογίζεται το τετράγωνο ενός αριθμού που περιέχεται στη θέση 0040Η της μνήμης με τη βοήθεια ενός πίνακα. Ο αριθμός υποθέτουμε ότι ανήκει στο διάστημα [0,15]. Ο πίνακας τοποθετείται στις θέσεις 0100Η έως 010FH της μνήμης. Το αποτέλεσμα τοποθετείται στη θέση 0041Η. Πίνακας τετραγώνων 0100Η: 00Η 0101Η: 01Η 0102Η: 04H 0103H: 09H 0104H: 10H 0105H: 19H 0106H: 24H 0107H: 31H 0108Η: 40Η 0109Η: 51Η 010AΗ: 64H 010BH: 79H 010CH: 90H 010DH: A9H 010EH: C4H 010FH: E1H

Παράδειγμα 3 Λύση LDA 0040H MOV L,A MVI H,0 LXI D,0100H DAD D MOV A,M STA 0041H HLT ημιουργία της κατάλληλης διεύθυνσης του πίνακα τετραγώνων Μεταφέρεται στον Α το αντίστοιχο τετράγωνο Αποθήκευση του αποτελέσματος στη θέση 41Η

Παράδειγμα 3 Απλούστερη Λύση LDA 0040H MOV L, A MVI H, 01 MOV A, M STA 0041H HLT ημιουργία στο HL της κατάλληλης διεύθυνσης του πίνακα τετραγώνων Μεταφέρεται στον Α το αντίστοιχο τετράγωνο Αποθήκευση του αποτελέσματος στη θέση 41Η

Παράδειγμα 4 Ένας διψήφιος αριθμός είναι αποθηκευμένος στις θέσεις 40 και 41 της μνήμης, με το περισσότερο σημαντικό ψηφίο (MSD) στη θέση 40. Ο αριθμός αυτός να μετατραπεί σε δυαδικό και να αποθηκευτεί στη θέση 42.

Παράδειγμα 4 Λύση LXI H, 0040H MOV A,M ADD A MOV B,A ADD A ADD A ADD B INX H ADD M INX H MOV M,A HLT ; (A) MSD ; (A) 2 MSD ; (B) 2 MSD ; (A) 2 (A) = 4 MSD ; (A) 2 (A) = 8 MSD ; (A) (A)+(B) = 8 MSD + 2 MSD ; =10 MSD ; (A) 10 MSD + LSD ; Αποθήκευση αποτελέσματος

Παράδειγμα 5 Τα περιεχόμενα των θέσεων 0040Η και 0041Η της μνήμης είναι απλοί δυαδικοί αριθμοί (χωρίς πρόσημο). Να προσδιοριστεί ο μεγαλύτερος από τους δύο αριθμούς και να αποθηκευτεί στη θέση 0042 Η. N1 N2 max (N1, N2) 40 41 42

Παράδειγμα 5 Λύση DONE: LXI H, 0040H MOV A,M INX H CMP M JNC DONE MOV A,M INX H MOV M,A HLT ; Συγκρίνονται οι 2 αριθμοί ; Άλμα αν ο 1ος είναι μεγαλύτερος ; N1(A)>N2(M) => CY=0 ; διαφορετικά (N1< N2) προετοιμάζεται ο 2ος ; (H)(L) 0042H ; Αποθήκευση μεγαλύτερου στη 0042Η

Παράδειγμα 6 Στο πρόγραμμα αυτό προσδιορίζεται το μεγαλύτερο ενός συνόλου αριθμών. Το πλήθος των αριθμών βρίσκεται στη θέση 0041H της μνήμης και οι αριθμοί αρχίζουν από τη θέση 0042H. Το αποτέλεσμα καταχωρείται στη θέση 40H.

Παράδειγμα 6 - Λύση FOR: NEXT: LXI H, 0041H MOV B,M SUB A INX H CMP M JNC NEXT MOV A,M DCR B JNZ FOR STA 0040H HLT ; (B) πλήθος αριθμών ; Μηδενίζεται ο Α ; Είναι ο επόμενος αριθμός > Α ; δηλ. του τοπικού μεγίστου; ; Ναι, αντικαθίσταται ο μέγιστος. ; Αλλιώς προχωράμε στον έλεγχο του ; επόμενου αριθμού

Παράδειγμα 7 Στο πρόγραμμα αυτό προσδιορίζεται το μήκος ενός συνόλου χαρακτήρων (ASCII string) όπου κάθε χαρακτήρας αντιστοιχεί σε έναν κωδικό του ενός byte. Το string είναι αποθηκευμένο στη μνήμη, από τη θέση 0041Η και μετά. Το τέλος του προσδιορίζεται από ένα χαρακτήρα CR (0DH). Αφού βρεθεί το ζητούμενο μήκος (χωρίς το CR) τοποθετείται στη θέση 0040Η.

Παράδειγμα 7 Λύση FOR: DONE: LXI H,0041H MVI B,0 ; (Β)=αρχικό μήκος 0 MVI A,0Dh ; (A) Κωδικός CR CMP M JZ DONE INR B INX H JMP FOR MOV Α,Β STA 0040H HLT ; Είναι ο χαρακτήρας CR; ; Αν ναι τέλος ; ιαφορετικά το μήκος αυξάνεται ; Κατά ένα ; Έλεγχος επόμενου χαρακτήρα ; Αποθήκευση μήκους

Παράδειγμα 8 ίνεται ένα block Ν δεδομένων στη μνήμη. Η πρώτη διεύθυνση βρίσκεται στον καταχωρητή D-E και το πλήθος Ν στον καταχωρητή Β. Ζητείται ένα πρόγραμμα που να συγκρίνει το περιεχόμενο του καταχωρητή Α με το block των δεδομένων και αν δεν περιλαμβάνεται αυτό να προστίθεται στο τέλος του block με αντίστοιχη ενημέρωση του πλήθους Ν.

Παράδειγμα 8 Λογικό ιάγραμμα Αρχή (C) (H)(L) (Β) (D)(E) M((H)(L))=A? Nαί Όχι (H)(L) (C) (Η)(L)+1 (C)-1 Όχι (C)=0? Nαί M((H)(L)) (A) (B) (B)+1 Τέλος

Παράδειγμα 8 Λύση ADR1: ADR2: MOV C,B MOV H,D MOV L,E CMP M JZ ADR2 INX H DCR C JNZ ADR1 MOV M,A INR B HLT ; (Β) Πλήθος δεδομένων ; (D)(E) (H)(L) ; Συγκρίνεται ο Α με τις τιμές του πίνακα ; Αν περιλαμβάνεται, η διαδικασία ; περατώνεται ; Αλλιώς σαρώνουμε όλο τον πίνακα ; εν βρέθηκε, άρα θα προστεθεί στο τέλος ; Ενημέρωση πλήθους Ν

Παράδειγμα 9 ίνονται 256 μη αρνητικοί αριθμοί στην περιοχή 2000-20FF της μνήμης. Υπολογίζεται ο μέσος όρος των αριθμών με ακρίβεια 8 bits και καταχωρείται στη θέση 3000.

Παράδειγμα 9 Λογικό ιάγραμμα

Παράδειγμα 9 - Λύση ADR1: ADR2: LXI H, 2000H MVI B, 00H MVI A, 00H ADD M JNC ADR2 INR B INR L JNZ ADR1 LXI H, 3000H MOV M,B HLT ; Αρχικοποιήσεις ; Άθροιση στον συσσωρευτή Α ; Υπερχειλίσεις στον καταχωρητή Β ; Επόμενος αριθμός ; Αν συμπληρωθούν 256 αθροίσεις, τέλος ; και αποθήκευση αποτελέσματος

Παράδειγμα 10 Μετατροπή υαδικού αριθμού σε BCD Θέση Μνήμης 4 bit 4 bit 40H 41H 42H 0 BCD 0 BCD Binary Μονάδες εκάδες

Παράδειγμα 10 Λύση DECA: END: LDA 0042H CPI 64H ; Είναι μεγαλύτερος του 99? (A-99) JNC END ; Αν ναι τέλος (A>99) MVI B,FFH ; Αλλιώς Α 99 INR B SUI 0AH ; Αλλεπάλληλες αφαιρέσεις του 10 JNC DECA ; Αν είναι θετικός συνέχισε ADI 0AH ; ιόρθωση του αρνητικού υπολοίπου STA 0040H ; Αποθήκευση μονάδων MOV A,B STA 0041H ; Αποθήκευση δεκάδων HLT

Παράδειγμα 11 Η χρήση της εντολής δεκαδικής ρύθμισης DAA Αν Α L >9 ή AC=1 τότε A A+6 (ή A L A L +6) Αν A H >9 ή CY=1 τότε A A+60 (ή A H A H +6) MVI A,27 ADI 36 ;A 5DH=6310 MVI A,9 INR A ;A 0AH=1010 DAA ;A 63 MVI A,29 DAA ;A 1010 ADI 18 ;A 41H (AC=1) DAA ;A 47

Παράδειγμα 12 Μετατροπή υαδικού Αριθμού σε εκαδική Μορφή Παράδειγμα Εδώ είναι το 4*6 4Ε=4*16+14=4*10 + Ε + 4*6=78 Σχηματίζω 4*6 σε δεκαδική μορφή 4 8 10 16 1Ε +6 DAA 24 +4Ε 72 +6 DAA 78

Παράδειγμα 12 Λύση MOV B,A ; B 16X+Y (αποθήκευση) ANI F0 ; A 16X RRC RRC RRC RRC ; A X ADD A ; A 2X (Hex) DAA ; A 2X (Dec) MOV C,A ; Αποθήκευση ADD A ; A 4X (Hex) DAA ; A 4X (Dec) ADD C ; A 6X (Hex) DAA ; A 6X (Dec) ADD B ; 10X+Y+6X = 16X+Y DAA ; Dec HLT Λόγω της DAA που ακολουθεί μπορούμε να θεωρήσουμε ότι ο Β περιέχει τον αρχικό αριθμό σε δεκαδική μορφή (10X+Y)

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα» του ΕΜΠ έχει χρηματοδοτήσει μόνο την αναδιαμόρφωση του υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.