ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Ι

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Ι"

Transcript

1 ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Ι Μικροεπεξεργαστής 8085, Εργαστηριακές Ασκήσεις Δρ.Τοπάλης Ευάγγελος Δρ. Ηλεκτρολόγος Μηχανικός & Τεχνολογίας Υπολογιστών καθ. Χαδέλλης Λουκάς ΤΕΙ Δυτικής Ελλάδας ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ Τ.Ε., ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ v

2 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 2

3 Περιεχόμενα ΚΕΦΆΛΑΙΟ 1 - ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Εισαγωγή Ο Μικροεπεξεργαστής Βασική Δομή ενός Μικροϋπολογιστή Ο Μικροελεγκτής Εισαγωγή της έννοιας του Λογισμικού Εφαρμογές των μικροϋπολογιστών ΚΕΦΆΛΑΙΟ 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ Η δομή του ΜΙΚΡΟΚΙΤ Χαρτογράφηση μνήμης Είσοδοι Έξοδοι ΜΙΚΡΟΚΙΤ Διαχείριση διακοπών στο ΜΙΚΡΟΚΙΤ Λειτουργίες του monitor προγράμματος Εισαγωγή και εκτέλεση προγράμματος Εκτέλεση προγράμματος βήμα-βήμα Εξέταση και αλλαγή του περιεχομένου των καταχωρητών Χειροκίνητη διακοπή Χρήσιμες παρατηρήσεις και λειτουργίες Λειτουργία RESET Λειτουργία WARM START ως break point Τερματισμός προγράμματος ΚΕΦΆΛΑΙΟ 3 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 VIRTUAL KIT Virtual Kit ΚΕΦΆΛΑΙΟ 4 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ GNUSIM gnusim Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 3

4 ΚΕΦΆΛΑΙΟ 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ ΑΣΚΗΣΗ 1 Γενικά για τους Μικροϋπολογιστές, Εξοικείωση με το ΚΙΤ, και τα προγράμματα ΑΣΚΗΣΗ 2 Αποθήκευση σε Μνήμη και Μεταφορά Περιεχομένων Μνήμης ΑΣΚΗΣΗ 3 Αριθμητικές πράξεις (Πρόσθεση δεκαεξαδικών 8-bit (διψήφιων) - 16-bit (τετραψήφιων) αριθμών) και λογικές πράξεις ΑΣΚΗΣΗ 4 Βρόχοι Εντολές INC/DEC & CMP/CPI, JMP/JNZ/JZ/JNC/JC Διαγράμματα Ροής ΑΣΚΗΣΗ 5 Συγκρίσεις, Διακλαδώσεις & Βρόχοι - Διαγράμματα Ροής ΑΣΚΗΣΗ 6 Αριθμητικές Πράξεις Πολλαπλασιασμός ΑΣΚΗΣΗ 7 Στοίβα και Εύρεση Μέγιστου ΑΣΚΗΣΗ 8 Στοίβα και Υπορουτίνες ΑΣΚΗΣΗ 9 Λειτουργίες Ι/Ο Θύρες Εισόδου / Εξόδου ΑΣΚΗΣΗ 10 Επαναληπτική ΠΑΡΆΡΤΗΜΑ 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 4

5 Κεφάλαιο 1 - ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ 1.1 Εισαγωγή Ο Μικροϋπολογιστής είναι ένας «μικρός» υπολογιστής και αποτελείται από τα εξής μέρη Τον Μικροεπεξεργαστή ή CPU Την Μνήμη (RAM, ROM, Flash) Τα Κυκλώματα Εισόδου / Εξόδου ή όπως λέγονται Ι/Ο (Input / Output). Τα Ι/Ο χρησιμοποιούνται για την διασύνδεση περιφερειακών «εξωτερικών» συσκευών όπως η οθόνη, το πληκτρολόγιο, ο εκτυπωτής, ο δίσκος αποθήκευσης κλπ. Όλα αυτά τα στοιχεία είναι τοποθετημένα πάνω σε μια πλακέτα (board). Ο μικροϋπολογιστής είναι το υπολογιστικό σύστημα πάνω στο οποίο αναπτύχθηκαν, αφενός οι προσωπικοί υπολογιστές (PC s) και αφετέρου τα σύγχρονα υπολογιστικά συστήματα βασισμένα στην αρχιτεκτονική της κατανεμημένης ή παράλληλης επεξεργασίας (distributed / parallel processing). Πέρα από αυτά όμως ο μικροϋπολογιστής σήμερα υπάρχει μέσα σε οποιαδήποτε ηλεκτρονική ή ηλεκτρική συσκευή χρειάζεται υπολογιστική νοημοσύνη. Έτσι ο μικροϋπολογιστής υπάρχει μέσα στο αυτοκίνητο (ABS, Injection, Cruise control, αερόσακοι, διαγνωστικά, κλπ.), μέσα σε συσκευές της κατοικίας (πλυντήριο, τηλεόραση, ψυγείο, κλπ.), στο γραφείο (τηλεφωνικό κέντρο, τηλεφωνική συσκευή, φαξ, κλπ.), στα συστήματα αυτοματισμού κτιρίων και κατοικιών (κλιματισμός, θέρμανση / ψύξη, ασφάλεια, φωτισμός, κλπ.), στις προσωπικές μας συσκευές (κινητό τηλέφωνο, ρολόι, PDA, έξυπνες κάρτες, κλπ.) και αλλού. Δεν χρειάζεται να αναφερθεί η βιομηχανία, η βιοτεχνία και η εν γένει παραγωγή. Όλοι οι βιομηχανικοί αυτοματισμοί (PLC, industrial controllers, AC/DC Drives, Inverters, Converters, κλπ.) βασίζονται στην «νοημοσύνη» που παρέχει ο μικροϋπολογιστής. 1.2 Ο Μικροεπεξεργαστής Η κεντρική επεξεργαστική μονάδα ή Central Processing Unit ή CPU ή απλά ο μικροεπεξεργαστής αποτελεί το βασικότερο μέρος ενός μικροϋπολογιστή. Είναι ένα πολύπλοκο ψηφιακό κύκλωμα το οποίο αποτελείται από τα εξής μέρη. Καταχωρητές (Registers) για προσωρινή αποθήκευση δεδομένων (data), εντολών (commands), όπως και άλλων πληροφοριών. Υπάρχουν καταχωρητές αποκλειστικής ή γενικής χρήσης. Αποκωδικοποιητή Εντολών (Command Decoder) για την μετατροπή μιας εντολής προγράμματος σε μια σειρά λειτουργιών, μέσω των οποίων υλοποιείται η εν λόγω εντολή. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 5

6 Αριθμητική και Λογική Μονάδα (Α / Λ Μ) (Arithmetic / Logic Unit ALU) η οποία εκτελεί αριθμητικές (αθροιστής κλπ.) και λογικές πράξεις. Κυκλώματα Χρονισμού και Ελέγχου (Timing / Control ) τα οποία με ψηφιακό ρολόι και ψηφιακούς απαριθμητές παράγουν δευτερεύοντα περιοδικά και μη σήματα, για να ελέγχουν και διατηρούν τη σωστή ακολουθία των λειτουργιών στα πλαίσια της εκτέλεσης εντολών προγράμματος. Εσωτερικούς διαύλους επικοινωνίας (Internal Bus) για την επικοινωνία όλων αυτών των μονάδων μεταξύ των, μέσα στην CPU. Διασύνδεση των εσωτερικών διαύλων με τους εξωτερικούς διαύλους (Data / Address / Control Buses Interfaces) για την επικοινωνία της CPU με τα άλλα τμήματα του μικροϋπολογιστή όπως μνήμη και Ι/Ο μέσω των τριών διαύλων Δεδομένων / Διευθύνσεων / Ελέγχου. Η CPU υλοποιείται από την συνεργασία και συνλειτουργία όλων αυτών των προαναφερομένων μερών ή μονάδων, και είναι «συγκεντρωμένη» μέσα σε ένα chip. 1.3 Βασική Δομή ενός Μικροϋπολογιστή Η δομή αυτή φαίνεται στο παρακάτω σχήμα (Σχήμα 1). Τα τρία μέρη του μικροϋπολογιστή, δηλαδή η CPU, η Μνήμη και τα Ι/Ο επικοινωνούν με τρεις διαύλους επικοινωνίας, τον Δίαυλο Δεδομένων (Data Bus), τον Δίαυλο Διευθύνσεων (Address Bus) και τον Δίαυλο Ελέγχου (Control Bus). Εξωτερικές Συσκευές Μικροεπεξεργαστής CPU Μνήμη M RAM Κυκλώματα Εισόδου / Εξόδου I / O Laser printer Monitor Modem ROM Keyboard Δίαυλος Δεδομένων Data Bus Interface Card Δίαυλος Διευθύνσεων Address Bus Floppy drive Hard Disc Δίαυλος Ελέγχου Control Bus Video Σχήμα 1 Η υπολογιστική ισχύς γενικά καθορίζεται από τα εξής στοιχεία: Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 6

7 Την ταχύτητα (το ρολόι) της CPU (πχ 700 MHz ή 3GHz). Όσο υψηλότερη τόσο ισχυρότερος. Το εύρος του διαύλου δεδομένων (πχ 8-bit, 16-bit, 32-bit, 64-bit). Όσο περισσότερα bits τόσο ισχυρότερος. Το εύρος του διαύλου διευθύνσεων (πχ 16-bit 64 kbytes, 32-bit 4 Gbytes). Όσο μεγαλύτερος τόσο περισσότερη μνήμη μπορεί να διευθυνσιοδοτηθεί και τόσο ισχυρότερο είναι το σύστημα. Το πλήθος των εσωτερικών καταχωρητών της CPU. Όσο περισσότεροι τόσο ισχυρότερος. Την παρουσία ειδικής μνήμης cache δίπλα στην CPU. 1.4 Ο Μικροελεγκτής Είναι ένας Μικροϋπολογιστής «συγκεντρωμένος» σε ένα chip. Δηλαδή CPU, Μνήμη και Ι/Ο είναι όλα συγκεντρωμένα στο ίδιο chip. Οι μικροελεγκτές χρησιμοποιούνται στις εφαρμογές αυτοματισμού και στην «τοποθέτηση» υπολογιστικής νοημοσύνης σε μικρές συσκευές. 1.5 Εισαγωγή της έννοιας του Λογισμικού Το Λογισμικό είναι πρόγραμμα φορτωμένο στην μνήμη του μικροϋπολογιστή όπως φαίνεται στο παρακάτω σχήμα (Σχήμα 2). Σχήμα 2 Το Λογισμικό επιτρέπει τον διαρκή και αέναο «επαναπρογραμματισμό» του μικροϋπολογιστή ώστε να μπορεί να αλλάζει λειτουργία και να αντεπεξέρχεται σε διαφορετικά προβλήματα διατηρώντας την ίδια δομή και αρχιτεκτονική. Το λογισμικό δίνει την δυνατότητα της προηγμένης επικοινωνίας του ανθρώπου με το υλικό Hardware του μικροϋπολογιστή. Η «θέση» του λογισμικού σε σχέση με το υλικό φαίνεται στο παρακάτω σχήμα (Σχήμα 3). Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 7

8 S / W MICROCOMPUTER BOARD MONITOR PROGRAM RESET, PRINT, ESCAPE, ENTER ΓΛΩΣΣΑ ΜΗΧΑΝΗΣ (MACHINE LANGUAGE) Bytes (Hex) FE, 8A, DE, 23 ΔΥΑΔΙΚΗ ΑΝΑΠΑΡΑΣΤΑΣΗ bits HARDWARE (H/W) Σχήμα 3 Η Γλώσσα Μηχανής και το Monitor Program είναι τα δύο επίπεδα λογισμικού από την Μηχανή προς τον Άνθρωπο. Στο χαμηλότερο επίπεδο βρίσκεται το υλικό ή Hardware (H/W). Πάνω από το H/W υπάρχει «εικονικά» η δυαδική αναπαράσταση των ηλεκτρικών μεγεθών του H/W που είναι υψηλές (high=1) και χαμηλές (low=0) στάθμες τάσης. Πάνω από αυτό το επίπεδο υπάρχει η «ομαδοποίηση» των bits σε Bytes και η «εμφάνιση» της Γλώσσας Μηχανής στο δεκαεξαδικό σύστημα. Από εδώ και πάνω εισάγεται η έννοια του λογισμικού ή προγράμματος (software S/W). Το προφορτωμενο λογισμικό ή Monitor Program είναι το ανώτατο επίπεδο επικοινωνίας του χειριστή με τον μικροϋπολογιστή 8085 μέσω εντολών λειτουργικού προγράμματος. Από εδώ ο χρήστης χειρίζεται το μικροϋπολογιστικό σύστημα του 8085 με εντολές. S / W MICROCOMPUTER BOARD ΦΙΛΙΚΟΤΗΤΑ ΕΠΙΚΟΙΝΩΝΙΑΣ ΓΛΩΣΣΑ ASSEMBLY ΓΛΩΣΣΑ ΜΗΧΑΝΗΣ (MACHINE LANGUAGE) ΔΥΑΔΙΚΗ ΑΝΑΠΑΡΑΣΤΑΣΗ HARDWARE (H/W) LDA, STA, MOV, ADC, INC Bytes (Hex) FE, 8A, DE, 23 bits Σχήμα 4 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 8

9 Ο χρήστης μπορεί να προγραμματίζει τον 8085 να κάνει διάφορες εργασίες μέσω της γλώσσας προγραμματισμού Assembly. Η Assembly στην ουσία είναι μια «μετάφραση» της γλώσσας μηχανής σε «ανθρώπινα αντιληπτή μορφή» δηλαδή μοιάζει με ανθρώπινη γλώσσα επικοινωνίας. Το αντίστοιχο μοντέλο σε επίπεδα έχει την παρακάτω μορφή (Σχήμα 4). Από τα δύο προηγούμενα σχήματα φαίνεται ότι η Γλώσσα Assembly και το Monitor Program βρίσκονται στο ίδιο επίπεδο πάνω από την Γλώσσα Μηχανής. Πράγματι αυτά τα δύο λογισμικά βρίσκονται σε παράλληλη λειτουργία. Το Monitor είναι λογισμικό τοποθετημένο από τον κατασκευαστή και επιτρέπει τον γενικό έλεγχο του μικροϋπολογιστή ενώ η Assembly είναι λογισμικό που επιτρέπει τον προγραμματισμό σε γλώσσα Assembly. Αν κάναμε ένα μοντέλο επιπέδων όπως τα δυο προηγούμενα, για τον Η/Υ μας τότε αυτά θα είχαν την εξής μορφή. COMPUTER W I N D O W S D O S B I O S WINDOWS, MENUS, BUTTONS, FIELDS Disc Operating System Basic Input Output System ΓΛΩΣΣΑ ΜΗΧΑΝΗΣ (MACHINE LANGUAGE) Bytes (Hex) FE, 8A, DE, 23 ΔΥΑΔΙΚΗ ΑΝΑΠΑΡΑΣΤΑΣΗ bits HARDWARE (H/W) Σχήμα 5 Στον Η/Υ μας το ισχυρό λειτουργικό σύστημα που αντιστοιχεί στο Monitor Program του μικροϋπολογιστή, είναι τα επίπεδα από το BIOS έως και τα WINDOWS. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 9

10 S / W COMPUTER ΦΙΛΙΚΟΤΗΤΑ ΕΠΙΚΟΙΝΩΝΙΑΣ VISUAL ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ VISUAL C, VISUAL BASIC ΥΨΗΛΟΤΕΡΕΣ ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C, C++, JAVA, BASIC, PASCAL ASSEMBLY ΓΛΩΣΣΑ ΜΗΧΑΝΗΣ (MACHINE LANGUAGE) ΔΥΑΔΙΚΗ ΑΝΑΠΑΡΑΣΤΑΣΗ WINDOWS, MENUS, BUTTONS, FIELDS if, then, while, when, include Bytes (Hex) FE, 8A, DE, 23 bits HARDWARE (H/W) Σχήμα 6 Αντίστοιχα στο προγραμματιστικό περιβάλλον του Η/Υ, αντί της Assembly του μικροϋπολογιστή, έχουμε Υψηλότερες Γλώσσες Προγραμματισμού. Η Assembly μπορεί επίσης να συνεχίζει να υπάρχει πάνω από την γλώσσα μηχανής όπως φαίνεται στο παραπάνω σχήμα. Με αναφορά τον προσωπικό μας Η/Υ μας, μπορούμε να πούμε ότι αποτελείται από τα εξής μέρη, διότι βασίζεται στον μικροϋπολογιστή. ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΗ (ταχύτητα 3 GHz εύρος ψηφιακής λέξης 64 bit) ) ΜΝΗΜΗ RAM (ποσότητα πχ. 2 GBytes ταχύτητα πχ. 800 MHz) ΚΥΚΛΩΜΑΤΑ ΕΙΣΟΔΟΥ / ΕΞΟΔΟΥ (ποσότητα είδη πχ. PCI, PCI-E, IDE, SATA, SCSI, USB, FireWire, Serial, Parallel) ΕΞΩΤΕΡΙΚΕΣ ΣΥΣΚΕΥΕΣ (οθόνη, πληκτρολόγιο, εκτυπωτής, δίσκος κλπ.) 1.6 Εφαρμογές των μικροϋπολογιστών Ο μικροϋπολογιστής μέσω του προγραμματισμού του από την γλώσσα Assembly μπορεί να κάνει διάφορες εργασίες είτε «Εσωτερικές» όπως πχ να προσθέτει / αφαιρεί / πολλαπλασιάζει / διαιρεί αριθμούς, να υπολογίζει τύπους, να βρίσκει μέγιστο / ελάχιστο, να μεταφέρει δεδομένα από μια περιοχή μνήμης σε μια άλλη, να λύνει εξισώσεις κλπ. Ή «Εξωτερικές» όπως να δέχεται από τις εισόδους δεδομένα, να τα επεξεργάζεται και να παράγει νέες εξόδους μέσω των κυκλωμάτων εισόδου / εξόδου (Ι/Ο 8085, 8255) Στο παρακάτω σχήμα φαίνεται που μπορεί να χρησιμοποιηθεί ένας μικροϋπολογιστής ή μέσα σε ποια συστήματα ενσωματώνεται. Ο μικροϋπολογιστής είναι το βασικό ψηφιακό ηλεκτρονικό κύκλωμα ή σύστημα που έχει υπολογιστική Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 10

11 νοημοσύνη και μπορεί να κάνει εργασίες, να παίρνει αποφάσεις, να ελέγχει κλπ. Αποτελεί λοιπόν το βασικότερο στοιχείο σε συσκευές όπως είναι οι Η/Υ, τα PLC, οι βιομηχανικοί ελεγκτές, οι δικτυακές συσκευές, τα χειριστήρια ελέγχου και οποιοδήποτε σύστημα ή συσκευή πρέπει να είναι «Έξυπνο» δηλαδή να έχει δυναμική συμπεριφορά, να αντιδρά σε ερεθίσματα και χοντρικά να «σκέφτεται», βέβαια σε «χαμηλό» επίπεδο. Σχήμα 7 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 11

12 Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 2.1 Η δομή του ΜΙΚΡΟΚΙΤ Στο ποιο κάτω σχήμα φαίνεται η κάτοψη του ΜΙΚΡΟΚΙΤ 8085, το οποίο αποτελείται από το με 8085, μνήμη SRAM, μνήμη EPROM, την USART 8251, το προγραμματιζόμενο περιφερειακό παράλληλης διασύνδεσης 8155, τον ελεγκτή πληκτρολογίου 8279, έξι seven segment displays (θα το ονομάζουμε εν συντομία display ) και μια σειρά από συνδέσμους (connectors). Με τη βοήθεια του ΜΙΚΡΟΚΙΤ μπορεί να αναπτυχθεί, να ελεγχθεί και να εκσφαλματωθεί γρήγορα και αποτελεσματικά το λογισμικό εφαρμογής για τον μe Ο σκοπός αυτός υποστηρίζεται από ένα ειδικού σκοπού λογισμικό το οποίο έχει αναπτυχθεί και αποθηκευτεί στην μνήμη EPROM του ΜΙΚΡΟΚΙΤ. Το πρόγραμμα ονομάζεται εν συντομία monitor και έχει τις πιο κάτω λειτουργίες δυνατότητες: Εξέταση του περιεχομένου όλων των θέσεων μνήμης (RAM και ROM) του συστήματος και απεικόνιση στο display. Εξέταση του περιεχομένου όλων των καταχωρητών του με και απεικόνιση στο display. Αλλαγή του περιεχομένου όλων των θέσεων μνήμης RAM. Αλλαγή του περιεχομένου όλων των καταχωρητών του με. Εκτέλεση προγράμματος. Εκτέλεση προγράμματος βήμα βήμα. Επανεκκίνηση (RESET) με το πάτημα ενός πλήκτρου. Διακοπή της λειτουργίας ενός προγράμματος (INTERRUPT) και εκτέλεση άλλου υποπρογράμματος με το πάτημα ενός πλήκτρου. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 12

13 Σχήμα 8 Κάτοψη του ΜΙΚΡΟΚΙΤ Χαρτογράφηση μνήμης Στο πιο κάτω εικόνα φαίνεται παραστατικά η δομή της μνήμης του ΜΙΚΡΟΚΙΤ. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 13

14 Σχήμα 9 Χαρτογράφηση μνήμης 2.3 Είσοδοι Έξοδοι ΜΙΚΡΟΚΙΤ Το ΜΙΚΡΟΚΙΤ έχει τις εξής δυνατότητες εισόδου εξόδου: 3 παράλληλες θύρες (IC C) σύνδεσμος X1 Σειριακή θύρα USART (IC A) σύνδεσμος DB9-1 Σειριακή θύρα η οποία υποστηρίζεται από τον με8085 μέσω των ακίδων της SID και SOD σύνδεσμος DB9-2 Κύκλωμα ελέγχου πληκτρολογίου και Display (IC14 - KDC 8279) Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 14

15 Όλα τα βασικά σήματα του με8085 είναι διαθέσιμα στο σύνδεσμο X1 Στον πιο κάτω πίνακα φαίνονται αναλυτικά οι Ι/Ο διευθύνσεις που έχουν ανατεθεί σε διάφορα ολοκληρωμένα κυκλώματα για τον έλεγχο της λειτουργίας τους και για την διακίνηση δεδομένων. Ολοκληρωμένο Διεύθυνση Διεύθυνση USART 8251 (IC13) 1EH 1FH Data Register Control/Status Register KDC 8279 (IC14) 2EH 2FH Data Register Control/Status Register PPI 8155 (IC12) 40H 41H 42H 43H 44H 45H Command/Status Register Data Register PORT A Data Register PORT B Data Register PORT C Timer λιγότερο σημαντικό byte Timer περισσότερο σημαντικό byte input port (IC21) 0FH Παράλληλο θύρα εισόδου 3 bits. Η θύρα αυτή είναι συνδεδεμένη απ ευθείας στο data bus του με και διαθέσιμη στο χρήστη μέσω του συνδέσμου Χ3 Πίνακας 1. Ανάθεση Ι/Ο διευθύνσεων στη διαχείριση των θυρών εισόδου εξόδου. Στους πιο κάτω πίνακες φαίνεται η ανάθεση των ακίδων στους διαθέσιμους συνδέσμους εισόδου εξόδου. Ακίδες Λειτουργία 1 Ασύνδετο 2 RxD (input) 3 TxD (output) 4 CTS# (input) 5 RTS# (output) Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 15

16 6 Ασύνδετο 7 GND 8 Ασύνδετο 9 Ασύνδετο Πίνακας 2. Ανάθεση ακίδων στο σύνδεσμο DB9-1 (σειριακή θύρα 8251). Ακίδες Λειτουργία Ακίδες Λειτουργία 25 PA0 13 PB4 26 PA1 14 PB5 23 PA2 11 PB6 24 PA3 12 PB7 21 PA4 9 PC0 22 PA5 10 PC1 19 PA6 7 PC2 20 PA7 8 PC3 17 PB0 5 PC4 18 PB1 6 PC5 15 PB2 2 & 4 VCC (+5V) 16 PB3 1 & 3 GND Πίνακας 3. Ανάθεση ακίδων στο σύνδεσμο X2 (παράλληλη θύρα 8155). Ακίδες Λειτουργία Ακίδες Λειτουργία 25 A0 33 AD0 26 A1 34 AD1 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 16

17 23 A2 31 AD2 24 A3 32 AD3 21 A4 29 AD4 22 A5 30 AD5 19 A6 27 AD6 20 A7 28 AD7 17 Α8 8 IO/M# 18 Α9 7 ALE 15 Α10 5 RESET OUT 16 Α11 10 RD# 13 Α12 9 WR# 14 Α13 6 CLK OUT 11 Α14 1, 2, 3, 4 GND 12 A15 Πίνακας 4. Ανάθεση ακίδων στο σύνδεσμο X1 (CPU BUS). Ακίδες Λειτουργία 1 Ασύνδετη 2 SID (input) 3 SOD (output) 4 Ασύνδετη 5 Ασύνδετη 6 Ασύνδετη Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 17

18 7 GND 8 Ασύνδετη 9 Ασύνδετη Πίνακας 5. Ανάθεση ακίδων στο σύνδεσμο DB9-2 (σειριακή θύρα με8085). 2.4 Διαχείριση διακοπών στο ΜΙΚΡΟΚΙΤ Οι διακοπές στο με8085 διακλαδίζουν το πρόγραμμα (με εξαίρεση τη διακοπή INTR) σε θέσεις μνήμης κοντά στη θέση 0000Η. Αυτή η περιοχή μνήμης είναι γνωστή ως interrupt vector table και χρησιμοποιείται για την ανάπτυξη των ρουτινών εξυπηρέτησης των διακοπών. Στο ΜΙΚΡΟΚΙΤ στην περιοχή αυτή υπάρχει η μνήμη ROM η οποία περιέχει το monitor πρόγραμμα. Αποτέλεσμα αυτού είναι να μην δίδεται η δυνατότητα στο χρήστη να τοποθετήσει τις ρουτίνες εξυπηρέτησης διακοπών στην περιοχή αυτή. Το πρόβλημα αυτό αντιμετωπίζεται από το monitor πρόγραμμα με την προσθήκη εντολών διακλάδωσης σε συγκεκριμένες θέσεις μνήμης οι οποίες βρίσκονται σε περιοχή στην οποία υπάρχει μνήμη RAM. Με το τρόπο αυτό δημιουργείται ένα δεύτερο interrupt vector table το οποίο θα χρησιμοποιείται πλέον για την ανάπτυξη τον ρουτινών εξυπηρέτησης των διακοπών. Θα πρέπει όμως να σημειωθεί ότι δεν είναι όλες οι πηγές διακοπών διαθέσιμες στο χρήστη του ΜΙΚΡΟΚΙΤ μιας και μερικές από αυτές χρησιμοποιούνται από το monitor για την λειτουργία του ΜΙΚΡΟΚΙΤ. Στον πιο κάτω πίνακα φαίνεται αναλυτικά ο τρόπος με τον οποίο διαχειρίζεται το monitor πρόγραμμα τις διακοπές. Διακοπή με 8085 Λειτουργία Αρχική διεύθ. εξυπηρέτησης Τελική διεύθ. εξυπηρέτησης TRAP Συνδέεται με το TIMER OUT του 8155 και χρησιμοποιείται από το monitor πρόγραμμα για την υλοποίηση της λειτουργίας SINGLE STEP. 0024H - RST 7.5 Συνδέεται με το πλήκτρο VI χρησιμοποιείται για τη 003CH 40E3H χειροκίνητη δημιουργία διακοπής. Διατίθεται στο χρήστη. RST 6.5 Συνδέεται στο JUMPER J2. Διατίθεται στο χρήστη. 0034H 40DDH RST 5.5 Συνδέεται με το 8279 και χρησιμοποιείται για να ειδοποιήσει τον με ότι πατήθηκε κάποιο πλήκτρο. 002CH - Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 18

19 INTR Συνδέεται στο JUMPER J3. Διατίθεται στο χρήστη. Για να χρησιμοποιηθεί η διακοπή αυτή είναι απαραίτητη η ανάπτυξη εξωτερικού HW. - - RST 0 Χρησιμοποιείται από το monitor πρόγραμμα. Υλοποιεί την λειτουργία COLD START που ισοδυναμεί με HW RESET. 0000H - RST 1 Χρησιμοποιείται από το monitor πρόγραμμα. Υλοποιεί την λειτουργία WARM START και μπορεί να χρησιμοποιείται για την επαναφορά του ελέγχου στο monitor πρόγραμμα από πρόγραμμα του χρήστη. Για το λόγο αυτό είναι χρήσιμη επίσης αυτή η διακοπή και υλοποίηση break points στο πρόγραμμα του χρήστη. 0008H - RST 2 Δεν υλοποιείται, επικαλύπτεται από το monitor πρόγραμμα. Δεν πρέπει να χρησιμοποιείται. - - RST 3 Δεν υλοποιείται, επικαλύπτεται από το monitor πρόγραμμα. Δεν πρέπει να χρησιμοποιείται. - - RST 4 Δεν υλοποιείται, επικαλύπτεται από το monitor πρόγραμμα. Δεν πρέπει να χρησιμοποιείται. - - RST 5 Διατίθεται στο χρήστη. 0028H 40D7H RST 6 Διατίθεται στο χρήστη. 0030H 40DAH RST 7 Διατίθεται στο χρήστη. 0038H 40E0H Πίνακας 6. Διαχείριση διακοπών στο ΜΙΚΡΟΚΙΤ. 2.5 Λειτουργίες του monitor προγράμματος Το monitor πρόγραμμα είναι σε θέση να εκτελέσει μια σειρά από λειτουργίες, οι οποίες μπορούν να μας φανούν χρήσιμες στην ανάπτυξη προγραμμάτων εφαρμογής για τον με8085 με την βοήθεια του ΜΙΚΡΟΚΙΤ. Οι λειτουργίες αυτές εξυπηρετούνται από το πληκτρολόγιο και το display το υπάρχει στο ΜΙΚΡΟΚΙΤ και έχει την ακόλουθη δομή. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 19

20 Ένα μέρος του πληκτρολογίου, το αριθμητικό, μας επιτρέπει την εισαγωγή δεκαεξαδικών αριθμών κατά την πληκτρολόγηση εντολών. Η εντολοδότηση του monitor υποστηρίζεται και από μια σειρά πλήκτρων ειδικών λειτουργιών. Το αποτέλεσμα κάθε εντολής απεικονίζεται στο display το οποίο διαιρείται σε δύο μέρη. Το πρώτο μέρος αποτελείται από τέσσερα ψηφία και απεικονίζει διευθύνσεις μνήμης ή καταχωρητές ενώ το δεύτερο απεικονίζει δεδομένα. Η δομή του πληκτρολογίου και του display καθώς επίσης και μια σύντομη επεξήγηση της λειτουργίας των πλήκτρων ειδικού σκοπού φαίνεται στην πιο κάτω εικόνα. Εικόνα 1. Η δομή και η χρήση του πληκτρολογίου και του display Εξέταση και αλλαγή περιεχομένων μνήμης Με την εντολή μπορεί να εξεταστεί το περιεχόμενο μιας θέσης μνήμης. Στην περίπτωση όπου η υπό εξέταση περιοχή μνήμης είναι τύπου RAM τότε υπάρχει η δυνατότητα αλλαγής του περιεχομένου της. Αν επιχειρηθεί η αλλαγή του περιεχομένου μιας θέσης ROM μνήμης το monitor πρόγραμμα το αντιλαμβάνεται και εμφανίζει στο display μήνυμα λάθους -Err. Η σύνταξη της εντολής καθώς και το αποτέλεσμα της εφαρμογής της φαίνεται παραστατικά στην πιο κάτω εικόνα. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 20

21 Εικόνα 2. Εντολή εξέτασης και αλλαγής περιεχομένων μνήμης Εισαγωγή και εκτέλεση προγράμματος Το monitor πρόγραμμα με την εντολή αλλαγής μνήμης που διαθέτει μας δίδει την δυνατότητα εισαγωγής προγράμματος από το πληκτρολόγιο. Ας υποθέσουμε ότι θέλουμε να εισάγουμε το πιο κάτω πρόγραμμα στο ΜΙΚΡΟΚΙΤ στη θέση μνήμης 2000H (περιοχή RAM) και στη συνέχεια να το εκτελέσουμε. MVI A, 47H RST 1 Η μετατροπή του προγράμματος αυτού σε γλώσσα μηχανής έχει ως εξής: Διεύθυνση Δεδομένα Κώδικας Assembly Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 21

22 2000 3E MVI A,47H CF RST 1 Αφού εισάγουμε το πρόγραμμα σύμφωνα με τις εντολές τις παραγράφου 0 δίνουμε στο ΜΙΚΡΟΚΙΤ την εντολή εκτέλεσης προγράμματος η οποία συντάσσεται ως εξής: Εκτέλεση προγράμματος βήμα-βήμα Το monitor πρόγραμμα μας δίδει την δυνατότητα εκτέλεσης προγράμματος βήμα. Η σύνταξη της εντολής είναι η εξής: Εξέταση και αλλαγή του περιεχομένου των καταχωρητών Το monitor πρόγραμμα μας δίδει την δυνατότητα εξέτασης του περιεχομένου των όλων καταχωρητών των καταχωρητών του με καθώς επίσης και την δυνατότητα μεταβολής του περιεχομένου τους. Η σύνταξη της εντολής στην περίπτωση της εξέτασης του περιεχομένου είναι η εξής: Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 22

23 Για την αλλαγή του περιεχομένου των καταχωρητών χρησιμοποιούμε τα πλήκτρα «R» και «Ν» προκειμένου να εμφανίσουμε τον καταχωρητή που επιθυμούμε να μεταβάλουμε, στη συνέχεια χρησιμοποιώντας το πληκτρολόγιο αλλάζουμε τιμή, η οποία αποθηκεύεται στο καταχωρητή με το πάτημα του πλήκτρου «Ν». Στην πιο κάτω εικόνα φαίνεται ένα παράδειγμα εξέτασης και αλλαγής της τιμής του καταχωρητή B. Εικόνα 3. Εξέταση και αλλαγή περιεχομένου καταχωρητή Η σειρά με την οποία εμφανίζονται οι καταχωρητές στο display φαίνεται στον πιο κάτω πίνακα. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 23

24 Πεδίο διευθύνσεων του display Πλήρης ονομασία καταχωρητή Καταχωρητής Α Καταχωρητής B Καταχωρητής C Καταχωρητής D Καταχωρητής E Καταχωρητής των FLAGS INTERRUPT BYTE Καταχωρητής H Καταχωρητής L Το περισσότερο σημαντικό byte του 16-bit STACK POINTER Το λιγότερο σημαντικό byte του 16-bit STACK POINTER Το περισσότερο σημαντικό byte του 16-bit PROGRAM COUNTER Το λιγότερο σημαντικό byte του 16-bit PROGRAM COUNTER Πίνακας 7. Σειρά εμφάνισης καταχωρητών. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 24

25 Μερικοί από τους πιο πάνω καταχωρητές χρίζουν ιδιαίτερης επεξήγησης διότι δεν είναι φανερός ο τρόπος με τον οποίο το monitor τους χειρίζεται. Η σημασία των bits του καταχωρητή F (FLAGS) είναι η εξής: Η σημασία των bits του ΙΝΤΕRRUPT BYTE (Ι), αμέσως μετά την εκτέλεση κάποιου προγράμματος είναι η εξής: BIT 7: SID (Serial Input Data). Δείχνει την κατάσταση της ακίδας SID του με8085 BIT 3: ΙΕ (Interrupt Enable). Όταν το bit αυτό έχει την τιμή 1 σημαίνει πως οι διακοπές είναι ενεργοποιημένες. Η ενεργοποίηση αυτού του bit γίνεται με εντολή EI (Enable Interrupt) και η απενεργοποίηση με την εντολή DI. BIT 2-0: M7.5, M6.5, M5.5: Δείχνουν την παρούσα κατάσταση ενεργοποίησης των διακοπών RST7.5, RST6.5, RST5.5. Όταν κάποιο από τα bit αυτά έχει την τιμή 1 σημαίνει πως έχει τεθεί μάσκα στο αντίστοιχο interrupt και εμποδίζεται η εξυπηρέτηση του. Αντίθετα όταν τα bit αυτά έχουν την τιμή 0 και IE bit (BIT 3) έχει την τιμή 1 τότε επιτρέπεται στην CPU να εξυπηρετήσει μια αίτηση διακοπής. Όταν το monitor αλλάζει το περιεχόμενο του INTERRUPT BYTE τότε τα bits αυτού αποκτούν την πιο κάτω σημασία. Τα bits 3-0 έχουν την ίδια σημασία με αυτή που αναλύθηκε πιο πάνω και τροποποιώντας τα μπορούμε να ενεργοποιήσουμε ή να απενεργοποιήσουμε όλες τις διακοπές ή καθεμιά χωριστά. H σημασία των bit 6 και 7 αναλύεται πιο κάτω. BIT 7: SΟD (Serial Output Data). Η κατάσταση του αντιστοιχεί στη στάθμη που τίθεται στην ακίδα εξόδου SOD του με8085 εφόσον το bit 6 έχει την τιμή 1. BIT 6: SOΕ (Serial Output Enable). Όταν το bit αυτό έχει την τιμή 1 τότε το bit 7 εμφανίζεται στην ακίδα Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 25

26 εξόδου SOD του με8085. Όταν έχει την τιμή 0 η έξοδος είναι απενεργοποιημένη Χειροκίνητη διακοπή Το κουμπί «VI» το πληκτρολογίου είναι διασυνδεδεμένο με την ακίδα διακοπής RST 7.5 του με8085. Στην περίπτωση όπου η συγκεκριμένη διακοπή είναι ενεργοποιημένη και πατηθεί το κουμπί «VI» αυτό θα προκαλέσει την εκτέλεση προγράμματος από τη θέση 003CH δηλαδή από την θέση εκείνη του interrupt vector table του με8085 που προβλέπεται για τη διακοπή RST 7.5. Η θέση 003CH όμως βρίσκεται στη ROM όπου φυλάσσεται και το monitor πρόγραμμα το οποίο και ανακατευθύνει την διακοπή αυτή στη διεύθυνση 40E3H. Η θέση αυτή βρίσκεται σε περιοχή όπου υπάρχει RAM μνήμη και είναι δυνατή η ανάπτυξη της δικιάς μας ρουτίνας εξυπηρέτησης της διακοπής. Πρέπει να σημειώσουμε ότι στην περιοχή έχουν δεσμευθεί μόλις 3 θέσεις μνήμης για τον σκοπό αυτό οι οποίες μόλις που επαρκούν για την ανακατεύθυνση της ρουτίνας εξυπηρέτησης διακοπής σε μια άλλη περιοχή μνήμης όπου υπάρχει διαθέσιμη μνήμη RAM (στην περιοχή από 2000H ως 27FFH) Χρήσιμες παρατηρήσεις και λειτουργίες Στις επόμενες γραμμές αναλύονται διάφορες χρήσιμες λειτουργίες του ΜΙΚΡΟΚΙΤ για την ανάπτυξη λογισμικού εφαρμογής με την βοήθεια του, ενώ παράλληλα γίνονται και χρήσιμες παρατηρήσεις πάνω στη λειτουργία του και στη λειτουργία το monitor προγράμματος Λειτουργία RESET Με το πάτημα του πλήκτρου «RS» (RESET) το monitor πρόγραμμα επανεκκινεί από την θέση 0000H και εκτελεί όλες τις διαδικασίες αρχικοποίησης των ολοκληρωμένων 8279, 8155, 8251 αρχικοποιεί τον STACK POINTER (40D0H) και αποθηκεύει την κατάσταση των καταχωρητών του με8085 στη μνήμη RAM (40E6H 40F2H). Η διαδικασία αυτή ονομάζεται και COLD START και είναι ισοδύναμη με την εκτέλεση των εντολών JMP 0000H ή RST Λειτουργία WARM START ως break point Η εντολή RST 1 εκτελεί το monitor πρόγραμμα από το σημείο όπου αποθηκεύεται στη RAM η κατάσταση της CPU, η λειτουργία αυτή ονομάζεται και WARM START. Το γεγονός αυτό είναι εκμεταλλεύσιμο στην εκσφαλματώση του υπό ανάπτυξη λογισμικού εφαρμογής. Έτσι η τοποθέτηση μιας εντολής RST 1, στο σημείο του υπό ανάπτυξη κώδικα μπορούμε που επιθυμούμε να εξετάσουμε την κατάσταση της CPU ( break point ), έχει ως αποτέλεσμα την διακοπή της εκτέλεσης του προγράμματος εφαρμογής της αποθήκευση της κατάστασης της CPU, την στιγμή που συνέβη η διακοπή, και εκτέλεση του monitor προγράμματος. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 26

27 Χρησιμοποιώντας τις εντολές του monitor μπορεί να απεικονιστούν στο display όλες οι τιμές των καταχωρητών και των θέσεων μνήμης που απαιτούνται προκειμένου να γίνει ο έλεγχος του προγράμματος Τερματισμός προγράμματος Αν το πρόγραμμα που αναπτύσσεται δεν μπαίνει σε κάποια ατέρμονη διαδικασία σκόπιμα θα πρέπει να τερματίζεται οπωσδήποτε. Αλλιώς η εκτέλεση του προγράμματος θα συνεχιστεί σε περιοχή μνήμης όπου το περιεχόμενο της είναι απροσδιόριστο με αποτέλεσμα και η συμπεριφορά του ΜΙΚΡΟΚΙΤ να είναι επίσης απροσδιόριστη. Στην περίπτωση όπου το πρόγραμμα εφαρμογής δεν επηρεάζει τη λειτουργία του monitor ο τερματισμός μπορεί να γίνεται με μια εντολή RST 1. Στην αντίθετη περίπτωση θα πρέπει να γίνεται οπωσδήποτε με μια RST 0 ή JMP 0000H. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 2 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 ΜΙΚΡΟΚΙΤ 27

28 Κεφάλαιο 3 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 Virtual Kit Virtual Kit Στα πλαίσια αυτού του κεφαλαίου θα παρουσιάσουμε έναν ιδιαίτερα χρήσιμο και φιλικό στη χρήση εξομοιωτή ο οποίος μπορεί να εξομοιώσει πλήρως την λειτουργία του 8085 αλλά και της εργαστηριακής πλακέτας που χρησιμοποιείται στα πλαίσια του μαθήματος. Τα τελευταία χρόνια η εξομοιώση έχει γίνει αναπόσπαστο κομμάτι της σχεδίασης, ανάπτυξης και ελέγχου οποιουδήποτε μικρού ή μεγάλου συστήματος. Όλο και περισσότερο γίνεται κατανοητό ότι οποιασδήποτε κατηγορίας σύστημα (μηχανολογικό, ηλεκτρολογικό, ηλεκτρονικό, τηλεπικοινωνιακό, κατασκευαστικό κ.α.) προτού καν αρχίσει να υλοποιείται θα έχει εξομοιωθεί σε μεγάλη λεπτομέρεια και σε όσο γίνεται μεγαλύτερο φάσμα πιθανόν λειτουργικών περιπτώσεων. Όπως, λοιπόν, είναι σαφές με τον όρο εξομοιωτή αναφερόμαστε σε ένα λογισμικό (πρόγραμμα) το οποίο μπορεί να εκτελεστεί σε έναν υπολογιστή (ανάλογα και με την πολυπλοκότητα του εξομοιούμενου συστήματος ποικίλουν και οι απαιτήσεις από τον συγκεκριμένο υπολογιστή) και να εξομοιώσει κάθε πιθανή λειτουργία του εκάστοτε συστήματος. Ένα τέτοιο πρόγραμμα παρουσιάζεται εδώ και παρέχεται δωρεάν στους φοιτητές του εργαστηρίου. Τα πλεονεκτήματα που παρέχονται στον φοιτητή μέσα από την χρήση του εν λόγω εξομοιωτή είναι πολλά και ιδιαιτέρως σημαντικά. Εξάσκηση στην ανάπτυξη προγράμματος για τον 8085 και στη λειτουργία της εργαστηριακής πλακέτας χρησιμοποιώντας μονό έναν προσωπικό υπολογιστή. Οι απαιτήσεις του εξομοιωτικού προγράμματος είναι ιδιαιτέρως χαμηλές και άρα μπορεί να εκτελεστεί σε σχεδόν κάθε υπολογιστικό σύστημα αρκεί να τρέχει το λειτουργικό σύστημα windows. Πειραματισμός και εύρεση απαντήσεων σε απορίες που δεν διασαφηνίστηκαν πλήρως στην ώρα του εργαστηρίου ή προέκυψαν μετά από αυτό. Προετοιμασία για εξετάσεις είτε σε επίπεδο προόδου είτε τελικές. Προετοιμασία για την επόμενη άσκηση ώστε η ώρα του εργαστηρίου να είναι πιο εποικοδομητική, ουσιαστική και χρήσιμη. Το συγκεκριμένο πρόγραμμα παρέχει ένα ιδιαίτερα φιλικό γραφικό περιβάλλον, όμοιο σχεδόν με την εργαστηριακή πλακέτα που έχετε γνωρίσει και δεν χρειάζεται καν εγκατάσταση. Στις επόμενες γραμμές γίνεται μια συνοπτική παρουσίαση των δυνατοτήτων και των κυριότερων λειτουργιών του εξομοιωτή. Στην παρακάτω εικόνα φαίνεται το γραφικό περιβάλλον του προγράμματος στο οποίο έχουμε δημιουργήσει μια νέα εργασία στα πλαίσια της οποία έχουμε γράψει ένα πολύ απλό πρόγραμμα αποτελούμενο από εντολές που είναι οικίες στον φοιτητή στο σημείο αυτό. Μια νέα εργασία μπορεί να δημιουργηθεί από το μενού File New ή μια ήδη υπάρχουσα να ανοιχθεί από το μενού File Open με διαδικασίες, κοινές σε όλα τα προγράμματα των Windows. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 3 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 Virtual Kit 28

29 Η εισαγωγή των εντολών ακολουθεί συγκεκριμένη χρωματική επισήμανση (αν το κείμενο είναι εντολή, αριθμητική ποσότητα, σχόλιο κτλ.), ιδιαίτερα χρήσιμη στον γρήγορο εντοπισμό ορθογραφικών και συντακτικών λαθών. Στο δεξί πάνω μέρος το πρόγραμμα μας εμφανίζει τις τιμές που έχουν ανά πάσα στιγμή οι καταχωρητές (γενικού και ειδικό σκοπού) και τα περιεχόμενα κάθε μιας εκ των 256 διευθύνσεων εισόδου/εξόδου. Ακριβώς από κάτω δίνονται τα πλήκτρα ελέγχουν των λειτουργιών του monitor προγράμματος η λειτουργία των οποίων είναι σχεδόν ολόιδια με το Monitor πρόγραμμα της εργαστηριακής πλακέτας. Ακριβώς από κάτω έχουμε την οθόνης με λειτουργία όπως και στην πλακέτα. Δηλαδή στο αριστερό μέρος φαίνεται η διεύθυνση που έχουμε διαλέξει και στο δεξί το περιεχόμενό της σε δεκαεξαδική μορφή. Τέλος ακριβώς από κάτω βλέπουμε το δεκαεξαδικό πληκτρολόγιο όμοιο με αυτό της πλακέτας το οποίο μας δίνει τη δυνατότητα να επιλέγουμε διευθύνσεις ή/και να τροποποιούμε τα περιεχόμενα τους. Αφού εξοικειωθούμε με τα μέρη του γραφικού περιβάλλοντος και γράψουμε τις εντολές του κώδικά μας το επόμενο βήμα είναι να εκτελέσουμε της βασικές λειτουργίες του εξομοιωτικού προγράμματος, αυτές είναι: Δημιουργία του εκτελέσιμου αρχείου: Ως γνωστό οι εντολές που εισάγουμε πρέπει να μεταφραστούν σε δυαδικό κώδικα που καταλαβαίνουν και μπορούν να εκτελέσουν οι μικροεπεξεργαστές. Η λειτουργία αυτή ενεργοποιείται μέσα από το μενού Tools Assemble. Τα πιθανά λάθη φαίνονται στο κάτω αριστερά λευκό πλαίσιο. Στην συγκεκριμένη περίπτωση μεταφραστήκαν 13 γραμμές και δεν υπήρξαν λάθη ή προειδοποιήσεις. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 3 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 Virtual Kit 29

30 Κατέβασμα του εκτελέσιμου στο εικονικό επεξεργαστή και εκτέλεση αυτού: Αφού τελειώσει η μετάφραση χωρίς λάθη μέσα από το μενού Tools Load/Unload OBJ εκτελούμε εικονική μεταφορά του εκτελέσιμου στον επεξεργαστή. Κατόπιν η εκτέλεση γίνεται μέσα από το monitor πρόγραμμα και τα αντίστοιχα πλήκτρα όπως θα γινόταν και στην πραγματική πλακέτα. Φυσικά μετά την εκτέλεση του προγράμματος μπορούμε να εξετάσουμε και να τροποποιήσουμε τα περιεχόμενα της μνήμης όπως θα κάναμε και στην πραγματική πλακέτα του εργαστηρίου. Συγκεκριμένα πρέπει να γίνουν τα ακόλουθα βήματα o Πάτημα του πλήκτρου GO o Εισαγωγή της αρχικής διεύθυνσης του κώδικα, στη συγκεκριμένη περίπτωση 2000 o Πάτημα του πλήκτρου NEXT Εξέταση-Παρακολούθηση Λειτουργίας Προγράμματος (Trace Program): Η συγκεκριμένη λειτουργία ενσωματώνει το περιβάλλον εξομοίωσης με τον κώδικα που έχουμε γράψει και έτσι έχουμε τη δυνατότητα να εκτελέσουμε το πρόγραμμα με βάση τις εντολές που έχουμε γράψει στη γλώσσα assembly. Η λειτουργία αυτή ενεργοποιείται μέσα από το μενού Tools Trace Program. Με την ενεργοποίηση της λειτουργίας εμφανίζεται η βοηθητική μπάρα Trace Bar (φαίνεται στην επόμενη εικόνα) η οποία παρέχει (με ανάλογα κουμπιά) τα διαφορετικά είδη εκτέλεσης του προγράμματος σε σχέση με τον κώδικα που έχουμε γράψει. Παράλληλα παρατηρήστε ότι με ειδική σήμανση (μαύρισμα γραμμής) το πρόγραμμα μας δείχνει ανά πάσα στιγμή ποια είναι η επόμενη προς εκτέλεση εντολή. Για παράδειγμα με διαδοχικά πατήματα του αριστερού πλήκτρου το οποίο αντιστοιχεί στη εντολή προς εντολή εκτέλεση του προγράμματος (και η οποία είναι η πιο χρήσιμη λειτουργία στη παρούσα φάση για τον φοιτητή του εργαστηρίου) παρατηρούμε την εκτέλεση κάθε μιας από τις εντολές assembly που έχουμε γράψει και παράλληλα μπορούμε να έχουμε εποπτεία των δεδομένων όλων των διαθέσιμων καταχωρητών. Όταν η λειτουργία απενεργοποιηθεί (πάλι μέσα από το μενού Tools Trace Program) ο χρήστης μπορεί να εξετάσει και να τροποποιήσει τα δεδομένα της μνήμης όπως θα έκανε και στην πραγματική εργαστηριακή πλακέτα. Περισσότερες λεπτομέρειες για τις δυνατότητες και λειτουργίες του συγκεκριμένου εξομοιωτή μπορείτε να βρείτε στη βοήθεια του προγράμματος (μενού HELP) αλλά και μέσα από ερωτήσεις κατά τη διάρκεια των εργαστηρίων. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 3 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ 8085 Virtual Kit 30

31 Κεφάλαιο 4 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ gnusim gnusim8085 Κατεβάστε σχετικό video χρήσης από την σελίδα του μαθήματος στο eclass ( %AE%CF%81%CE%B9%CE%BF/GNUSim8085.avi) Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 4 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ gnusim

32 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 4 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ gnusim

33 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 4 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ gnusim

34 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 4 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ gnusim

35 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 4 - ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΟΥ gnusim

36 Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ ΑΣΚΗΣΗ 1 Γενικά για τους Μικροϋπολογιστές, Εξοικείωση με το ΚΙΤ, και τα προγράμματα Σε αυτό το εργαστήριο γίνεται μία γνωριμία με τους μικροϋπολογιστές και τα μικροϋπολογιστικά συστήματα, καθώς και με το ΚΙΤ και τα προγράμματα που θα χρησιμοποιηθεί στο εργαστήριο. Γενικά για μικροϋπολογιστικά συστήματα Γνωριμία με ΜικροΚΙΤ Χάρτης μνήμης Διάβασμα γράψιμο μνήμης Διάβασμα γράψιμο καταχωρητών Γνωριμία με το Πρόγραμμα Compiler 8085, gnusim8085, 8085 Virtual Kit Έτοιμο πρόγραμμα - τρέξιμο και κατέβασμα Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 36

37 ΑΣΚΗΣΗ 2 Αποθήκευση σε Μνήμη και Μεταφορά Περιεχομένων Μνήμης Χρησιμοποιώντας τον άμεσο τρόπο μεταφοράς δεδομένων από/προς την μνήμη, γράψτε ένα πρόγραμμα για να φορτώσετε άμεσα τον αριθμό 8A στην θέση μνήμης Ύστερα, χρησιμοποιώντας τον τρόπο μεταφοράς δεδομένων από/προς την μνήμη με χρήση των καταχωρητών διεύθυνσης (καταχωρητές H και L), φορτώστε έμμεσα τον αριθμό ΑC στον καταχωρητή Α και στην συνέχεια να τον μεταφέρετε στην θέση μνήμης 2040 με την χρήση του ζευγαριού καταχωρητών H και L. Στην συνέχεια, με άμεσο τρόπο μεταφοράς δεδομένων από/προς μνήμη, ανταλλάξτε αμοιβαία τα περιεχόμενα των δύο θέσεων μνήμης (2020 και 2040) δηλαδή ότι είχε η θέση μνήμης 2020 να μεταφερθεί στην θέση μνήμης 2040 και ότι είχε η 2040 να μεταφερθεί στην Περάστε το πρόγραμμα στις θέσεις μνήμης από 2000 και πέρα κλπ.). Τρέξτε το πρόγραμμα και διαπιστεύστε την ορθή μεταφορά όλων των δεδομένων (μνήμης και καταχωρητών). ΔΙΑΓΡΑΜΜΑ ΡΟΗΣ Στην συνέχεια δίνεται το διάγραμμα ροής του παραδείγματος ΑΡΧΗ Α 2020Η Α 8AΗ B A Α 2020Η A 2040Η Α ACΗ A 2020Η H 20Η Α B L 40Η A 2040Η Α M End Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 37

38 Ο κώδικας στο ΜΙΚΡΟΚΙΤ ;******************************************************************************* ;LABORATORY EXERCISE 2 ;FILE LAB2.ASM ;******************************************************************************* ORG 2000H ;διεύθυνση της πρώτης εντολής (ψευδοεντολή) START: ;δήλωση αρχής εντολών προγράμματος (ψευδοεντολή) MVI A,08ΑH STA 2020H ΜVI A,0ACH MVI H,20H MVI L,40H ;μεταφορά του 8ΑH στον καταχωρητή Α ;αποθήκευση των περιεχομένων του Α στην θέση μνήμης 2020Η ;μεταφορά του ACH στον καταχωρητή Α ;μεταφορά του 20H στον καταχωρητή Η ;μεταφορά του 50H στον καταχωρητή L ;εναλλακτικός τρόπος φόρτωσης σε ζευγάρι καταχωρητών - LXI H, 2040H - MOV M,A ;αποθήκευση των περιεχομένων του A στην θέση μνήμης ;που ορίζεται από HL LDA 2020H MOV B,A ; αποθήκευση των περιεχομένων της θέσης μνήμης 2020H στον A ;αντιγραφή των περιεχομένων του καταχωρητή Α ;στον καταχωρητή Β για να μην χαθούν από την ;επόμενη εντολη [ΤΑ ΠΕΡΙΕΧΟΜΕΝΑ ΤΟΥ ΚΑΤΑΧΩΡΗΤΗΣ Β ΕΙΝΑΙ ΙΔΙΑ ΜΕ ;ΑΥΤΑ ΤΗΣ ΘΕΣΗΣ ΜΝΗΜΗΣ 2020Η] LDA 2040H ;αποθήκευση των περιεχομένων της θέσης μνήμης 2040H ;στον A [ΤΑ ΠΕΡΙΕΧΟΜΕΝΑ ΤΟΥ ΚΑΤΑΧΩΡΗΤΗ A ΜΕΤΑ ΑΠΟ ΑΥΤΗ ;ΤΗΝ ΕΝΤΟΛΗ ΕΙΝΑΙ ΙΔΙΑ ΜΕ ΑΥΤΑ ΤΗΣ ΘΕΣΗΣ ΜΝΗΜΗΣ 2040Η] STA 2020H MOV A, B STA 2040Η ;αποθήκευση των περιεχομένων του Α στην θέση μνήμης 2020H ;αντιγραφή των περιεχομένων του καταχωρητή Β στον καταχωρητή A ;αποθήκευση των περιεχομένων του Α στην θέση μνήμης 2040H RST 1 END ;δήλωση τέλους εντολών προγράμματος (ψευδοεντολή) ;******************************************************************************* Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 38

39 Ο κώδικας στο gnusim8085 ;******************************************************************************* ;LABORATORY EXERCISE 2 ;FILE LAB2.ASM ;******************************************************************************* MVI A,8AH STA 2020H MVI A,0ACH MVI H,20H MVI L,40H ;μεταφορά του 8ΑH στον καταχωρητή Α ;αποθήκευση των περιεχομένων του Α στην θέση μνήμης 2020Η ;μεταφορά του ACH στον καταχωρητή Α ;μεταφορά του 20H στον καταχωρητή Η ;μεταφορά του 40H στον καταχωρητή L ;εναλλακτικός τρόπος φόρτωσης σε ζευγάρι καταχωρητών-lxi H, 2040H MOV M,A ;αποθήκευση των περιεχομένων του A στην θέση μνήμης ;που ορίζεται από HL LDA 2020H MOV B,A ; αποθήκευση των περιεχομένων της θέσης μνήμης 2020H στον A ;αντιγραφή των περιεχομένων του καταχωρητή Α ;στον καταχωρητή Β για να μην χαθούν από την ;επόμενη εντολη [ΤΑ ΠΕΡΙΕΧΟΜΕΝΑ ΤΟΥ ΚΑΤΑΧΩΡΗΤΗΣ Β ΕΙΝΑΙ ΙΔΙΑ ΜΕ ;ΑΥΤΑ ΤΗΣ ΘΕΣΗΣ ΜΝΗΜΗΣ 2020Η] LDA 2040H ;αποθήκευση των περιεχομένων της θέσης μνήμης 2040H ;στον A [ΤΑ ΠΕΡΙΕΧΟΜΕΝΑ ΤΟΥ ΚΑΤΑΧΩΡΗΤΗ A ΜΕΤΑ ΑΠΟ ΑΥΤΗ ;ΤΗΝ ΕΝΤΟΛΗ ΕΙΝΑΙ ΙΔΙΑ ΜΕ ΑΥΤΑ ΤΗΣ ΘΕΣΗΣ ΜΝΗΜΗΣ 2040Η] STA 2020H MOV A,B STA 2040H ;αποθήκευση των περιεχομένων του Α στην θέση μνήμης 2020H ;αντιγραφή των περιεχομένων του καταχωρητή Β στον καταχωρητή A ;αποθήκευση των περιεχομένων του Α στην θέση μνήμης 2040H HLT Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 39

40 ΑΣΚΗΣΗ 3 Αριθμητικές πράξεις (Πρόσθεση δεκαεξαδικών 8- bit (διψήφιων) bit (τετραψήφιων) αριθμών) και λογικές πράξεις ΟΝΟΜΑΣΙΑ AND A B ΣΥΜΒΟΛΟ ΠΥΛΗΣ Z ΣΧΕΣΗ ΑΛΓΕΒΡΑΣ BOOLE Z=A B ΠΙΝΑΚΑΣ ΑΛΗΘΕΙΑΣ A B Z OR A B Z Z=A+B A B Z XOR A B Z Z=A + B A B Z NOT A Z Z=A = A A 0 1 Z 1 0 Η σημασία των bits του καταχωρητή F (FLAGS) είναι η εξής: Παράδειγμα 1 Πρόσθεση 8bit αριθμών και λογικές πράξεις Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 40

41 Γράψτε ένα πρόγραμμα για να προσθέσετε άμεσα τους αριθμούς 3AH & 08H. Τοποθετήστε το άθροισμά τους στην θέση μνήμης 2030H. Στην συνέχεια, πραγματοποιήστε λογική πράξη XOR του αποτελέσματος της πρόσθεσης με τον αριθμό 4FΗ και αποθηκευστε το αποτέλεσμα στον C. Τέλος, η τιμή του C να γίνει λογική πράξη OR με το περιεχόμενο της θέσης μνήμης 2031Η. Το τελικό αποτέλεσμα να είναι αποθηκευμένο στον καταχωρητή Α. Θεωρήστε ότι τα περιεχόμενα της 2031Η δίνονται από το χρήστη μέσω του μικροκιτ και είναι γνωστά. Υπολογίστε το άθροισμα μόνοι σας και επιβεβαιώστε την σωστή λειτουργία του προγράμματος. ΔΙΑΓΡΑΜΜΑ ΡΟΗΣ Στην συνέχεια δίνεται το διάγραμμα ροής του παραδείγματος ΑΡΧΗ Α 3AΗ Α 2031Η B 08Η Α A OR C Α A+B End Α 2030Η Α 2030Η Α A XOR 4FΗ C A Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 41

42 Ο κώδικας στο ΜΙΚΡΟΚΙΤ ;******************************************************************************* ;LABORATORY EXERCISE 3Α ;FILE LAB3Α.ASM ;******************************************************************************* ORG 2000H ;διεύθυνση της πρώτης εντολής (ψευδοεντολή) START: MVI A,03AH MVI B,08H ADD B STA 2030H LDA 2030H ;δήλωση αρχής εντολών προγράμματος (ψευδοεντολή) ;μεταφορά του 3AH στον καταχωρητή Α ;μεταφορά του 08H στον καταχωρητή B ;A = A + B ;αποθήκευση του αποτελέσματος στην θέση μνήμης 2030H ;μεταφορά στον καταχωρητή Α του περιεχομένου της θέσης μνήμης 2030H ;[H παραπάνω εντολή δεν είναι απαραίτητη. Γιατι;] XRI 4FH ;Λογική πράξη XOR του περιεχομένου του Α ;με τον αριθμό 4F και αποθήκευση στον Α MOV C,A LDA 2031H ORA C ;αντιγραφή των περιεχομένων του Α στον C ;μεταφορά στον καταχωρητή Α του περιεχομένου της θέσης μνήμης 2031H ;πράξη OR του περιεχομένου του Α με τα περιεχόμενα ;του καταχωρητή C και αποθήκευση στον Α RST 1 END ;δήλωση τέλους εντολών προγράμματος (ψευδοεντολή) ;******************************************************************************* Ο κώδικας στο gnusim8085 ;******************************************************************************* ;LABORATORY EXERCISE 3Α ;FILE LAB3Α.ASM ;******************************************************************************* Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 42

43 MVI A,3AH ;μεταφορά του 3AH στον καταχωρητή Α MVI B,08H ADD B STA 2030H LDA 2030H ;μεταφορά του 08H στον καταχωρητή B ;A = A + B ;αποθήκευση του αποτελέσματος στην θέση μνήμης 2030H ;μεταφορά στον καταχωρητή Α του περιεχομένου της θέσης μνήμης 2030H ;[H παραπάνω εντολή δεν είναι απαραίτητη. Γιατι;] XRI 4FH ;Λογική πράξη XOR του περιεχομένου του Α ;με τον αριθμό 4F και αποθήκευση στον Α MOV C,A LDA 2031H ORA C ;αντιγραφή των περιεχομένων του Α στον C ;μεταφορά στον καταχωρητή Α του περιεχομένου της θέσης μνήμης 2031H ;πράξη OR του περιεχομένου του Α με τα περιεχόμενα του καταχωρητή C και αποθήκευση στον Α HLT Παράδειγμα 2 Πρόσθεση 16bit αριθμών και αφαίρεση Γράψτε ένα πρόγραμμα για να αποθηκεύσετε τον 16-bit αριθμό F1Α2H στις θέσεις μνήμης 2030H, 2031H. Στη συνέχεια να προσθέσετε στον αριθμό που αποθηκεύσετε τον 16-bit αριθμό 1284H και τοποθετήστε το αποτέλεσμα στις θέσεις μνήμης 2040H, 2041H. Τέλος, από το περιεχόμενο της θέσης μνήμης 2040Η να αφαιρέσετε τον αριθμό 01Η και να αποθηκευσετε το αποτέλεσμα στη θέση μνήμης 2042Η. Υπολογίστε τα αποτελέσματα μόνοι σας και δείτε στον flag register αν δημιουργήθηκε κρατούμενο - δανεικό. Αιτιολογείστε την απάντηση σας. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 43

44 ΔΙΑΓΡΑΜΜΑ ΡΟΗΣ Στην συνέχεια δίνεται το διάγραμμα ροής του παραδείγματος ΑΡΧΗ B 84Η M {H,L} 2030Η A A + B A A2Η A 2040H M A Α 2031H M {H,L} 2031Η B 12H Α F1Η Α A + B + CY M A A 2041H A A + 00H A 2040H Α 2030H A A 01H A 2042H End Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 44

45 Ο κώδικας στο ΜΙΚΡΟΚΙΤ ;******************************************************************************* ;LABORATORY EXERCISE 3Β ;FILE LAB3Β.ASM ;******************************************************************************* ORG 2000H ;διεύθυνση της πρώτης εντολής (ψευδοεντολή) START: LXI H,2030H MVI A,0A2H MOV M,A LXI H,2031H MVI A,0F1H MOV M, A ADI 00H ;δήλωση αρχής εντολών προγράμματος (ψευδοεντολή) ;ορισμός του M (HL) ως δείκτης στην 2030H ;μεταφορά του A2H στον καταχωρητή Α ;μεταφορά του Α στην θέση μνήμης που δείχνει ο H-L ;ορισμός του M (HL) ως δείκτης στην 2031H ;μεταφορά του F1H στον καταχωρητή Α ;μεταφορά του Α στην θέση μνήμης που δείχνει ο H-L ;μηδενισμός του flag carry (η άμεση πρόσθεση με το 00Η ;μηδενίζει το Carry), Γιατί δεν είναι απαραίτητη να μπει????? LDA 2030H MVI B,84H ADD B ;μεταφορά στον καταχωρητή Α του περιεχομένου της θέσης μνήμης 2030H ;μεταφορά του 84H στον καταχωρητή B ;προσθεση των περιεχομένων του Α και του Β και ;αποθήκευση του αποτελέσματος στο Α ; (A = A + B) STA 2040H LDA 2031H MVI B,12H ADC B STA 2041H LDA 2040H SUI 01H ;αποθήκευση του A (αποτελέσματος) στην θέση μνήμης 2040H ;μεταφορά στον καταχωρητή Α του περιεχομένου της θέσης μνήμης 2031H ;μεταφορά του 12H στον καταχωρητή B ;A = A + B + Carry ;αποθήκευση του A (αποτελέσματος) στην θέση μνήμης 2041H ;μεταφορά στον καταχωρητή Α του περιεχομένου της θέσης μνήμης 2040 Η ;αφαιρεση από τον Α του αριθμού 3ΑΗ και αποθήκευση του ;αποτελέσματος στον Α (Α=Α-01Η) STA 2042H ;αποθήκευση του A (αποτελέσματος) στην θέση μνήμης 2042H Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 45

46 RST 1 END ;δήλωση τέλους εντολών προγράμματος (ψευδοεντολή) ;******************************************************************************* Ο κώδικας στο gnusim8085 ;******************************************************************************* ;LABORATORY EXERCISE 3Β ;FILE LAB3Β.ASM ;******************************************************************************* LXI H,2030H MVI A,0A2H MOV M,A LXI H,2031H MVI A,0F1H MOV M,A ADI 00H ;ορισμός του M (HL) ως δείκτης στην 2030H ;μεταφορά του A2H στον καταχωρητή Α ;μεταφορά του Α στην θέση μνήμης που δείχνει ο H-L ;ορισμός του M (HL) ως δείκτης στην 2031H ;μεταφορά του F1H στον καταχωρητή Α ;μεταφορά του Α στην θέση μνήμης που δείχνει ο H-L ;μηδενισμός του flag carry (η άμεση πρόσθεση με το 00Η ;μηδενίζει το Carry), Γιατί δεν είναι απαραίτητη να μπει????? LDA 2030H MVI B,84H ADD B ;μεταφορά στον καταχωρητή Α του περιεχομένου της θέσης μνήμης 2030H ;μεταφορά του 84H στον καταχωρητή B ;προσθεση των περιεχομένων του Α και του Β και ;αποθήκευση του αποτελέσματος στο Α (A = A + B) STA 2040H LDA 2031H MVI B,12H ADC B STA 2041H LDA 2040H SUI 01H ;αποθήκευση του A (αποτελέσματος) στην θέση μνήμης 2040H ;μεταφορά στον καταχωρητή Α του περιεχομένου της θέσης μνήμης 2031H ;μεταφορά του 12H στον καταχωρητή B ;A = A + B + C ;αποθήκευση του A (αποτελέσματος) στην θέση μνήμης 2041H ;μεταφορά στον καταχωρητή Α του περιεχομένου της θέσης μνήμης 2040Η ;αφαιρεση από τον Α του αριθμού 3ΑΗ και αποθήκευση του Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 46

47 ;αποτελέσματος στον Α (Α=Α-3ΑΗ) STA 2042H ;αποθήκευση του A (αποτελέσματος) στην θέση μνήμης 2042H HLT Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 47

48 ΑΣΚΗΣΗ 4 Βρόχοι Εντολές INC/DEC & CMP/CPI, JMP/JNZ/JZ/JNC/JC Διαγράμματα Ροής Οι τρόποι σύγκρισης δύο αριθμητικών ποσοτήτων και οι διακλαδώσεις ή βρόγχοι που, συνήθως, εκτελούνται ανάλογα με το αποτέλεσμα της σύγκρισης αποτελούν σημαντικό κομμάτι των υποστηριζόμενων προγραμματιστικών τεχνικών και πολλές φορές προκαλούν σύγχυση μέχρι να κατανοηθούν πλήρως. Δύο βασικά χαρακτηριστικά που διέπουν όλες τις εντολές συγκρίσεις είναι ότι 1) το πρώτο όρισμα είναι πάντα ο accumulator και 2) η σύγκριση είναι ουσιαστικά μια αφαίρεση του δεύτερου ορίσματος από το πρώτο (που πάντα είναι ο accumulator) το αποτέλεσμα της οποίας ΔΕΝ αποθηκεύεται πουθενά. Αυτές οι εντολές συνοπτικά είναι (για περισσότερες λεπτομέρειες μπορείτε να ανατρέξετε στο Instruction Set παρατίθεται στο τέλος του φυλλαδίου): που CMP R: Το περιεχόμενο του καταχωρητή R συγκρίνεται με αυτό του A με το να αφαιρείται από τον A. CMP M: Το περιεχόμενο της θέσης μνήμης M συγκρίνεται με αυτό του A με το να αφαιρείται από τον A. CPI byte: Η απόλυτη αριθμητική ποσότητα byte συγκρίνεται με το περιεχόμενο του A με το να αφαιρείται από τον A. Έστω ότι συγκρίνουμε το περιεχόμενο του A με αυτού του B μέσω της εντολής CMP B, ισχύουν τα εξής. Αποτέλεσμα Σύγκρισης Τιμή του bit ZERO Τιμή του bit CARRY A=B Z=1 CY=0 A<B Z=0 CY=1 A>B Z=0 CY=0 JNZ: θα εκτελέσει την εντολή JMP αν από την προηγούμενη σύγκριση το Z=0 JZ: θα εκτελέσει την εντολή JMP αν από την προηγούμενη σύγκριση το Z=1 JNC: θα εκτελέσει την εντολή JMP αν από την προηγούμενη σύγκριση το CY=0 JC: θα εκτελέσει την εντολή JMP αν από την προηγούμενη σύγκριση το CY=1 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 48

49 ΠΑΡΑΔΕΙΓΜΑ Γράψτε ένα πρόγραμμα στο οποίο θα γίνεται μεταφορά των περιεχομένου των θέσεων μνήμης από 2370Η εώς και 237CΗ στις θέσεις από 2470Η έως και 247CΗ. Επιβεβαιώστε την εγγραφή στις συγκεκριμένες θέσεις μνήμης. Υπόδειξη: Αρχικά να γίνει διάγραμμα ροής. Να χρησιμοποιήστε ως μετρητή τον καταχωρητή A. Διάγραμμα Ροής ΑΡΧΗ (HL) (DE) A 2370H 2470H 00H B M (HL) (DE) (HL) M (HL) B (DE) (HL) OXI (HL) (HL) +1 (DE) (DE) +1 A A + 1 A == 0DH? NAI ΤΕΛΟΣ Ο κώδικας στο ΜΙΚΡΟΚΙΤ ;******************************************************************************* ;LABORATORY EXERCISE 4 ;FILE LAB4.ASM ;******************************************************************************* ORG 2000H ;διεύθυνση της πρώτης εντολής (ψευδοεντολή) START: LXI H,2370H LXI D,2470H MVI A,00H ;δήλωση αρχής εντολών προγράμματος (ψευδοεντολή) ;οι ΗL δείχνουν στην διεύθυνση μνήμης 2370Η ;οι DE δείχνουν στην διεύθυνση μνήμης 2470Η ;Αρχικοποίηση του A στο 0 για χρήση του ως μετρητή. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 49

50 LOOP1: MOV B,M ;ετικέτα αρχής βρόχου ;μεταφορά του περιεχομένου μνήμης που δείχνουν οι HL στον B XCHG MOV M,B XCHG INX H INX D INR A CPI 0DH JNZ LOOP1 ;μεταφορά περιεχομένου B στη διεύθυνση μνήμης που δείχνουν οι HL. ;ανταλλαγή των H και L με D και E ;αύξηση του ζεύγους καταχωρητών HL. ;αύξηση του ζεύγους καταχωρητών DE. ;αύξηση του μετρητή ;σύγκριση μετρητή (Α) με το πλήθος των επαναλήψεων ;τέλος βρόχου RST 1 END ;δήλωση τέλους εντολών προγράμματος (ψευδοεντολή) ;******************************************************************************* Ο κώδικας στο gnusim8085 ;******************************************************************************* ;LABORATORY EXERCISE 4 ;FILE LAB4.ASM ;******************************************************************************* LXI H,2370H LXI D,2470H MVI A,00H LOOP1: MOV B,M ;οι ΗL δείχνουν στην διεύθυνση μνήμης 2370Η ;οι DE δείχνουν στην διεύθυνση μνήμης 2470Η ;Αρχικοποίηση του A στο 0 για χρήση του ως μετρητή. ;μεταφορά του περιεχομένου μνήμης που δείχνουν οι HL στον B XCHG MOV M,B XCHG INX H INX D ;μεταφορά περιεχομένου B στη διεύθυνση μνήμης που δείχνουν οι HL. ;ανταλλαγή των H και L με D και E ;αύξηση του ζεύγους καταχωρητών HL. ;αύξηση του ζεύγους καταχωρητών DE. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 50

51 INR A ;αύξηση του μετρητή CPI 0DH JNZ LOOP1 ;σύγκριση μετρητή (Α) με το πλήθος των επαναλήψεων ;τέλος βρόχου HLT Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 51

52 ΑΣΚΗΣΗ 5 Συγκρίσεις, Διακλαδώσεις & Βρόχοι - Διαγράμματα Ροής Οι τρόποι σύγκρισης δύο αριθμητικών ποσοτήτων και οι διακλαδώσεις ή βρόγχοι που, συνήθως, εκτελούνται ανάλογα με το αποτέλεσμα της σύγκρισης αποτελούν σημαντικό κομμάτι των υποστηριζόμενων προγραμματιστικών τεχνικών και πολλές φορές προκαλούν σύγχυση μέχρι να κατανοηθούν πλήρως. Έτσι λοιπόν το πρώτο βήμα είναι να κατανοήσουμε τους τρόπους (εντολές με άλλα λόγια) με τους οποίους μπορούμε να συγκρίνουμε δύο ποσότητες. Δύο βασικά χαρακτηριστικά που διέπουν όλες τις εντολές συγκρίσεις είναι ότι 1) το πρώτο όρισμα είναι πάντα ο accumulator και 2) η σύγκριση είναι ουσιαστικά μια αφαίρεση του δεύτερου ορίσματος από το πρώτο (που πάντα είναι ο accumulator) το αποτέλεσμα της οποίας ΔΕΝ αποθηκεύεται πουθενά. Αυτές οι εντολές συνοπτικά είναι (για περισσότερες λεπτομέρειες μπορείτε να ανατρέξετε στο Instruction Set παρατίθεται στο τέλος του φυλλαδίου): που CMP r: Το περιεχόμενο του καταχωρητή r συγκρίνεται με αυτό του A με το να αφαιρείται από τον A. CMP M: Το περιεχόμενο της θέσης μνήμης M συγκρίνεται με αυτό του A με το να αφαιρείται από τον A. CPI byte: Η απόλυτη αριθμητική ποσότητα byte συγκρίνεται με το περιεχόμενο του A με το να αφαιρείται από τον A. Το δεύτερο βήμα είναι να κατανοήσουμε πως ή που αποτυπώνεται το αποτέλεσμα της σύγκρισης (ουσιαστικά της αφαίρεσης) αφού το αποτέλεσμα αυτό καθαυτό δεν φυλάσσεται πουθενά. Η απάντηση είναι ότι κάθε πιθανό αποτέλεσμα αποτυπώνεται και μπορεί να εξαχθεί από συνδυαστική εξέταση των σημαιών Z και CY σύμφωνα με της εξής λογική. Έστω ότι συγκρίνουμε το περιεχόμενο του A με αυτού του B μέσω της εντολής CMP B, ισχύουν τα εξής. Αποτέλεσμα Σύγκρισης Τιμή του bit ZERO Τιμή του bit CARRY A=B Z=1 CY=0 A<B Z=0 CY=1 A>B Z=0 CY=0 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 52

53 Το τρίτο βήμα είναι πως μπορούμε να χρησιμοποιήσουμε τα ZERO και CARRY bit για να διακλαδωθεί η εκτέλεση του προγράμματος ανάλογα με το αποτέλεσμα της σύγκρισης. Η απάντηση είναι μέσω των εντολών JMP που λαμβάνουν υπόψη τη τιμή των Z και CY bit. Αυτές είναι: JNZ: θα εκτελέσει την εντολή JMP αν από την προηγούμενη σύγκριση το Z=0 JZ: θα εκτελέσει την εντολή JMP αν από την προηγούμενη σύγκριση το Z=1 JNC: θα εκτελέσει την εντολή JMP αν από την προηγούμενη σύγκριση το CY=0 JC: θα εκτελέσει την εντολή JMP αν από την προηγούμενη σύγκριση το CY=1 Έχοντας κατανοήσει τα παραπάνω βήματα μπορούμε να αντιμετωπίσουμε κάθε πρόβλημα που απαιτεί τη χρήση σύγκρισης και διακλάδωσης. Ένα τέτοιο παράδειγμα ακολουθεί παρακάτω. Παράδειγμα Να γραφεί πρόγραμμα το οποίο αρχικά να αποθηκεύει δύο τυχαίους αριθμούς στις θέσεις μνήμης 2320Η και 2321Η. Στην συνέχεια να τοποθετεί τον μεγαλύτερο στην θέση μνήμης 2322Η και τον μικρότερο στην 2323Η. Στην περίπτωση όμως που είναι ίσοι οι δύο αριθμοί, να το τοποθετεί το 00Η στην θέση μνήμης 2322Η και στη θέση μνήμης 2323Η τον αριθμό. Τρέξτε το πρόγραμμα δύο φορές, μια με άνισους αριθμούς για να επιβεβαιώσετε την εύρεση του μέγιστου / ελάχιστου και μια με ίσους για να επιβεβαιώσετε την λειτουργία του στην ισότητα. Υπόδειξη: Να γράψετε το διάγραμμα ροής. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 53

54 Διάγραμμα Ροής Ο κώδικας στο ΜΙΚΡΟΚΙΤ ;******************************************************************************* ;LABORATORY EXERCISE 5 ;FILE LAB5.ASM ;******************************************************************************* ORG 2000H ;διεύθυνση της πρώτης εντολής (ψευδοεντολή) START: ;δήλωση αρχής εντολών προγράμματος (ψευδοεντολή) Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 54

55 LDA 2320H LXI H,2321H CMP M JZ LABEL1 JC LABEL2 STA 2322H MOV A,M STA 2323Η ;μεταφορά του περιεχομένου της μνήμης 2320Η στον Α ;άμεση φόρτωση του 2321Η στον Η,L ;Σύγκρισή του Α με ότι περιέχει η μνήμη που δείχνει ο Η,L ;σε ισότητα το Zero flag γίνετε 1. Μεταφορά στην LABEL1 ;διακλάδωση στην LABEL2 όταν ο αριθμός στην 2321H είναι μεγαλύτερος ;αποθήκευση του Α στην διεύθυνση μνήμης 2322Η ;μεταφορά δεδομένου από την [Η,L] μνήμη στον Α ;αποθήκευση του Α στην διεύθυνση μνήμης 2323Η JMP LABEL_END ;διακλάδωση στο LABELEND LABEL1: STA 2323H MVI A,00H STA 2322H JMP LABELEND LABEL2: STA 2323H MOV A,M STA 2322H ;εκτελείται όταν οι δύο αριθμοί είναι ίσοι ;αποθήκευση του Α στην διεύθυνση μνήμης 2323Η ;Φόρτωμα του Α με 00Η τιμή ;αποθήκευση του Α στην διεύθυνση μνήμης 2322Η ;διακλάδωση στο LABEL_END ;εκτελείται όταν ο αριθμός στην 2321Η είναι μεγαλύτερος ;αποθήκευση του Α στην διεύθυνση μνήμης 2323Η ;μεταφορά δεδομένου από την [Η,L] μνήμη στον Α ;αποθήκευση του Α στην διεύθυνση μνήμης 2322Η LABELEND: ; RST 1 END ;δήλωση τέλους εντολών προγράμματος (ψευδοεντολή) ;******************************************************************************* Ο κώδικας στο gnusim8085 ;******************************************************************************* ;LABORATORY EXERCISE 5 ;FILE LAB5.ASM ;******************************************************************************* LDA 2320H Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 55

56 LXI H,2321H ;άμεση φόρτωση του 2321Η στον Η,L CMP M JZ LABEL1 JC LABEL2 STA 2322H MOV A,M STA 2323H JMP LABELEND LABEL1: STA 2323H MVI A,00H STA 2322H JMP LABELEND LABEL2: STA 2323H MOV A,M STA 2322H ;Σύγκρισή του Α με ότι περιέχει η μνήμη που δείχνει ο Η,L ;σε ισότητα το Zero flag γίνετε 1. Μεταφορά στην LABEL1 ;διακλάδωση στην LABEL2 όταν ο αριθμός στην 2321H είναι μεγαλύτερος ;αποθήκευση του Α στην διεύθυνση μνήμης 2322Η ;μεταφορά δεδομένου από την [Η,L] μνήμη στον Α ;αποθήκευση του Α στην διεύθυνση μνήμης 2323Η ;διακλάδωση στο LABEL_END ;αποθήκευση του Α στην διεύθυνση μνήμης 2323Η ;Φόρτωμα του Α με 00Η τιμή ;αποθήκευση του Α στην διεύθυνση μνήμης 2322Η ;διακλάδωση στο LABELEND ;αποθήκευση του Α στην διεύθυνση μνήμης 2323Η ;μεταφορά δεδομένου από την [Η,L] μνήμη στον Α ;αποθήκευση του Α στην διεύθυνση μνήμης 2322Η LABELEND: HLT Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 56

57 ΑΣΚΗΣΗ 6 Αριθμητικές Πράξεις Πολλαπλασιασμός Πολλοί 8-bit ή RISC μικροεπεξεργαστές και μικροελεγκτές, όπως και ο 8085, δεν περιλαμβάνουν στο σετ εντολών τους πολύπλοκές αριθμητικές πράξεις, όπως ο πολλαπλασιασμός και η διαίρεση. Σε αυτήν την άσκηση θα δείξουμε έναν από τους τρόπους με τους οποίους μπορούμε να εκτελέσουμε αυτές τις πράξεις μεταξύ 8-bit δυαδικών αριθμών. Η Πράξη του Πολλαπλασιασμού μέσω Διαδοχικών Προσθέσεων Η πράξη του πολλαπλασιασμού δεν είναι τίποτα άλλο από την διαδοχική πρόσθεση του πολλαπλασιαστέου τόσες φορές όσες είναι η τιμή του πολλαπλασιαστή. Για χάριν απλότητας θα θεωρήσουμε ότι πρόκειται για θετικούς (απρόσημους) αριθμούς και θα θεωρήσουμε ότι το αποτέλεσμα του πολλαπλασιασμού (γινόμενο) μπορεί να αποθηκευτεί σε πεδίο 8-bits. Διάγραμμα Ροής Το παρακάτω διάγραμμα ροής δείχνει την διαδικασία της πράξης του πολλαπλασιασμού δύο 8-bits αριθμών. Οι αριθμοί που θέλουμε να πολλαπλασιάσουμε είναι οι 23H και 06H, ενώ το αποτέλεσμα του πολλαπλασιασμού αποθηκεύεται στην θέση μνήμης 2300H. ΑΡΧΗ A 23H B A C 06H C C -1 A A + B C C -1 NO C == 00H? YES A 2300H ΤΕΛΟΣ Στην συνέχεια δίνεται ο κώδικας που υλοποιεί την πράξη του πολλαπλασιασμού. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 57

58 Ο κώδικας στο ΜΙΚΡΟΚΙΤ ;**************************************************************** ;LABORATORY EXERCISE 6 ;FILE LAB6.ASM ;**************************************************************** ORG 2000H ;διεύθυνση της πρώτης εντολής START: ;δήλωση αρχής εντολών προγράμματος MVI A,23H MOV B,A MVI C,06H DCR C LABEL: ADD B DCR C JNZ LABEL STA 2300H RST 1 END ;Φόρτωσε στον Α τον πολλαπλασιαστέο ;Μετέφερε τον στον Β ;Φόρτωσε στον C τον πολλαπλασιαστή ;μείωση του μετρητή ;ετικέτα αρχής βρόχου ;εκτέλεση της διαδοχικής πρόσθεσης ;μείωση του μετρητή ;τέλος βρόχου ;Μετέφερε το αποτέλεσμα την θέση μνήμης 2300H ;Επιστροφή στον monitor πρόγραμμα ;δήλωση τέλους εντολών προγράμματος ;**************************************************************** Ο κώδικας στο gnusim8085 ;**************************************************************** ;LABORATORY EXERCISE 6 ;FILE LAB6.ASM ;**************************************************************** MVI A,23H MOV B,A ;Φόρτωσε στον Α τον πολλαπλασιαστέο ;Μετέφερε τον στον Β Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 58

59 MVI C,06H ;Φόρτωσε στον C τον πολλαπλασιαστή DCR C LABEL: ADD B DCR C JNZ LABEL STA 2300H ;μείωση του μετρητή ;εκτέλεση της διαδοχικής πρόσθεσης ;μείωση του μετρητή ;τέλος βρόχου ;Μετέφερε το αποτέλεσμα την θέση μνήμης 2300H HLT Άλλος τρόπος επίλυσης της άσκησης MVI A,23H MOV B,A ;Φόρτωσε στον Α τον πολλαπλασιαστέο ;Μετέφερε τον στον Β MVI C,00H LABEL: ADD B ;εκτέλεση της διαδοχικής πρόσθεσης MOV D, A INR C ;αύξηση του μετρητή MOV A,C CPI 05H MOV A,D JNZ LABEL STA 2300H ;τέλος βρόχου ;Μετέφερε το αποτέλεσμα την θέση μνήμης 2300H HLT Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 59

60 ΑΣΚΗΣΗ 7 Στοίβα και Εύρεση Μέγιστου Στοίβα Στην εικόνα που ακολουθεί βλέπετε το λογικό διάγραμμα της οργάνωσης της μνήμης σχεδόν όλων των υπολογιστικών συστημάτων. Εκτός από τα τμήματα του κώδικα και των δεδομένων υπάρχει και το τμήμα της στοίβας (stack). Η στοίβα επομένως δεν είναι τίποτα άλλο από ένα κομμάτι στην κύρια μνήμη (τύπου RAM) το οποίο όμως λειτουργεί με ένα ξεχωριστό τρόπο. Η στοίβα λειτουργεί με την αρχή LIFO (Last-In-First-Out) και είναι ένα κομμάτι μνήμης που έχει μόνο ένα σημείο εισόδου/εξόδου. Τέλος Μνήμης Στοίβα (stack) Ελεύθερη Μνήμη Δεδομένα/Σωρός (heap) Αρχή Μνήμης Κώδικας (code) Οργάνωση της μνήμης ενός υπολογιστικού συστήματος Στο επεξεργαστή 8085 ο stack λειτουργεί με ζευγάρια καταχωρητών (με άλλα λόγια ο stack στον 8085 είναι 16-bits). Οι δύο βασικές εντολές χειρισμού του stack στον 8085 είναι: PUSH rp: το περιεχόμενο του ζεύγους καταχωρητών rp μεταφέρεται στην στοίβα. POP rp: το περιεχόμενο των κορυφαίων θέσεων της στοίβας αποθηκεύεται στο ζεύγος καταχωρητών rp. Σημείωση: rp (register pair ή ζευγάρι καταχωρητών) είναι ένα από τα ζευγάρια των καταχωρητών BC, DE, HL (τα ζευγάρια καταχωρητών σηματοδοτούνται πάντα από το όνομα του πρώτου καταχωρητή του ζευγαριού, δηλαδή B, D και H αντίστοιχα). Επίσης, αν το όρισμα της εντολής είναι το PSW (Processor Status Word) αναφερόμαστε στον καταχωρητή Α (accumulator) μαζί με καταχωρητή F (flag register). Να γραφεί πρόγραμμα το οποίο να βρίσκει τον μέγιστο αριθμό μεταξύ των περιεχομένων των θέσεων μνήμης 2100H έως 210FH και τοποθετήστε τον στην θέση μνήμης 2150Η. Ο μέγιστος αριθμός φαίνεται στο Data Field του Display. DISPLAY: Η υπορουτίνα DISPLAY εμφανίζει το περιεχόμενο του Καταχωρητή Α στο data field του display. Προσοχή, η συγκεκριμένη υπορουτίνα καταστρέφει όλους τους καταχωρητές, συμπεριλαμβανομένου και του καταχωρητή σημαιών. Δηλώστε την μόνο με το όνομα της και μόνο με την εντολή RET (DISPLAY: RET). Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 60

61 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 61

62 Σχεδιάζουμε το διάγραμμα ροής του προγράμματος: ΔΙΑΔΙΚ. 1 M(H,L) 2100Η B 00Η A 2100Η A 2150Η Δείξε το στο Dipslay M M+1 A B B=0F? ΝΑΙ 1 ΟΧΙ B B+1 A 2150Η M?A M>A A M A 2150Η Δείξε το στο Dipslay Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 62

63 Ο κώδικας στο ΜΙΚΡΟΚΙΤ ;******************************************************************************* ;LABORATORY EXERCISE 7 ;FILE LAB7.ASM ;******************************************************************************* ORG 2000H ;διεύθυνση της πρώτης εντολής (ψευδοεντολή) UPDDT EQU 039DH START: LXI H,2100H MVI B,00H LDA 2100H STA 2150H ;υπορουτίνα εμφάνισης στο Data Field ;δήλωση αρχής εντολών προγράμματος (ψευδοεντολή) ;φόρτωσε την 2100Η σαν διεύθυνση στην Μ ;φόρτωσε στον Β το 00Η ;φόρτωσε στον Α το περιεχόμενο της 2100Η ;αποθήκευσε στην 2150Η το περιεχόμενο του Α PUSH PSW PUSH B CALL UPDDT ;Εμφάνισε τον στο D.F. POP B POP PSW LOOP1: INX H MOV A,B CPI 0FH JZ LOOP3 ;Αύξησε το ζεύγος καταχωρητών H,L (M) ;μετέφερε το περιεχόμενο του Β στον Α ;σύγκρινε το περιεχόμενο του Α με το FFH ;εάν το περιεχόμενο του Α είναι ίσο με το 0FH, πήγαινε στο LOOP3 INR B ;αλλιώς αύξησε το περιεχόμενο του καταχωρητή Β κατά 1 LDA 2150H CMP M JC LOOP2 JMP LOOP1 ;φόρτωσε στον Α το περιεχόμενο της 2150Η ;σύγκρινε το περιεχόμενο του Μ με το περιεχόμενο του Α ;εάν το Μ > Α πήγαινε στο LOOP2, να τον βάλεις στην 2150Η ;αλλιώς πήγαινε στο LOOP1 LOOP2: MOV A,M ;μετέφερε το περιεχόμενο της μνήμης Μ στον Α Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 63

64 STA 2150H ;αποθήκευσε στην 2150Η το περιεχόμενο του Α PUSH PSW PUSH B CALL UPDDT ;Εμφάνισε τον στο D.F. POP B POP PSW JMP LOOP1 ;πήγαινε στο LOOP1 LOOP3: RST 1 END ;Τέλος προγράμματος ;******************************************************************************* Ο κώδικας στο gnusim8085 Η υπορουτίνα DISPLAY εμφανίζει το περιεχόμενο του Καταχωρητή Α στο data field του display. Προσοχή, η συγκεκριμένη υπορουτίνα καταστρέφει όλους τους καταχωρητές, συμπεριλαμβανομένου και του καταχωρητή σημαιών. Δηλώστε την μόνο με το όνομα της και μόνο με την εντολή RET (DISPLAY: RET). ;******************************************************************************* ;LABORATORY EXERCISE 7 ;FILE LAB7.ASM ;******************************************************************************* LXI H,2100H MVI B,00H LDA 2100H STA 2150H ;φόρτωσε την 2100Η σαν διεύθυνση στην Μ ;φόρτωσε στον Β το 00Η ;φόρτωσε στον Α το περιεχόμενο της 2100Η ;αποθήκευσε στην 2150Η το περιεχόμενο του Α PUSH PSW PUSH B CALL DISPLAY ;εμφάνισε τον Α στο Display POP B POP PSW Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 64

65 LOOP1: INX H MOV A,B CPI 0FH JZ LOOP3 ;Αύξησε το ζεύγος καταχωρητών H,L (M) ;μετέφερε το περιεχόμενο του Β στον Α ;σύγκρινε το περιεχόμενο του Α με το 0FH ;εάν το περιεχόμενο του Α είναι ίσο με το 0FH, πήγαινε στο LOOP3 INR B ;αλλιώς αύξησε το περιεχόμενο του καταχωρητή Β κατά 1 LDA 2150H CMP M JC LOOP2 JMP LOOP1 LOOP2: MOV A,M STA 2150H ;φόρτωσε στον Α το περιεχόμενο της 2150Η ;σύγκρινε το περιεχόμενο του Μ με το περιεχόμενο του Α ;εάν το Μ > Α πήγαινε στο LOOP2, να τον βάλεις στην 2150Η ;αλλιώς πήγαινε στο LOOP1 ;μετέφερε το περιεχόμενο της μνήμης Μ στον Α ;αποθήκευσε στην 2150Η το περιεχόμενο του Α PUSH PSW PUSH B CALL DISPLAY ;εμφάνισε τον Α στο Display POP B POP PSW JMP LOOP1 ;πήγαινε στο LOOP1 DISPLAY: RET LOOP3: HLT ;Τέλος προγράμματος Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 65

66 ΑΣΚΗΣΗ 8 Στοίβα και Υπορουτίνες Στόχος της Άσκησης Οι στοίβα και οι υπορουτίνες αποτελούν τα δύο πρωταρχικά και βασικά στοιχεία για την συγγραφή δομημένου κώδικα. Ο δομημένος ή αλλιώς τμηματικός προγραμματισμός αναφέρεται στην τεχνική σχεδίασης και ανάπτυξης προγραμμάτων ως ένα σύνολο από απλούστερα τμήματα προγραμμάτων. Η τεχνική του δομημένου προγραμματισμού μας εξασφαλίζει σε μεγάλο βαθμό την επιτυχή και εύκολη δημιουργία σωστών προγραμμάτων. Πιο συγκεκριμένα τα πλεονεκτήματα του δομημένου προγραμματισμού είναι: Διευκολύνει την ανάπτυξη του προγράμματος. Ένα σύνθετο πρόβλημα μπορεί να αναλυθεί στα επιμέρους απλούστερα υποπροβλήματα που το απαρτίζουν. Έτσι, η σταδιακή επίλυση των υποπροβλημάτων αυτών και η δημιουργία των αντίστοιχων υποπρογραμμάτων επιτρέπει την εξέταση και την επίλυση απλών προβλημάτων και όχι την απευθείας αντιμετώπιση του συνολικού προβλήματος. Διευκολύνει την κατανόηση και τη διόρθωση του προγράμματος. Ο χωρισμός του προγράμματος σε μικρότερα αυτοτελή τμήματα επιτρέπει τη γρήγορη διόρθωση καθενός τμήματος του χωρίς οι αλλαγές αυτές να επηρεάζουν το υπόλοιπο πρόγραμμα. Επίσης διευκολύνει τον καθένα να διαβάσει και να κατανοήσει τη λειτουργία του προγράμματος χωρίς ιδιαίτερα μεγάλο κόπο. Αυτό αποτελεί πολύ σημαντικό χαρακτηριστικό για τον σωστό προγραμματισμό, αφού ένα μεγάλο πρόγραμμα κατά τον κύκλο της ζωής του χρειάζεται να συντηρηθεί από διαφορετικούς προγραμματιστές. Απαιτεί λιγότερο χρόνο και προσπάθεια στη συγγραφή του προγράμματος. Πολύ συχνά, μια συγκεκριμένη λειτουργία απαιτείται να επαναληφθεί σε διαφορετικά σημεία ενός προγράμματος. Από τη στιγμή που ένα υποπρόγραμμα έχει γραφεί, μπορεί να καλείται από πολλά σημεία του προγράμματος μειώνοντας με τον τρόπο αυτό το μέγεθος του προγράμματος, το χρόνο συγγραφής του και την πιθανότητα προγραμματιστικού σφάλματος, ενώ ταυτόχρονα το πρόγραμμα γίνεται πιο εύληπτο και κατανοητό. Επεκτείνει τις δυνατότητες των γλωσσών προγραμματισμού. Το υποπρόγραμμα από τη στιγμή που έχει φτιαχτεί μπορεί να χρησιμοποιηθεί από οποιοδήποτε πρόγραμμα της συγκεκριμένης γλώσσας, το οποίο κατ επέκταση οδηγεί στη δημιουργία των βιβλιοθηκών χρήστη. Η συγγραφή πολλών υποπρογραμμάτων και η δημιουργία βιβλιοθηκών με αυτά, υπό μία έννοια επεκτείνουν την ίδια τη γλώσσα προγραμματισμού με λειτουργίες που δεν υποστηρίζονται απευθείας από τη γλώσσα προγραμματισμού. Στοίβα Στην εικόνα που ακολουθεί βλέπετε το λογικό διάγραμμα της οργάνωσης της μνήμης σχεδόν όλων των υπολογιστικών συστημάτων. Εκτός από τα τμήματα του κώδικα και των δεδομένων υπάρχει και το τμήμα της στοίβας (stack). Η στοίβα επομένως δεν είναι τίποτα άλλο από ένα κομμάτι στην κύρια μνήμη (τύπου RAM) το οποίο όμως λειτουργεί με ένα ξεχωριστό τρόπο. Η στοίβα λειτουργεί με την αρχή LIFO (Last-In-First-Out) και είναι ένα κομμάτι μνήμης που έχει μόνο ένα σημείο εισόδου/εξόδου. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 66

67 Τέλος Μνήμης Στοίβα (stack) Ελεύθερη Μνήμη Δεδομένα/Σωρός (heap) Αρχή Μνήμης Κώδικας (code) Οργάνωση της μνήμης ενός υπολογιστικού συστήματος Στο επεξεργαστή 8085 ο stack λειτουργεί με ζευγάρια καταχωρητών (με άλλα λόγια ο stack στον 8085 είναι 16-bits). Οι δύο βασικές εντολές χειρισμού του stack στον 8085 είναι: PUSH rp: το περιεχόμενο του ζεύγους καταχωρητών rp μεταφέρεται στην στοίβα. POP rp: το περιεχόμενο των κορυφαίων θέσεων της στοίβας αποθηκεύεται στο ζεύγος καταχωρητών rp. Σημείωση: rp (register pair ή ζευγάρι καταχωρητών) είναι ένα από τα ζευγάρια των καταχωρητών BC, DE, HL (τα ζευγάρια καταχωρητών σηματοδοτούνται πάντα από το όνομα του πρώτου καταχωρητή του ζευγαριού, δηλαδή B, D και H αντίστοιχα). Επίσης, αν το όρισμα της εντολής είναι το PSW (Processor Status Word) αναφερόμαστε στον καταχωρητή Α (accumulator) μαζί με καταχωρητή F (flag register). Υπορουτίνες Οι υπορουτίνες είναι αυτοτελή κομμάτια κώδικα τα οποία καλούνται με την εντολή call, ενώ στο τέλος μια υπορουτίνας πρέπει να υπάρχει η εντολή RET (Return), η οποία και δηλώνει το τέλος της υπορουτίνας και την επιστροφή στο σημείο κλήσης της υπορουτίνας. Υπορούτινες μπορεί να φτιάξει ο χρήστης αλλά συνήθως υπάρχουν και έτοιμες υπορουτίνες που παρέχονται είτε από τον κατασκευαστή της γλώσσας προγραμματισμού είτε από το λειτουργικό σύστημα (π.χ. windows). Το Microkit πρόγραμμα (το mini λειτουργικό σύστημα του αναπτυξιακού που χρησιμοποιούμε στο εργαστήριο) παρέχει πολλές έτοιμες υπορουτίνες. Ένα χαρακτηριστικό παράδειγμα έτοιμης υπορουτίνας είναι η υπορουτίνα UPDDT, η οποία βρίσκεται στην θέση μνήμης 039DH (τύπου ROM) και εμφανίζει το περιεχόμενο του καταχωρητή Α στο Data Field του Mikrokit. Προσοχή: η υπορουτίνα UPDDT κατά την κλήση της καταστρέφει όλους τους καταχωρητές του 8085 (και τον flag register). Λυμένο Παράδειγμα Να γραφεί πρόγραμμα το οποίο να εμφανίζει στο Data Field του Mikrokit τους αριθμούς 00Η έως 05Η. Μεταξύ των διαδοχικών εμφανίσεων να υπάρχει καθυστέρηση ίση με 2 seconds. DELAY: για την Delay: 1 διπλό Loop με τους μετρητές στο FFH, 0,5 διπλό Loop με τον ένα μετρητή στο FFH και τον άλλο στο 7FH, 0,25 διπλό Loop με τον ένα μετρητή στο FFH και τον άλλο στο 3FH ή διπλό Loop με τον ένα μετρητή στο 7FH και τον άλλο στο 7FH, 0,125 διπλό Loop με τον ένα μετρητή στο FFH και τον άλλο στο 1FH, Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 67

68 DISPLAY: Η υπορουτίνα DISPLAY εμφανίζει το περιεχόμενο του Καταχωρητή Α στο data field του display. Προσοχή, η συγκεκριμένη υπορουτίνα καταστρέφει όλους τους καταχωρητές, συμπεριλαμβανομένου και του καταχωρητή σημαιών. Δηλώστε την μόνο με το όνομα της και μόνο με την εντολή RET (DISPLAY: RET). Ο κώδικας στο ΜΙΚΡΟΚΙΤ ;******************************************************************************* ;LABORATORY EXERCISE 8 ;FILE LAB8.ASM ;******************************************************************************* ORG 2000H UPDDT EQU 039DH START: ;Αρχή προγράμματος στην 2000H ;Υπορουτίνα εμφάνισης στο Data Field ;ψευδοεντολή δήλωση αρχής προγράμματος MVI A,00H ;Αρχικοποίηση του A (μετρητής) στο 0 LOOP1: PUSH PSW CALL UPDDT POP PSW PUSH PSW CALL DELAY CALL DELAY POP PSW INR A CPI 06H JNZ LOOP1 ;ετικέτα αρχής βρόχου ;αποθήκευση του Α στον stack ;εμφάνισε τον Α στο Data Field ;επαναφορά του Α από τον stack (περιττή) ;αποθήκευση του Α στον stack (περιττή) ;καθυστέρηση ίση με 1 second ;καθυστέρηση ίση με 1 second ;επαναφορά του Α από τον stack ;αύξηση του μετρητή ;σύγκριση μετρητή με το πλήθος των επαναλήψεων ;τέλος βρόχου RST 1 DELAY: MVI B,0FFH LABEL1: MVI A,0FFH ;η delay ;φόρτωσε το FFH στον Β ;αρχή LABEL1 ;φόρτωσε το FFH στον Α Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 68

69 LABEL2: ;αρχή LABEL2 DCR A ;μείωσε τον Α κατά 1 JNZ LABEL2 ;διακλάδωση στο LABEL2 αν το Z flag είναι 0 DCR B ;μείωσε τον Β κατά 1 JNZ LABEL1 ;διακλάδωση στο LABEL1 αν το Z flag είναι 0 RET END ;επιστροφή από την υπορουτίνα ;Τέλος προγράμματος ;******************************************************************************* Ο κώδικας στο gnusim8085 Η υπορουτίνα DISPLAY εμφανίζει το περιεχόμενο του Καταχωρητή Α στο data field του display. Προσοχή, η συγκεκριμένη υπορουτίνα καταστρέφει όλους τους καταχωρητές, συμπεριλαμβανομένου και του καταχωρητή σημαιών. Δηλώστε την μόνο με το όνομα της και μόνο με την εντολή RET (DISPLAY: RET). ;******************************************************************************* ;LABORATORY EXERCISE 8 ;FILE LAB8.ASM ;******************************************************************************* MVI A,00H ;Αρχικοποίηση του A (μετρητής) στο 0 LOOP1: PUSH PSW CALL DISPLAY POP PSW PUSH PSW CALL DELAY CALL DELAY POP PSW INR A CPI 06H JNZ LOOP1 ;αποθήκευση του Α στον stack ;εμφάνισε τον Α στο Data Field (ή CALL DELAY ξανά) ;επαναφορά του Α από τον stack (περιττή) ;αποθήκευση του Α στον stack (περιττή) ;καθυστέρηση ίση με 1 second ;καθυστέρηση ίση με 1 second ;επαναφορά του Α από τον stack ;αύξηση του μετρητή ;σύγκριση μετρητή με το πλήθος των επαναλήψεων ;τέλος βρόχου JMP END Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 69

70 DISPLAY: RET DELAY: MVI B,0FFH LABEL1: MVI A,0FFH ;φόρτωσε το FFH στον Β ;φόρτωσε το FFH στον Α LABEL2: DCR A ;μείωσε τον Α κατά 1 JNZ LABEL2 ;διακλάδωση στο LABEL2 αν το Z flag είναι 0 DCR B ;μείωσε τον Β κατά 1 JNZ LABEL1 ;διακλάδωση στο LABEL1 αν το Z flag είναι 0 RET END: HLT Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 70

71 ΔΙΑΓΡΑΜΜΑ ΡΟΗΣ Στην συνέχεια δίνεται το διάγραμμα ροής του παραδείγματος (στο διάγραμμα ροής δεν υπάρχουν οι δύο περιττές εντολές). Υπολογισμός της περιόδου του 8085 Κατά την εκτέλεση διαφόρων προγραμμάτων, ορισμένες φορές απαιτείται από τον προγραμματιστή, αλλά και από τη φύση του προγράμματος, να καθυστερήσει η εκτέλεση μιας εντολής ή μια ομάδας εντολών. Αυτό στον επεξεργαστή 8085 μπορεί να γίνει εκτελώντας μια αλληλουχία εντολών, οι οποίες στο σύνολό τους δημιουργούν την επιθυμητή καθυστέρηση. Τα προγράμματα τα οποία δημιουργούν την επιθυμητή καθυστέρηση ονομάζονται προγράμματα καθυστέρησης και συχνά εμφανίζονται ως υπορουτίνες στο πρόγραμμα. Ο χρόνος εκτέλεσης μια εντολής εξαρτάται από: Τους κύκλους μηχανής (cycle time) που χρειάζεται κάθε εντολή για την εκτέλεση της. Αυτή η πληροφορία είναι διαθέσιμη από τον κατασκευαστή του επεξεργαστή και υπάρχει στο εγχειρίδιο (manual) του κάθε επεξεργαστή. Από την συχνότητα του ρολογιού/κρυστάλλου του επεξεργαστή. Στη περίπτωση που χρησιμοποιείται η Mikrokit αναπτυξιακή πλακέτα, ο εξωτερικός κρύσταλλος έχει συχνότητα MHz, και το ρολόι που λειτουργεί ο μικροϋπολογιστής είναι το μισό της συχνότητας του κρυστάλλου, δηλαδή MHz. Επομένως η περίοδος του ρολογιού (cycle time) είναι μsec. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 71

72 ΑΣΚΗΣΗ 9 Λειτουργίες Ι/Ο Θύρες Εισόδου / Εξόδου Αρχικά προγραμματίστε το KIT, ώστε να έχει ΘΥΡΑ A ΣΑΝ ΕΙΣΟΔΟ, ΘΥΡΑ B ΣΑΝ ΕΞΟΔΟ. Να γραφεί πρόγραμμα το οποίο ανάλογα με το ποιος διακόπτης είναι στη θέση ON, να κάνει τις παρακάτω λειτουργίες. Λειτουργίες: Διαδικασία 1: Όταν ο διακόπτης Δ2 είναι στη θέση ON τότε όλα τα LED είναι σβηστά. Κατόπιν να ελέγχει πάλι τη θύρα A. Διαδικασία 2: Όταν ο διακόπτης Δ3 είναι στη θέση ON τότε να εξάγει στην θύρα B (έξοδο) την κατάλληλη λέξη ώστε να ανάψουν τα leds L0, L1 & L2 και την κατάλληλη λέξη ώστε να ανάψουν τα leds L3 & L4 με καθυστέρηση 1 sec μεταξύ τους. Κατόπιν να ελέγχει πάλι τη θύρα A. Διαδικασία 3: Όταν οι διακόπτες Δ5 & Δ7 είναι στη θέση ON τότε να αφαιρεί τον αριθμό 2ΑΗ από τον 6FΗ και το αποτέλεσμα να τοποθετείται στην 2450Η, ύστερα να κάνει την λογική πράξη OR μεταξύ του περιεχομένου της θέσης μνήμης 2450Η και του αριθμού 1FΗ και το αποτέλεσμα να τοποθετηθεί στην 245FΗ. Στην συνέχεια να τυπώνει το αποτέλεσμα στο LCD Display του Mikrokit. Κατόπιν να ελέγχει πάλι τη θύρα A. DELAY: για την Delay: 1 διπλό Loop με τους μετρητές στο FFH, 0,5 διπλό Loop με τον ένα μετρητή στο FFH και τον άλλο στο 7FH, 0,25 διπλό Loop με τον ένα μετρητή στο FFH και τον άλλο στο 3FH ή διπλό Loop με τον ένα μετρητή στο 7FH και τον άλλο στο 7FH, 0,125 διπλό Loop με τον ένα μετρητή στο FFH και τον άλλο στο 1FH, DISPLAY: Η υπορουτίνα DISPLAY εμφανίζει το περιεχόμενο του Καταχωρητή Α στο data field του display. Προσοχή, η συγκεκριμένη υπορουτίνα καταστρέφει όλους τους καταχωρητές, συμπεριλαμβανομένου και του καταχωρητή σημαιών. Δηλώστε την μόνο με το όνομα της και μόνο με την εντολή RET (DISPLAY: RET). Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 72

73 Λύση Παραδείγματος: Σχεδιάζουμε αρχικά το διάγραμμα ροής ΑΡΧΗ ΑΡΧΙΚΟΠΟΙΗΣΗ ΘΥΡΩΝ 1 ΔΙΑΒΑΣΕ ΤΗΝ ΚΑΤΑΣΤΑΣΗ ΤΩΝ ΔΙΑΚΟΠΤΩΝ ΔΙΑΚΟΠΤΗΣ Δ2 ON? ΝΑΙ ΔΙΑΔΙΚΑΣΙΑ 1 ΟΧΙ ΔΙΑΚΟΠΤΗΣ Δ3 ON? ΝΑΙ ΔΙΑΔΙΚΑΣΙΑ 2 ΟΧΙ ΔΙΑΚΟΠΤΗΣ Δ5 & Δ7 ON? ΝΑΙ ΔΙΑΔΙΚΑΣΙΑ 3 ΟΧΙ 1 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 73

74 ΔΙΑΔΙΚ. 1 Α 00Η Α 42Η 1 ΔΙΑΔΙΚ. 2 Α 07Η Α 42Η ΚΑΘΥΣΤΕΡΗΣΗ Α 18Η Α 42Η ΚΑΘΥΣΤΕΡΗΣΗ 1 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 74

75 ΔΙΑΔΙΚ. 3 Α 6FΗ Α A - 2AH Α 2450Η A Α {2450H} OR 1FΗ Α 245FΗ Α Display 1 Ο κώδικας στο ΜΙΚΡΟΚΙΤ ;******************************************************************************* ;LABORATORY EXERCISE 9 ;FILE LAB9.ASM ;******************************************************************************* ORG 2000H ; διεύθυνση της πρώτης εντολής (ψευδοεντολή) UPDDT EQU 039DH START: MVI A,02H OUT 40H ; Δήλωση ονόματος υπορουτίνας εμφάνισης δεδομένων στο Display ; δήλωση αρχής εντολών προγράμματος (ψευδοεντολή) ; Φόρτωσε στον Α το 02H ; Αρχικοποίηση θυρών MAIN: Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 75

76 IN 41H ; Διάβασε την κατάσταση των διακοπτών CPI 04H JZ PROC_1 CPI 08H JZ PROC_2 CPI 0A0H JZ PROC_3 ; Δ2 διακόπτης στη θέση ON? ; Ναι. Πήγαινε στην 1η διαδικασία ; Δ3 διακόπτης στη θέση ON? ; Ναι. Πήγαινε στην 2η διαδικασία ; Δ5-Δ7 διακόπτης στη θέση ON? ; Ναι. Πήγαινε στην 3η διαδικασία JMP MAIN PROC_1: ;1η διαδικασία MVI A,00H ; Φόρτωσε στον A το 00H OUT 42H ; Σβήσε τα LEDs (42 ΔΙΕΥΘΥΝΣΗ ΘΥΡΑΣ Β) JMP MAIN ; Πήγαινε στην αρχή του προγράμματος PROC_2: ;2η διαδικασία MVI A,07H ; Φόρτωσε στον A το 07H (leds L0, L1 & L2) OUT 42H ; (42 ΔΙΕΥΘΥΝΣΗ ΘΥΡΑΣ Β) CALL DELAY ; Kάλεσε καθυστέρηση MVI A,18H ; Φόρτωσε στον A το 18H (leds L3 & L4 ) OUT 42H ; (42 ΔΙΕΥΘΥΝΣΗ ΘΥΡΑΣ Β) CALL DELAY JMP MAIN ;Kάλεσε καθυστέρηση ; Πήγαινε στην αρχή του προγράμματος PROC_3: ;3η διαδικασία MVI A,6FH SUI 2AH STA 2450H ORI 1FH ; Φόρτωσε στον A το 6F ; Αφαίρεσε από τον Α το 2ΑΗ (6F-2A) ; Αποθήκευση του αποτελέσματος στην 2450Η ; OR μεταξύ του αποτελέσματος της αφαίρεσης ; και του 1FH ({2450H}OR 1FH) STA 245FH CALL UPDDT JMP MAIN ; Αποθήκευση του αποτελέσματος στην 245FH ; Εμφάνιση του περιεχομένου του Α στο Display ; Πήγαινε στην αρχή του προγράμματος Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 76

77 DELAY: ; 1sec delay MVI B,0FFH ; φόρτωσε το FFH στον Β LABEL1: ; αρχή LABEL1 MVI A,0FFH ; φόρτωσε το FFH στον Α LABEL2: ; αρχή LABEL2 DCR A ; μείωσε τον Α κατά 1 JNZ LABEL2 ; διακλάδωση στην LABEL2 αν το ZERO flag είναι 0 DCR B ; μείωσε τον Β κατά 1 JNZ LABEL1 ; διακλάδωση στην LABEL1 αν το ZERO flag είναι 0 RET ; επιστροφή από την υπορουτίνα RST 1 END ; Τέλος προγράμματος ;******************************************************************************* Ο κώδικας στο gnusim8085 Η υπορουτίνα DISPLAY εμφανίζει το περιεχόμενο του Καταχωρητή Α στο data field του display. Προσοχή, η συγκεκριμένη υπορουτίνα καταστρέφει όλους τους καταχωρητές, συμπεριλαμβανομένου και του καταχωρητή σημαιών. Δηλώστε την μόνο με το όνομα της και μόνο με την εντολή RET (DISPLAY: RET). ;******************************************************************************* ;LABORATORY EXERCISE 9 ;FILE LAB9.ASM ;******************************************************************************* MVI A,02H ; Φόρτωσε στον Α το 02H OUT 40H MAIN: IN 41H CPI 04H JZ PROC_1 ; Αρχικοποίηση θυρών ; Διάβασε την κατάσταση των διακοπτών ; Δ2 διακόπτης στη θέση ON? ; Ναι. Πήγαινε στην 1η διαδικασία Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 77

78 CPI 08H ; Δ3 διακόπτης στη θέση ON? JZ PROC_2 CPI 0A0H JZ PROC_3 ; Ναι. Πήγαινε στην 2η διαδικασία ; Δ5-Δ7 διακόπτης στη θέση ON? ; Ναι. Πήγαινε στην 3η διαδικασία JMP MAIN PROC_1: MVI A,00H ; Φόρτωσε στον A το 00H OUT 42H ; Σβήσε τα LEDs (42 ΔΙΕΥΘΥΝΣΗ ΘΥΡΑΣ Β) JMP MAIN ; Πήγαινε στην αρχή του προγράμματος PROC_2: MVI A,07H ; Φόρτωσε στον A το 07H (leds L0, L1 & L2) OUT 42H ; (42 ΔΙΕΥΘΥΝΣΗ ΘΥΡΑΣ Β) CALL DELAY ; Kάλεσε καθυστέρηση MVI A,18H ; Φόρτωσε στον A το 18H (leds L3 & L4 ) OUT 42H ; (42 ΔΙΕΥΘΥΝΣΗ ΘΥΡΑΣ Β) CALL DELAY JMP MAIN PROC_3: MVI A,6FH SUI 2AH STA 2450H ORI 1FH ;Kάλεσε καθυστέρηση ; Πήγαινε στην αρχή του προγράμματος ; Φόρτωσε στον A το 6F ; Αφαίρεσε από τον Α το 2ΑΗ (6F-2A) ; Αποθήκευση του αποτελέσματος στην 2450Η ; OR μεταξύ του αποτελέσματος της αφαίρεσης ; και του 1FH ({2450H}OR 1FH) STA 245FH CALL DISPLAY JMP MAIN ; Αποθήκευση του αποτελέσματος στην 245FH ;εμφάνισε τον Α στο Data Field (ή CALL DELAY ξανά) ; Πήγαινε στην αρχή του προγράμματος DISPLAY: RET DELAY: MVI B,0FFH LABEL1: MVI A,0FFH ; φόρτωσε το FFH στον Β ; φόρτωσε το FFH στον Α LABEL2: DCR A ; μείωσε τον Α κατά 1 JNZ LABEL2 ; διακλάδωση στην LABEL2 αν το ZERO flag είναι 0 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 78

79 DCR B ; μείωσε τον Β κατά 1 JNZ LABEL1 ; διακλάδωση στην LABEL1 αν το ZERO flag είναι 0 RET ; επιστροφή από την υπορουτίνα HLT Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 79

80 ΑΣΚΗΣΗ 10 Επαναληπτική Αρχικά προγραμματίστε το KIT, ώστε να έχει ΘΥΡΑ A ΣΑΝ ΕΙΣΟΔΟ, ΘΥΡΑ B ΣΑΝ ΕΞΟΔΟ. Να γραφεί πρόγραμμα το οποίο ανάλογα με το ποιος διακόπτης είναι στη θέση ON, να κάνει τις παρακάτω λειτουργίες. Λειτουργίες: Διαδικασία 1: Όταν ο διακόπτης Δ2 & Δ4 & Δ6 είναι στη θέση ON τότε εκτελείτε πολλαπλασιασμό μεταξύ των αριθμών 0DH (2500Η) και 1AH (2505Η), το αποτέλεσμα του πολλαπλασιασμού να τοποθετηθεί στην θέση μνήμης 2510H. Κατόπιν να ελέγχει πάλι τη θύρα A. Διαδικασία 2: Όταν ο διακόπτης Δ3 είναι στη θέση ON τότε να εξάγει στην θύρα B (έξοδο) την κατάλληλη λέξη ώστε να ανάψουν τα leds L0, L3, L5, & L7 και την κατάλληλη λέξη ώστε να ανάψουν τα leds L1, L2, L4 & L6 με καθυστέρηση. Μεταξύ της εναλλαγής να υπάρχει καθυστέρηση 1 sec. Ο αριθμός να εμφανίζεται και στο LCD display του microkit. Κατόπιν να ελέγχει πάλι τη θύρα A. Διαδικασία 3: Όταν ο διακόπτης Δ6 & Δ7 είναι στη θέση ON τότε να κάνει την λογική πράξη OR μεταξύ του αριθμού 0ΑH και του αριθμού Β0Η και το αποτέλεσμα να τοποθετηθεί στην 2210Η, ύστερα να αφαιρεί από το περιεχόμενο της θέσης μνήμης 2220Η το περιεχόμενο της θέσης μνήμης 2230H (αφού πριν έχετε βάλει στην 2230H τον αριθμό 1DH) και το αποτέλεσμα να τοποθετηθεί στην 2240Η. Κατόπιν να ελέγχει πάλι τη θύρα A. Σε όλες τις άλλες περιπτώσεις να ελέγχει πάλι την θύρα Α. DELAY: για την Delay: 1 διπλό Loop με τους μετρητές στο FFH, 0,5 διπλό Loop με τον ένα μετρητή στο FFH και τον άλλο στο 7FH, 0,25 διπλό Loop με τον ένα μετρητή στο FFH και τον άλλο στο 3FH ή διπλό Loop με τον ένα μετρητή στο 7FH και τον άλλο στο 7FH, 0,125 διπλό Loop με τον ένα μετρητή στο FFH και τον άλλο στο 1FH, DISPLAY: Η υπορουτίνα DISPLAY εμφανίζει το περιεχόμενο του Καταχωρητή Α στο data field του display. Προσοχή, η συγκεκριμένη υπορουτίνα καταστρέφει όλους τους καταχωρητές, συμπεριλαμβανομένου και του καταχωρητή σημαιών. Δηλώστε την μόνο με το όνομα της και μόνο με την εντολή RET (DISPLAY: RET). Λύση Άσκησης 10. Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 80

81 ΑΡΧΗ ΔΙΑΔΙΚ. 2 ΑΡΧΙΚΟΠΟΙΗΣΗ ΘΥΡΩΝ 1 Α A9Η ΔΙΑΒΑΣΕ ΤΗΝ ΚΑΤΑΣΤΑΣΗ ΤΩΝ ΔΙΑΚΟΠΤΩΝ Α 42Η ΔΙΑΚΟΠΤΗΣ Δ2 & Δ4 & Δ6 ON? ΝΑΙ ΔΙΑΔΙΚΑΣΙΑ 1 CALL UPDDT ΟΧΙ ΚΑΘΥΣΤΕΡΗΣΗ ΔΙΑΚΟΠΤΗΣ Δ3 ON? ΝΑΙ ΔΙΑΔΙΚΑΣΙΑ 2 ΟΧΙ Α 56 Η ΔΙΑΚΟΠΤΗΣ Δ6 & Δ7 ON? ΝΑΙ ΔΙΑΔΙΚΑΣΙΑ 3 Α 42Η ΟΧΙ 1 CALL UPDDT ΚΑΘΥΣΤΕΡΗΣΗ 1 81

82 Ο κώδικας στο ΜΙΚΡΟΚΙΤ ;******************************************** *********************** ;LABORATORY EXERCISE 10 ;FILE LAB10.ASM ;******************************************************************* ORG 2000H ;διεύθυνση της πρώτης εντολής (ψευδοεντολή) UPDDT EQU 039DH START: ;δήλωση αρχής εντολών προγράμματος (ψευδοεντολή) MVI A,02H OUT 40H ;Φόρτωσε στον Α το 02H ;Αρχικοποίηση θυρών MAIN: IN 41H CPI 54H JZ PROC_1 CPI 08H JZ PROC_2 CPI 0C0H JZ PROC_3 ;Διάβασε την κατάσταση των διακοπτών ;Δ2 & Δ4 & Δ6 διακόπτης στη θέση ON? ;Ναι. Πήγαινε στην 1η διαδικασία ;Δ3 διακόπτης στη θέση ON? ;Ναι. Πήγαινε στην 2η διαδικασία ;Δ6 & Δ7 διακόπτης στη θέση ON? ;Ναι. Πήγαινε στην 3η διαδικασία JMP MAIN PROC_1: ;1η διαδικασία LDA 2500H MOV B,A ;Φόρτωσε στον Α τον πολλαπλασιαστέο ;Μετέφερε τον στον Β LDA 2501H MOV C,A DCR C LABEL: ADD B DCR C JNZ LABEL ;Φόρτωσε στον C τον πολλαπλασιαστή ; μείωση του μετρητή ;ετικέτα αρχής βρόχου ;εκτέλεση της διαδοχικής πρόσθεσης ;μείωση του μετρητή ;τέλος βρόχου Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 82

83 STA 2510H ;Μετέφερε το αποτέλεσμα την θέση μνήμης 2300H JMP MAIN ;Πήγαινε στην αρχή του προγράμματος PROC_2: ;2η διαδικασία MVI A,0A9H OUT 42H CALL UPDDT CALL DELAY MVI A,56H OUT 42H CALL UPDDT CALL DELAY JMP MAIN ;Πήγαινε στην αρχή του προγράμματος PROC_3: ;3η διαδικασία MVI A,1DH STA 2230H MVI A,0AH ORI B0H STA 2210H LDA 2220H LXI H,2230H SUB M STA 2240H JMP MAIN ;Πήγαινε στην αρχή του προγράμματος DELAY: ;η delay MVI B,0FFH ;φόρτωσε το FFH στον Β LABEL1: ;αρχή LABEL1 MVI A,0FFH ; φόρτωσε το FFH στον Α LABEL2: ;αρχή LABEL2 DCR A ;μείωσε τον Α κατά 1 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 83

84 JNZ LABEL2 ;διακλάδωση στην LABEL2 αν το ZERO flag είναι 0 DCR B ;μείωσε τον Β κατά 1 JNZ LABEL1 ;διακλάδωση στην LABEL1 αν το ZERO flag είναι 0 RET ;επιστροφή από την υπορουτίνα RST 1 END ; Τέλος προγράμματος ;******************************************************************* Ο κώδικας στο gnusim8085 Η υπορουτίνα DISPLAY εμφανίζει το περιεχόμενο του Καταχωρητή Α στο data field του display. Προσοχή, η συγκεκριμένη υπορουτίνα καταστρέφει όλους τους καταχωρητές, συμπεριλαμβανομένου και του καταχωρητή σημαιών. Δηλώστε την μόνο με το όνομα της και μόνο με την εντολή RET (DISPLAY: RET). ;******************************************** *********************** ;LABORATORY EXERCISE 10 ;FILE LAB10.ASM ;******************************************************************* MVI A,02H OUT 40H MAIN: IN 41H CPI 58H JZ PROC_1 CPI 08H JZ PROC_2 CPI 0C0H JZ PROC_3 ;Φόρτωσε στον Α το 02H ;Αρχικοποίηση θυρών ;Διάβασε την κατάσταση των διακοπτών ; Δ2 & Δ4 & Δ6 διακόπτης στη θέση ON? ;Ναι. Πήγαινε στην 1η διαδικασία ;Δ3 διακόπτης στη θέση ON? ;Ναι. Πήγαινε στην 2η διαδικασία ;Δ6 & Δ7 διακόπτης στη θέση ON? ;Ναι. Πήγαινε στην 3η διαδικασία JMP MAIN PROC_1: LDA 2500H MOV B,A ;Φόρτωσε στον Α τον πολλαπλασιαστέο ;Μετέφερε τον στον Β LDA 2501H Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 84

85 MOV C,A ;Φόρτωσε στον C τον πολλαπλασιαστή DCR C LABEL: ADD B DCR C JNZ LABEL STA 2510H JMP MAIN ; μείωση του μετρητή ;εκτέλεση της διαδοχικής πρόσθεσης ;μείωση του μετρητή ;τέλος βρόχου ;Μετέφερε το αποτέλεσμα την θέση μνήμης 2300H ;Πήγαινε στην αρχή του προγράμματος PROC_2: MVI A,0A9H OUT 42H CALL DISPLAY ;εμφάνισε τον Α στο Data Field (ή CALL DELAY ξανά) CALL DELAY MVI A,56H OUT 42H CALL DISPLAY ;εμφάνισε τον Α στο Data Field (ή CALL DELAY ξανά) CALL DELAY JMP MAIN ;Πήγαινε στην αρχή του προγράμματος PROC_3: MVI A,1DH STA 2230H MVI A,0AH ORI 0B0H STA 2210H LDA 2220H LXI H,2230H SUB M STA 2240H JMP MAIN ;Πήγαινε στην αρχή του προγράμματος DISPLAY: RET DELAY: MVI B,0FFH LABEL1: MVI A,0FFH ;φόρτωσε το FFH στον Β ; φόρτωσε το FFH στον Α Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 85

86 LABEL2: DCR A ;μείωσε τον Α κατά 1 JNZ LABEL2 ;διακλάδωση στην LABEL2 αν το ZERO flag είναι 0 DCR B ;μείωσε τον Β κατά 1 JNZ LABEL1 ;διακλάδωση στην LABEL1 αν το ZERO flag είναι 0 RET ;επιστροφή από την υπορουτίνα HLT Εργαστήριο Μικροϋπολογιστικών Συστημάτων Κεφάλαιο 5 - ΕΡΓΑΣΤΗΡΙΑΚΕΣ ΑΣΚΗΣΕΙΣ 86

87 Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ 8085 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

88 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

89 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

90 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

91 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

92 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

93 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

94 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

95 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

96 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

97 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

98 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

99 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

100 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

101 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

102 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

103 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

104 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

105 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

106 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

107 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

108 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

109 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

110 Εργαστήριο Μικροϋπολογιστικών Συστημάτων Παράρτημα 1 - ΡΕΠΕΡΤΟΡΙΟ ΕΝΤΟΛΩΝ ΤΟΥ

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

ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Ι Μικροεπεξεργαστής Intel 8085, Εργαστηριακές Ασκήσεις ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Ι Μικροεπεξεργαστής Intel 8085, Εργαστηριακές Ασκήσεις Δρ.Τοπάλης Ευάγγελος Δρ. Ηλεκτρολόγος Μηχανικός & Τεχνολογίας Υπολογιστών καθ. Χαδέλλης Λουκάς ΤΕΙ Δυτικής Ελλάδας ΕΡΓΑΣΤΗΡΙΟ

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Ι

ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Ι ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Ι Μικροεπεξεργαστής 8085, Εργαστηριακές Ασκήσεις Δρ. Τοπάλης Ευάγγελος (Δρ. Ηλεκτρολόγος Μηχανικός & Τεχνολογίας Υπολογιστών) Δρ.Αντωνόπουλος Χρήστος (Δρ. Ηλεκτρολόγος Μηχανικός

Διαβάστε περισσότερα

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

ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Ι Μικροεπεξεργαστής 8085, Εργαστηριακές Ασκήσεις ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Ι Μικροεπεξεργαστής 8085, Εργαστηριακές Ασκήσεις Δρ. Τοπάλης Ευάγγελος (Δρ. Ηλεκτρολόγος Μηχανικός & Τεχνολογίας Υπολογιστών) Δρ.Αντωνόπουλος Χρήστος (Δρ. Ηλεκτρολόγος Μηχανικός

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Ι Μικροεπεξεργαστής 8085, Εργαστηριακές Ασκήσεις ΕΡΓΑΣΤΗΡΙΟ ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ Ι Μικροεπεξεργαστής 8085, Εργαστηριακές Ασκήσεις Δρ. Τοπάλης Ευάγγελος (Δρ. Ηλεκτρολόγος Μηχανικός & Τεχνολογίας Υπολογιστών) Δρ.Κεραμίδας Γεώργιος (Δρ. Ηλεκτρολόγος Μηχανικός

Διαβάστε περισσότερα

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

ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΚΕΦΑΛΑΙΟ 7ο ΑΡΧΙΤΕΚΤΟΝΙΚΗ HARDWARE ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ Γενικό διάγραμμα υπολογιστικού συστήματος Γενικό διάγραμμα υπολογιστικού συστήματος - Κεντρική Μονάδα Επεξεργασίας ονομάζουμε

Διαβάστε περισσότερα

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ Κεφάλαιο 3 Αρχιτεκτονική Ηλεκτρονικού Τμήματος (hardware) των Υπολογιστικών Συστημάτων ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Τι εννοούμε με τον όρο υπολογιστικό σύστημα και τι με τον όρο μικροϋπολογιστικό σύστημα; Υπολογιστικό

Διαβάστε περισσότερα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα 1. Ποια είναι η σχέση της έννοιας του μικροεπεξεργαστή με αυτή του μικροελεγκτή; Α. Ο μικροεπεξεργαστής εμπεριέχει τουλάχιστο έναν μικροελεγκτή. Β. Ο

Διαβάστε περισσότερα

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»

Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ» Περιεχόμενα Γενική οργάνωση υπολογιστή «ΑΒΑΚΑ»... 2 Καταχωρητές... 3 Αριθμητική-λογική μονάδα... 3 Μονάδα μνήμης... 4 Μονάδα Εισόδου - Εξόδου... 5 Μονάδα ελέγχου... 5 Ρεπερτόριο Εντολών «ΑΒΑΚΑ»... 6 Φάση

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 ΑΠΑΝΤΗΣΕΙΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 Μάθημα : Μικροϋπολογιστές Τεχνολογία Τ.Σ. Ι, Θεωρητικής κατεύθυνσης Ημερομηνία

Διαβάστε περισσότερα

Κεφάλαιο Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων.

Κεφάλαιο Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων. Α Γενικού Λυκείου Κεφάλαιο 1 1.1 Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων. Ιδιαίτερη θέση έχουν οι Υπολογιστικές συσκευές. Μηχανισμός

Διαβάστε περισσότερα

Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή

Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή 1.5.1 Ανάλυση των μερών ενός υπολογιστή Μονάδα συστήματος Είναι το κουτί του υπολογιστή το οποίο φαίνεται αρκετά συμπαγές, αλλά στην πραγματικότητα αποτελείται

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2013 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή

Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή Στοιχεία αρχιτεκτονικής μικροεπεξεργαστή Αριθμός bit δίαυλου δεδομένων (Data Bus) Αριθμός bit δίαυλου διευθύνσεων (Address Bus) Μέγιστη συχνότητα λειτουργίας (Clock Frequency) Τύποι εντολών Αριθμητική

Διαβάστε περισσότερα

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

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ (Τμήματα Υπολογιστή) ΕΚΠΑΙΔΕΥΤΗΣ:ΠΟΖΟΥΚΙΔΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΤΜΗΜΑΤΑ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ Κάθε ηλεκτρονικός υπολογιστής αποτελείται

Διαβάστε περισσότερα

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

Συστήματα Μικροϋπολογιστών Συστήματα Μικροϋπολογιστών Ο Μικροεπεξεργαστής 8085 K. ΠΕΚΜΕΣΤΖΗ Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται

Διαβάστε περισσότερα

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ 1. Παρακάτω δίνονται μερικοί από τους ακροδέκτες που συναντάμε στην πλειοψηφία των μικροεπεξεργαστών. Φτιάξτε έναν πίνακα που να

Διαβάστε περισσότερα

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07 Ενότητα 4 Εισαγωγή στην Πληροφορική Κεφάλαιο 4Α: Αναπαράσταση πληροφορίας Κεφάλαιο 4Β: Επεξεργαστές που χρησιµοποιούνται σε PCs Χειµερινό Εξάµηνο 2006-07 ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Εισαγωγή

Διαβάστε περισσότερα

Ερωτήσεις θεωρίας MY. Μέρος Α. Υλικό.

Ερωτήσεις θεωρίας MY. Μέρος Α. Υλικό. Ερωτήσεις θεωρίας MY Μέρος Α. Υλικό. 1. Η μνήμη ROM είναι συνδυαστικό ή ακολουθιακό κύκλωμα; 2. α) Να σχεδιαστεί μία μνήμη ROM που να δίνει στις εξόδους της το πλήθος των ημερών του μήνα, ο αριθμός του

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2015 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, 2016-2017 ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ Μικροϋπολογιστής Υπολογιστής που χρησιμοποιείται για την είσοδο, επεξεργασία και έξοδο πληροφοριών. Είδη μικροϋπολογιστών:

Διαβάστε περισσότερα

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής)

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής) ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Α Γενικού Λυκείου (Μάθημα Επιλογής) Σύγχρονα Υπολογιστικά Συστήματα τους υπερυπολογιστές (supercomputers) που χρησιμοποιούν ερευνητικά εργαστήρια τα μεγάλα συστήματα (mainframes)

Διαβάστε περισσότερα

Το εσωτερικό ενός PC. Τεχνολογία Η/Υ & Πληροφοριών - 05 Κεντρική μονάδα Χουρδάκης Μανόλης

Το εσωτερικό ενός PC. Τεχνολογία Η/Υ & Πληροφοριών - 05 Κεντρική μονάδα Χουρδάκης Μανόλης Το εσωτερικό ενός PC 1 Το κουτί του PC (περίβλημα) περιέχει όλα τα βασικά μέρη του συστήματος Δύο κατηγορίες κουτιών: Desktop και Tower Mini tower Midi tower Full tower Κεντρική μονάδα Ο τύπος του κουτιού

Διαβάστε περισσότερα

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας Κεφάλαιο 3 ο Αρχιτεκτονική Υπολογιστών Μάθημα 3.: Κεντρική Μονάδα Επεξεργασίας Όταν ολοκληρώσεις το κεφάλαιο θα μπορείς: Να σχεδιάζεις την εσωτερική δομή της ΚΜΕ και να εξηγείς τη λειτουργία των επιμέρους

Διαβάστε περισσότερα

ΗΛΕΚΤΡΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ

ΗΛΕΚΤΡΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ Άριστος Πασιάς 1 ΗΛΕΚΤΡΟΝΙΚΟΙ ΥΠΟΛΟΓΙΣΤΕΣ Η ΔΟΜΗ ΤΟΥ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ Άριστος Πασιάς Σεπτέμβριος 2017 2 Στόχοι: Στο τέλος αυτού του μαθήματος ο μαθητή πρέπει: Να μπορεί να αναφέρει τα κύρια χαρακτηριστικά

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2014 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 201 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Τμήμα Λογιστικής Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Μάθημα 8 Κεντρική Μονάδα Επεξεργασίας και Μνήμη 1 Αρχιτεκτονική του Ηλεκτρονικού Υπολογιστή Μονάδες Εισόδου Κεντρική

Διαβάστε περισσότερα

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι)

Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ) Τμήματα ΚΜΕ (CPU) Ένα τυπικό υπολογιστικό σύστημα σήμερα. Οργάνωση Υπολογιστών (Ι) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα

Διαβάστε περισσότερα

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

Οργάνωση Υπολογιστών (Ι) Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2014-15 Οργάνωση Υπολογιστών (Ι) (η κεντρική μονάδα επεξεργασίας) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Ένα

Διαβάστε περισσότερα

ΠΛΗ10 Κεφάλαιο 2. ΠΛΗ10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.1: Bασική Δομή του Υπολογιστή

ΠΛΗ10 Κεφάλαιο 2. ΠΛΗ10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.1: Bασική Δομή του Υπολογιστή Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.1: Bασική Δομή του Υπολογιστή Στόχοι Μαθήματος: Να γνωρίσετε τις βασικές λειτουργίες ενός Η/Υ. Να γνωρίσετε τις έννοιες δεδομένα, πληροφορία, επεξεργασία,

Διαβάστε περισσότερα

Προηγμένοι Μικροεπεξεργαστές. Εργαστήριο 4 - Editor

Προηγμένοι Μικροεπεξεργαστές. Εργαστήριο 4 - Editor Προηγμένοι Μικροεπεξεργαστές Εργαστήριο 4 - Editor Περιγραφή Υλοποίηση ενός υποτυπώδους editor που θα: Διαβάζει ένα προκαθορισμένο αρχείο Θα το απεικονίζει στην οθόνη Θα κάνει highlight με έναν ελεγχόμενο

Διαβάστε περισσότερα

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή 1 Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή μνήμη(cache). Η cache είναι πολύ σημαντική, πολύ γρήγορη,

Διαβάστε περισσότερα

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

Συστήματα Μικροϋπολογιστών Συστήματα Μικροϋπολογιστών Είσοδος / Έξοδος Δεδομένων Υπεύθυνος Μαθήματος: K. ΠΕΚΜΕΣΤΖΗ Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ. Αρχιτεκτονική Η/Υ ΗΜΟΣ ΜΠΟΛΑΝΑΚΗΣ

ΕΙΣΑΓΩΓΗ. Αρχιτεκτονική Η/Υ ΗΜΟΣ ΜΠΟΛΑΝΑΚΗΣ ΕΙΣΑΓΩΓΗ Θέµατα ❸Συστήµατα Η/Υ (αναφορά) ❸Γλώσσα υπολογιστών ❸Γλώσσες προγραµµατισµού (low-high level) ❸Low level VS high level programming ❸Βασικά µέρη Η/Υ ❸Μικροϋπολογιστές (µc µp) ❸Αρχιτεκτονική µικροελεγκτών

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ 4 ο Μάθημα. Το Υλικό του Υπολογιστή

ΠΛΗΡΟΦΟΡΙΚΗ 4 ο Μάθημα. Το Υλικό του Υπολογιστή ΠΛΗΡΟΦΟΡΙΚΗ 4 ο Μάθημα Το Υλικό του Υπολογιστή Ηλεκτρονικός Υπολογιστής Πουλιέται οπουδήποτε (ακόμη και σε Super Market) Είναι παντού Ο φορητός έχει τις ίδιες δυνατότητες με τον επιτραπέζιο Γίνονται μικρότεροι

Διαβάστε περισσότερα

Σελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για:

Σελίδα 1 από 11. Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για: Σελίδα 1 από 11 Απαντήσεις στο φυλλάδιο 57 Ερώτηση: 1 η : Οι ακροδέκτες αυτοί χρησιµοποιούνται για: την επικοινωνία, µε τα υπόλοιπα ολοκληρωµένα κυκλώµατα του υπολογιστικού συστήµατος. την παροχή τροφοδοσίας

Διαβάστε περισσότερα

Εφαρμογές μικροελεγκτών

Εφαρμογές μικροελεγκτών Μικροελεγκτές Έναν ορισμό που θα μπορούσαμε να δώσουμε για τους μικροελεγκτές είναι ο εξής: Μικροελεγκτής είναι ένα προγραμματιζόμενο ολοκληρωμένο κύκλωμα το οποίο διαθέτει επεξεργαστή, μνήμη, διάφορα

Διαβάστε περισσότερα

*Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους.

*Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους. Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους. *Τα φυσικά μέρη που μπορούμε να δούμε και να αγγίξουμε ονομάζονται συνολικά υλικό (hardware). * * υπερυπολογιστές

Διαβάστε περισσότερα

Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας

Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας 4.1 Γενικά Ο υπολογιστής επεξεργάζεται δεδομένα ακολουθώντας βήμα βήμα, τις εντολές ενός προγράμματος. Το τμήμα του υπολογιστή, που εκτελεί τις εντολές και συντονίζει

Διαβάστε περισσότερα

Βασικές Έννοιες της Πληροφορικής

Βασικές Έννοιες της Πληροφορικής Βασικές Έννοιες της Πληροφορικής Ηλεκτρονικός Υπολογιστής Αυτόματη ηλεκτρονική μηχανή που δέχεται, φυλάσσει, επαναφέρει, επεξεργάζεται και παρουσιάζει πληροφορίες σύμφωνα με προκαθορισμένες εντολές. Δεδομένα

Διαβάστε περισσότερα

Σελίδα 1 από 12. Απαντήσεις στο φυλλάδιο 55. Ερώτηση 1 η : Ένα υπολογιστικό σύστηµα αποτελείται από:

Σελίδα 1 από 12. Απαντήσεις στο φυλλάδιο 55. Ερώτηση 1 η : Ένα υπολογιστικό σύστηµα αποτελείται από: Σελίδα 1 από 12 Απαντήσεις στο φυλλάδιο 55 Ερώτηση 1 η : Ένα υπολογιστικό σύστηµα αποτελείται από: (α) Κεντρική Μονάδα Επεξεργασίας. (β) Κύρια Μνήµη. (γ) Μονάδες εισόδου. (δ) Μονάδες εξόδου. (ε) Βοηθητική

Διαβάστε περισσότερα

ΜΑΘΗΜΑ: ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ ΘΕΜΑΤΑ ΙΟΥΝΙΟΥ 2014

ΜΑΘΗΜΑ: ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ ΘΕΜΑΤΑ ΙΟΥΝΙΟΥ 2014 ΜΑΘΗΜΑ: ΜΙΚΡΟΫΠΟΛΟΓΙΣΤΕΣ ΘΕΜΑΤΑ ΙΟΥΝΙΟΥ 2014 Καθηγητής:Νικολαΐδης Νικ. ΑΠΑΝΤΗΣΕΙΣ Ημ/νία εξέτασης:30-6-2014 ΘΕΜΑ 1 α) Να σχεδιαστεί μία μνήμη ROM που να δίνει στις εξόδους της το πλήθος των ημερών του

Διαβάστε περισσότερα

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία Το 1944 με την κατασκευή του υπολογιστή Mark I από τον Howard Aiken και την εταιρεία κατασκευής ηλεκτρονικών υπολογιστών IBM και από το 1950 μπήκανε

Διαβάστε περισσότερα

Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών

Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών Η επεξεργασία των δεδομένων ακολουθεί μια στερεότυπη διαδρομή: τα δεδομένα εισάγονται στο υπολογιστικό σύστημα, υφίστανται μια ορισμένη επεξεργασία και

Διαβάστε περισσότερα

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

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ 1.1 ΕΙΣΑΓΩΓΙΚΗ ΑΝΑΦΟΡΑ ΣΤΑ ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ 1 1.1.1 Σήματα ψηφιακών συστημάτων 1 1.1.2 Παράλληλη και σειριακή μεταφορά πληροφορίας 2 1.1.3 Λογική τριών

Διαβάστε περισσότερα

Κεντρική Μονάδα Επεξεργασίας

Κεντρική Μονάδα Επεξεργασίας Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Αρχιτεκτονική Υπολογιστών 2016-17 Κεντρική Μονάδα Επεξεργασίας (Σχεδιασμός και λειτουργία μιας απλής ΚΜΕ) http://mixstef.github.io/courses/comparch/ Μ.Στεφανιδάκης

Διαβάστε περισσότερα

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

Ι ΑΣΚΩΝ ΚΑΘΗΓΗΤΗΣ: ΚΑΘΗΓΗΤΗΣ ΕΦΑΡΜΟΓΩΝ ΠΑΡΑΡΤΗΜΑ ΚΑΣΤΟΡΙΑΣ ΤΕΙ ΥΤΙΚΗΣ ΜΑΚΕ ΟΝΙΑΣ Ι ΑΣΚΩΝ ΚΑΘΗΓΗΤΗΣ: ΦΩΤΙΑ ΗΣ Α. ΗΜΗΤΡΗΣ M.Sc. ΚΑΘΗΓΗΤΗΣ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Τ.Ε. ΠΑΡΑΡΤΗΜΑ ΚΑΣΤΟΡΙΑΣ ΤΕΙ ΥΤΙΚΗΣ ΜΑΚΕ ΟΝΙΑΣ ΙΑΚΟΠΕΣ (INTERRUPTS) ΟΙ ΙΑΚΟΠΕΣ ΕΙΝΑΙ «ΣΥΜΒΑΝΤΑ», ΕΣΩΤΕΡΙΚΑ

Διαβάστε περισσότερα

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

ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ ΕΡΓΑΣΤΗΡΙΟ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ Η/Υ 4 ο Εξάμηνο Μαδεμλής Ιωάννης ΛΟΓΙΚΕΣ ΠΡΑΞΕΙΣ Οι λογικές πράξεις που υποστηρίζει η Assembly του 8088 είναι : Πράξη AND Πράξη OR Πράξη NOT Πράξη XOR Με τις λογικές πράξεις μπορούμε

Διαβάστε περισσότερα

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

ΘΕΜΑΤΑ & ΕΝΔΕΙΚΤΙΚΕΣ ΛΥΣΕΙΣ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Θεματική Ενότητα Ακαδημαϊκό Έτος 2010 2011 Ημερομηνία Εξέτασης Κυριακή 26.6.2011 Ώρα Έναρξης Εξέτασης

Διαβάστε περισσότερα

Μαλούτα Θεανώ Σελίδα 1

Μαλούτα Θεανώ Σελίδα 1 ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Α' ΛΥΚΕΙΟΥ ΕΝΟΤΗΤΑ 1η ΕΡΩΤΗΣΕΙΣ ΘΕΩΡΙΑΣ 1. Τι ονομάζουμε υλικό και τι λογισμικό ενός υπολογιστικού συστήματος; 2. Τι είναι α) η μητρική πλακέτα ( motherboard), β) η κεντρική μονάδα

Διαβάστε περισσότερα

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή 1. Ηλεκτρονικός Υπολογιστής Ο Ηλεκτρονικός Υπολογιστής είναι μια συσκευή, μεγάλη ή μικρή, που επεξεργάζεται δεδομένα και εκτελεί την εργασία του σύμφωνα με τα παρακάτω

Διαβάστε περισσότερα

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM). Μνήμες Ένα από τα βασικά πλεονεκτήματα των ψηφιακών συστημάτων σε σχέση με τα αναλογικά, είναι η ευκολία αποθήκευσης μεγάλων ποσοτήτων πληροφοριών, είτε προσωρινά είτε μόνιμα Οι πληροφορίες αποθηκεύονται

Διαβάστε περισσότερα

Μικροεπεξεργαστές. Σημειώσεις Μαθήματος Υπεύθυνος: Δρ Άρης Παπακώστας,

Μικροεπεξεργαστές. Σημειώσεις Μαθήματος Υπεύθυνος: Δρ Άρης Παπακώστας, Μικροεπεξεργαστές Σημειώσεις Μαθήματος 2013-14 Υπεύθυνος: Δρ Άρης Παπακώστας, Η γλώσσα assembly είναι μια γλώσσα προγραμματισμού χαμηλού επιπέδου για συγκεκριμένους υπολογιστές ή άλλη προγραμματιζόμενη

Διαβάστε περισσότερα

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 5

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 5 ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 5 22 Σεπτεµβρίου, 2006 Γεώργιος Έλληνας Επίκουρος Καθηγητής ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΑ ΘΕΜΑΤΑ

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012 ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2012 ΤΕΧΝΟΛΟΓΙΑ (Ι) ΤΕΧΝΙΚΩΝ ΣΧΟΛΩΝ ΘΕΩΡΗΤΙΚΗΣ ΚΑΤΕΥΘΥΝΣΗΣ Μάθημα : Μικροϋπολογιστές

Διαβάστε περισσότερα

Ηλεκτρονικοί Υπολογιστές Δ Εξάμηνο

Ηλεκτρονικοί Υπολογιστές Δ Εξάμηνο AEN ΗΠΕΙΡΟΥ ΣΧΟΛΗ ΠΛΟΙΑΡΧΩΝ Ηλεκτρονικοί Υπολογιστές Δ Εξάμηνο ΘΕΩΡΙΑ 3 η Διάλεξη ΧΑΣΑΝΗΣ ΒΑΣΙΛΕΙΟΣ ΥΠΟΛΟΓΙΣΤΙΚΟ ΣΥΣΤΗΜΑ Υπολογιστικό σύστημα: Ένα δυναμικό σύστημα που: Χρησιμοποιείται για επίλυση προβλημάτων

Διαβάστε περισσότερα

Το υλικό του υπολογιστή

Το υλικό του υπολογιστή Το υλικό του υπολογιστή Ερωτήσεις 1. Τι αντιλαμβάνεστε με τον όρο υλικό; Το υλικό(hardware) αποτελείται από το σύνολο των ηλεκτρονικών τμημάτων που συνθέτουν το υπολογιστικό σύστημα, δηλαδή από τα ηλεκτρονικά

Διαβάστε περισσότερα

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

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006 ΑΠΑΝΤΗΣΕΙΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006 Μάθημα : Μικροϋπολογιστές Τεχνολογία Τ.Σ. Ι, Θεωρητικής κατεύθυνσης Ημερομηνία

Διαβάστε περισσότερα

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ Η Κεντρική Μονάδα Επεξεργασίας (Central Processing Unit -CPU) ή απλούστερα επεξεργαστής αποτελεί το μέρος του υλικού που εκτελεί τις εντολές ενός προγράμματος υπολογιστή

Διαβάστε περισσότερα

Εργαστήριο Δομής και Λειτουργίας Μικροϋπολογιστών. Βοήθημα εκτέλεσης εργαστηριακής άσκησης 3: Εντολές λογικών πράξεων και εντολές κλήσης ρουτινών

Εργαστήριο Δομής και Λειτουργίας Μικροϋπολογιστών. Βοήθημα εκτέλεσης εργαστηριακής άσκησης 3: Εντολές λογικών πράξεων και εντολές κλήσης ρουτινών Εργαστήριο Δομής και Λειτουργίας Μικροϋπολογιστών Βοήθημα εκτέλεσης εργαστηριακής άσκησης 3: Εντολές λογικών πράξεων και εντολές κλήσης ρουτινών Άσκηση 1 (σύνοψη της εκφώνησης) [Εκτέλεση λογικών πράξεων]

Διαβάστε περισσότερα

Φουκαράκη Χρυσούλα - ΓΕΛ Γαζίου

Φουκαράκη Χρυσούλα - ΓΕΛ Γαζίου ΚΕΦΑΛΑΙΟ 1 Φουκαράκη Χρυσούλα - ΓΕΛ Γαζίου Υπολογιστικά συστήματα σχεδιάστηκαν για να καλύψουν συγκεκριμένες ανάγκες σε συγκεκριμένη χρονική στιγμή και βοηθούν στη συνολική πρόοδο της τεχνολογίας Φουκαράκη

Διαβάστε περισσότερα

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

Αρχιτεκτονική υπολογιστών 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Αρχιτεκτονική υπολογιστών Ενότητα 11-12 : Δομή και Λειτουργία της CPU Ευάγγελος Καρβούνης Παρασκευή, 22/01/2016 2 Οργάνωση της CPU Η CPU πρέπει:

Διαβάστε περισσότερα

Περιεχόµενα. I Βασικές Γνώσεις 1

Περιεχόµενα. I Βασικές Γνώσεις 1 Περιεχόµενα I Βασικές Γνώσεις 1 1 Μοντελοποίηση Προγραµµάτων 3 1.1 Ψευδογλώσσα....................... 6 1.2 Διαγράµµατα Ροής..................... 6 1.3 Παραδείγµατα σε Ψευδογλώσσα και Διαγράµµατα Ροής.

Διαβάστε περισσότερα

Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ. Εισαγωγή

Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ. Εισαγωγή Εισαγωγή Εργαστήριο 3 ΟΡΓΑΝΩΣΗ ΤΗΣ ΚΜΕ Σκοπός του εργαστηρίου είναι να γνωρίσουµε την εσωτερική δοµή και αρχιτεκτονική της κεντρικής µονάδας επεξεργασίας, να κατανοήσουµε τον τρόπο µε τον οποίο λειτουργεί

Διαβάστε περισσότερα

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

; Οι HL δείχνουν την επόµενη θέση µνήµης MVI A, 38H CMP H JNZ DO_FLMEM ; POP B. ; Ανάκτηση καταχωρητών απο το σωρό. ΑΣΚΗΣΗ 1 η 1. Να γραφεί πρόγραµµα σε µνηµονική γλώσσα assembly 8085, υπό µορφή υπορουτίνας, (µε τις απαραίτητες αρχικοποιήσεις), που να γεµίζει τις θέσεις µνήµης RAM από 3400-37FF Hex, µε περιεχόµενα αυξηµένα

Διαβάστε περισσότερα

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

Υπολογιστές Ι. Άδειες Χρήσης. Εισαγωγή. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Άδειες Χρήσης Υπολογιστές Ι Εισαγωγή Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης

Διαβάστε περισσότερα

Μάθημα 7: Μικροϋπολογιστικό Σύστημα και Μνήμες

Μάθημα 7: Μικροϋπολογιστικό Σύστημα και Μνήμες Μάθημα 7: Μικροϋπολογιστικό Σύστημα και Μνήμες 7.1 Αρχιτεκτονική μνημών σε υπολογιστικό σύστημα Σε ένα υπολογιστικό σύστημα υπάρχουν συνήθως περισσότερες από μία μνήμες. Επειδή η χωρητικότητα ενός μόνο

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Πανεπιστήμιο Δυτικής Μακεδονίας Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 3: Καταχωρητές, Τμήματα, Διευθυνσιοδότηση Μνήμης, SEGMENT, MOV, ADD, SUB, INT, TITLE, LEA

Διαβάστε περισσότερα

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

Εισαγωγή στην Πληροφορική Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Εισαγωγή στην Πληροφορική Ενότητα 8: Λειτουργικά Συστήματα Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

Αρχιτεκτονική Eckert-von Neumann. Πως λειτουργεί η ΚΜΕ; Κεντρική μονάδα επεξεργασίας [3] ΕΠΛ 031: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

Αρχιτεκτονική Eckert-von Neumann. Πως λειτουργεί η ΚΜΕ; Κεντρική μονάδα επεξεργασίας [3] ΕΠΛ 031: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Αρχιτεκτονική Eckert-von Neumann εισόδου μεταφορά δεδομένων από έξω προς τον Η/Υ εξόδου μεταφορά δεδομένων από τον Η/Υ προς τα έξω ΕΠΛ 031: ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ Κύκλος Μηχανής κεντρικός έλεγχος/πράξεις

Διαβάστε περισσότερα

Εργαστήριο Δομής και Λειτουργίας Μικροϋπολογιστών. Βοήθημα εκτέλεσης εργαστηριακής άσκησης 5: Εξωτερικές διακοπές του 8051

Εργαστήριο Δομής και Λειτουργίας Μικροϋπολογιστών. Βοήθημα εκτέλεσης εργαστηριακής άσκησης 5: Εξωτερικές διακοπές του 8051 Εργαστήριο Δομής και Λειτουργίας Μικροϋπολογιστών Βοήθημα εκτέλεσης εργαστηριακής άσκησης 5: Εξωτερικές διακοπές του 8051 Ο κώδικας για την παρούσα εργαστηριακή άσκηση σας δίδεται κατά το μεγαλύτερο μέρος

Διαβάστε περισσότερα

Μάθημα 3: Αρχιτεκτονική Υπολογιστών

Μάθημα 3: Αρχιτεκτονική Υπολογιστών Μάθημα 3: Αρχιτεκτονική Υπολογιστών 3.1 Περιφερειακές μονάδες και τμήμα επεξεργασίας Στην καθημερινή μας ζωή ερχόμαστε συνέχεια σε επαφή με υπολογιστές. Ο υπολογιστής είναι μια συσκευή που επεξεργάζεται

Διαβάστε περισσότερα

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

Ψηφιακή Λογική Σχεδίαση Ψηφιακή Λογική Σχεδίαση Επιμέλεια: Γεώργιος Θεοδωρίδης, Επίκουρος Καθηγητής Ανδρέας Εμερετλής, Υποψήφιος Διδάκτορας Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Σημείωμα Αδειοδότησης Το παρόν

Διαβάστε περισσότερα

(Ιούνιος 2001 ΤΕΕ Ηµερήσιο) Σε κάθε µία από τις παρακάτω περιπτώσεις, να

(Ιούνιος 2001 ΤΕΕ Ηµερήσιο) Σε κάθε µία από τις παρακάτω περιπτώσεις, να Κεεφάάλλααι ιοο:: 3Β ο Τίττλλοοςς Κεεφααλλααί ίοουυ: : Αρχιτεκτονική Ηλ/κου Τµήµατος των Υπολ. Συστηµάτων (Ιούνιος 2001 ΤΕΕ Ηµερήσιο) Σε κάθε µία από τις παρακάτω περιπτώσεις, να αναφέρετε τις τιµές των

Διαβάστε περισσότερα

ΠΑΡΑ ΕΙΓΜΑ 8 ΓΕΝΝΗΤΡΙΑ ΨΕΥ ΟΤΥΧΑΙΩΝ ΑΡΙΘΜΩΝ (PSEUDORANDOM GENERATOR) 8.0 ΓΕΝΙΚΑ

ΠΑΡΑ ΕΙΓΜΑ 8 ΓΕΝΝΗΤΡΙΑ ΨΕΥ ΟΤΥΧΑΙΩΝ ΑΡΙΘΜΩΝ (PSEUDORANDOM GENERATOR) 8.0 ΓΕΝΙΚΑ ΠΑΡΑ ΕΙΓΜΑ 8 ΓΕΝΝΗΤΡΙΑ ΨΕΥ ΟΤΥΧΑΙΩΝ ΑΡΙΘΜΩΝ (PSEUDORANDOM GENERATOR) 8. ΓΕΝΙΚΑ Στο παράδειγµα αυτό θα εξοµοιώσουµε ένα Hardware µοντέλο µιας ψευδοτυχαίας γεννήτριας αριθµών χρησιµοποιώντας τις εντολές

Διαβάστε περισσότερα

Οργάνωση και Αρχιτεκτονική Υπολογιστών. Κεφάλαιο 7.4

Οργάνωση και Αρχιτεκτονική Υπολογιστών. Κεφάλαιο 7.4 Οργάνωση και Αρχιτεκτονική Υπολογιστών Κεφάλαιο 7.4 Ε/Ε Οδηγούμενη από Διακοπές Το πρόβλημα με την προγραμματιζόμενη Ε/Ε είναι ότι ο επεξεργαστής πρέπει να περιμένει ώστε η μονάδα Ε/Ε που τον ενδιαφέρει

Διαβάστε περισσότερα

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

Εισαγωγή στην πληροφορική Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Εισαγωγή στην πληροφορική Ενότητα 2: Βασικές αρχές λειτουργίας και χρήσης του υπολογιστή Αγγελίδης Παντελής Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Συστήματα Μικροϋπολογιστών Συστήματα Μικροϋπολογιστών Συστήματα Διακοπών Υπεύθυνος Μαθήματος: K. ΠΕΚΜΕΣΤΖΗ Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες,

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ

ΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΨΗΦΙΑΚΑ ΟΛΟΚΛΗΡΩΜΕΝΑ ΗΛΕΚΤΡΟΝΙΚΑ ΚΑΙ ΣΥΣΤΗΜΑΤΑ ΟΜΑ Α Α Αριθµητική Λογική Μονάδα των 8-bit 1. Εισαγωγή Γενικά µια αριθµητική λογική µονάδα (ALU, Arithmetic Logic Unit)

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Κ. Δεμέστιχας Εργαστήριο Πληροφορικής Γεωπονικό Πανεπιστήμιο Αθηνών Επικοινωνία μέσω e-mail: cdemest@aua.gr, cdemest@cn.ntua.gr 1 2. ΑΡΙΘΜΗΤΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ ΜΕΡΟΣ Α 2 Τεχνολογία

Διαβάστε περισσότερα

Λογικά σύμβολα των CPU, RAM, ROM και I/O module

Λογικά σύμβολα των CPU, RAM, ROM και I/O module Μικροϋπολογιστές Λογικά σύμβολα των CPU, RAM, ROM και I/O module Data CPU Data Data Address RAM Control Address Control External Data Data Address Control I/O module External Data External Control ROM

Διαβάστε περισσότερα

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

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 2: Καταχωρητές, HelloWorld σε 8086, emu8086 emulator Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων

Διαβάστε περισσότερα

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 9

ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 9 ΗΜΥ 100 Εισαγωγή στην Τεχνολογία ιάλεξη 9 3 Οκτωβρίου, 2004 Ηλίας Κυριακίδης Λέκτορας ΤΑ ΘΕΜΑΤΑ ΜΑΣ ΣΗΜΕΡΑ Ηλεκτρονικοί υπολογιστές Υλικό και λογισµικό Κεντρική Μονάδα Επεξεργασίας Μνήµη Προγραµµατισµός

Διαβάστε περισσότερα

Συμβολική γλώσσα Εκπαιδευτικού Υπολογιστή - Λογισμικό Υπολογιστών

Συμβολική γλώσσα Εκπαιδευτικού Υπολογιστή - Λογισμικό Υπολογιστών Συμβολική γλώσσα Εκπαιδευτικού Υπολογιστή - Λογισμικό Υπολογιστών Πρόγραμμα σε γλώσσα μηχανής του ΕΚΥ Θέση μνήμης Περιεχόμενα μνήμης Εντολή (assembly) 0 0001 000000000011 lda 3 1 0011 000000000100 ada

Διαβάστε περισσότερα

8051 Interrupt Ports. Name Alternate Function

8051 Interrupt Ports. Name Alternate Function Σκοπόςτης Διάλεξης Εισαγωγήστις πηγές διακοπών (interrupts) και στον τρόπο που αυτές είναι διαχειρίσιμες από την αρχιτεκτονική 8051 Πώς συνδέονται οι διακόπτες και τα πληκτρολόγια σε ένα μικροϋπολογιστή

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Βασική δοµή και Λειτουργία Υπολογιστή

Βασική δοµή και Λειτουργία Υπολογιστή Βασική δοµή και Λειτουργία Υπολογιστή Η τεχνολογία των Η/Υ έχει βασιστεί στη λειτουργία του ανθρώπινου οργανισµού. Οπως ο άνθρωπος πέρνει εξωτερικά ερεθίσµατα από το περιβάλλον τα επεξεργάζεται και αντιδρά

Διαβάστε περισσότερα

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΑ ΗΛΕΚΤΡΟΝΙΚΑ

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΑ ΗΛΕΚΤΡΟΝΙΚΑ ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΑ ΗΛΕΚΤΡΟΝΙΚΑ 1.1 ΕΙΣΑΓΩΓΗ ΣΤΑ ΑΝΑΛΟΓΙΚΑ ΗΛΕΚΤΡΟΝΙΚΑ 1 1.1.1 Αναλογικά σήματα 1 1.1.2 Οι αντιστάσεις 3 1.1.3 Οι πυκνωτές 7 1.1.4 Τα πηνία 11 1.1.5 Οι δίοδοι 13 1.1.6

Διαβάστε περισσότερα

Μάθημα 10 ο ΔΙΑΧΕΙΡΙΣΗ ΕΙΣΟΔΟΥ ΕΞΟΔΟΥ (INPUT/OUTPUT)

Μάθημα 10 ο ΔΙΑΧΕΙΡΙΣΗ ΕΙΣΟΔΟΥ ΕΞΟΔΟΥ (INPUT/OUTPUT) Μάθημα 10 ο ΔΙΑΧΕΙΡΙΣΗ ΕΙΣΟΔΟΥ ΕΞΟΔΟΥ (INPUT/OUTPUT) Τι είναι Είσοδος και τι Έξοδος Με τον όρο Είσοδο (Input) αναφερόμαστε στη ροή δεδομένων προς την Κεντρική Μονάδα Επεξεργασίας (ΚΜΕ), ενώ με τον όρο

Διαβάστε περισσότερα

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Γ ΕΠΑΛ 14 / 04 / 2019

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Γ ΕΠΑΛ 14 / 04 / 2019 Γ ΕΠΑΛ 14 / 04 / 2019 ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΘΕΜΑ 1 ο 1. Να γράψετε στο τετράδιό σας το γράμμα καθεμιάς από τις παρακάτω προτάσεις και δίπλα τη λέξη ΣΩΣΤΟ, αν είναι σωστή ή τη λέξη ΛΑΘΟΣ, αν είναι λανθασμένη.

Διαβάστε περισσότερα

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

Συστήματα Μικροεπεξεργαστών Εργαστήριο 1 ο Εισαγωγή στον AVR Περίγραμμα Εργαστηριακής Άσκησης Εισαγωγή... 2 Κατηγορίες μικροελεγκτών AVR... 2 Εξοικείωση με το περιβάλλον AVR Studio 4... 3 Βήμα 1ο: Δημιουργία νέου έργου (project)...

Διαβάστε περισσότερα

Παραδείγματα Δεδομένων: Οι τιμές στο κυλικείο, μια λίστα από ονόματα, τα σήματα της τροχαίας.

Παραδείγματα Δεδομένων: Οι τιμές στο κυλικείο, μια λίστα από ονόματα, τα σήματα της τροχαίας. Δεδομένα Πληροφορίες Δεδομένα: Μια ομάδα από σύμβολα, αριθμούς, λέξεις που αντιπροσωπεύουν κάτι και θα χρησιμοποιηθούν σε μια επεξεργασία. Παραδείγματα Δεδομένων: Οι τιμές στο κυλικείο, μια λίστα από ονόματα,

Διαβάστε περισσότερα

SIMATIC MANAGER SIMATIC MANAGER

SIMATIC MANAGER SIMATIC MANAGER 1 Προγραμματισμός του PLC. 1. Γενικά Μια προσεκτική ματιά σε μια εγκατάσταση που θέλουμε να αυτοματοποιήσουμε, μας δείχνει ότι αυτή αποτελείται από επιμέρους τμήματα τα οποία είναι συνδεδεμένα μεταξύ τους

Διαβάστε περισσότερα

Μάθημα 3.8 Τεχνικές μεταφοράς δεδομένων Λειτουργία τακτικής σάρωσης (Polling) Λειτουργία Διακοπών DMA (Direct Memory Access)

Μάθημα 3.8 Τεχνικές μεταφοράς δεδομένων Λειτουργία τακτικής σάρωσης (Polling) Λειτουργία Διακοπών DMA (Direct Memory Access) Μάθημα 3.8 Τεχνικές μεταφοράς δεδομένων Λειτουργία τακτικής σάρωσης (Polling) Λειτουργία Διακοπών DMA (Direct Memory Access) Μελετώντας το μάθημα θα μπορείς να ξέρεις τη λειτουργία του Polling να ξέρεις

Διαβάστε περισσότερα

Συμβολική Γλώσσα στον ΑΒΑΚΑ

Συμβολική Γλώσσα στον ΑΒΑΚΑ Συμβολική Γλώσσα στον ΑΒΑΚΑ Τα προγράμματα που είναι γραμμένα σε γλώσσα μηχανής (machine language) περιέχουν τόσο τις εντολές όσο και τις διευθύνσεις μνήμης γραμμένες σε αριθμητική μορφή και μάλιστα στο

Διαβάστε περισσότερα

Μάθημα 8: Επικοινωνία Συσκευών με τον Επεξεργαστή

Μάθημα 8: Επικοινωνία Συσκευών με τον Επεξεργαστή Μάθημα 8: Επικοινωνία Συσκευών με τον Επεξεργαστή 8.1 Τακτική σάρωση (Polling) Ας υποθέσουμε ότι έχουμε ένα πληκτρολόγιο συνδεδεμένο σε ένα υπολογιστικό σύστημα. Το πληκτρολόγιο είναι μια μονάδα εισόδου.

Διαβάστε περισσότερα

MIPS Interactive Learning Environment. MILE Simulator. Version 1.0. User's Manual

MIPS Interactive Learning Environment. MILE Simulator. Version 1.0. User's Manual MILE Simulator Version 1.0 User's Manual Νοέμβριος, 2011 Περιεχόμενα 1. Εισαγωγή στον προσομοιωτή...2 1.1 Εγκατάσταση...2 1.2 Βοήθεια Διευκρινήσεις...2 2. Ξεκινώντας με τον προσομοιωτή...3 2.1 Το memory

Διαβάστε περισσότερα