9 ο Μαθητικό Συνέδριο Πληροφορικής Κεντρικής Μακεδονίας. "My Binary Logic" Ένας προσομοιωτής λογικών πυλών στο Scratch

Σχετικά έγγραφα
"My Binary Logic" Ένας προσομοιωτής λογικών πυλών στο Scratch

ΒΑΣΙΚΕΣ ΑΡΧΕΣ ΨΗΦΙΑΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ. Κεφάλαιο 3

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

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ. ΜΑΘΗΜΑ 2 ο. ΑΛΓΕΒΡΑ Boole ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

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

9. OIΚΟΥΜΕΝΙΚΕΣ ΠΥΛΕΣ ΠΟΛΛΑΠΛΩΝ ΕΙΣΟ ΩΝ

ΠΛΗ10 Κεφάλαιο 2. ΠΛH10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: : Αριθμητική περιοχή της ALU 2.5: Κυκλώματα Υπολογιστών

Ψηφιακά Κυκλώματα (1 ο μέρος) ΜΥΥ-106 Εισαγωγή στους Η/Υ και στην Πληροφορική

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

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

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

Αθροιστές. Ημιαθροιστής

4.1 Θεωρητική εισαγωγή

i Το τρανζίστορ αυτό είναι τύπου NMOS. Υπάρχει και το συμπληρωματικό PMOS. ; Τι συμβαίνει στο τρανζίστορ PMOS; Το τρανζίστορ MOS(FET)

σύνθεση και απλοποίησή τους θεωρήµατα της άλγεβρας Boole, αξιώµατα του Huntington, κλπ.

Αναλογικά & Ψηφιακά Κυκλώματα ιαφάνειες Μαθήματος ρ. Μηχ. Μαραβελάκης Εμ.

Ψηφιακά Συστήματα. 3. Λογικές Πράξεις & Λογικές Πύλες

Προγραμματισμός Ηλεκτρονικών Υπολογιστών 1

Κεφάλαιο 8. Αριθμητική Λογική μονάδα

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής

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

Κεφάλαιο 4. Λογική Σχεδίαση

Ψηφιακά Συστήματα. 6. Σχεδίαση Συνδυαστικών Κυκλωμάτων

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

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

Πανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Συνδυαστική Λογική. Επιμέλεια Διαφανειών: Δ.

ΑΣΚΗΣΗ 1 ΛΟΓΙΚΕΣ ΠΥΛΕΣ

a -j a 5 a 4 a 3 a 2 a 1 a 0, a -1 a -2 a -3

K15 Ψηφιακή Λογική Σχεδίαση 6: Λογικές πύλες και λογικά κυκλώματα

K15 Ψηφιακή Λογική Σχεδίαση 4+5: Άλγεβρα Boole

Αναλογικά & Ψηφιακά Κυκλώματα ιαφάνειες Μαθήματος ρ. Μηχ. Μαραβελάκης Εμ.

3. ΛΟΓΙΚΕΣ ΠΡΑΞΕΙΣ & ΛΟΓΙΚΕΣ ΠΥΛΕΣ

Εργαστήριο Εισαγωγής στη Σχεδίαση Συστημάτων VLSI

7. Ψηφιακά Ηλεκτρονικά

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

Γ2.1 Στοιχεία Αρχιτεκτονικής. Γ Λυκείου Κατεύθυνσης

Bubble Hack Οπτικοποίηση του αλγορίθμου ταξινόμησης Bubble Sort στο Scratch

Συνδυαστικά Κυκλώματα

επανενεργοποιηθεί Βιομηχανικά Ηλεκτρονικά - Κ.Ι.Κυριακόπουλος Control Systems Laboratory

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

Λογική Σχεδίαση Ι - Εξεταστική Φεβρουαρίου 2013 Διάρκεια εξέτασης : 160 Ονοματεπώνυμο : Α. Μ. Έτος σπουδών:

K24 Ψηφιακά Ηλεκτρονικά 4: Σχεδίαση Συνδυαστικών Κυκλωμάτων

e-book ΛΟΓΙΚΗ ΣΧΕΔΙΑΣΗ ΑΣΚΗΣΕΙΣ

Μάθημα 0: Εισαγωγή. Λευτέρης Καπετανάκης. ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΤΜΗΜΑ ΗΛΕΚΤΡΟΝΙΚΗΣ Άνοιξη 2011

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

Κεφάλαιο 2 Η έννοια και η παράσταση της πληροφορίας στον ΗΥ. Εφ. Πληροφορικής Κεφ. 2 Καραμαούνας Πολύκαρπος 1

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

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

Κεφάλαιο 4 : Λογική και Κυκλώματα

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος...9 ΚΕΦ. 1. ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ - ΚΩΔΙΚΕΣ

ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ. ιδάσκων : ρ. Β. ΒΑΛΑΜΟΝΤΕΣ. Πύλες - Άλγεβρα Boole 1

Υ52 Σχεδίαση Ψηφιακών Ολοκληρωμένων Κυκλωμάτων και Συστημάτων. Δεληγιαννίδης Σταύρος Φυσικός, MsC in Microelectronic Design

Κεφάλαιο 3. Λογικές Πύλες

ΑΣΠΑΙΤΕ Εργαστήριο Ψηφιακών Συστημάτων & Μικροϋπολογιστών Εργαστηριακές Ασκήσεις για το μάθημα «Λογική Σχεδίαση» ΑΣΚΗΣΗ 3 ΠΙΝΑΚΕΣ KARNAUGH

Ψηφιακή Σχεδίαση Εργαστηριο 1. Τμήμα: Μηχανικών Πληροφορικής κ Τηλεπικοινωνιών Διδάσκων: Δρ. Σωτήριος Κοντογιαννης Μάθημα 2 ου εξαμήνου

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

Η κανονική μορφή της συνάρτησης που υλοποιείται με τον προηγούμενο πίνακα αληθείας σε μορφή ελαχιστόρων είναι η Q = [A].

ΠΡΟΓΡΑΜΜΑ ΣΠΟΥ ΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ

Ενότητα 2 ΑΛΓΕΒΡΑ BOOLE ΛΟΓΙΚΕΣ ΠΥΛΕΣ

K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων

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

ΣΧΕΔΙΑΣΗ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

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

ΑΣΚΗΣΗ 3 ΣΥΝΔΥΑΣΤΙΚΑ ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ: ΑΝΑΛΥΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ

ΑΣΚΗΣΗ 8 η -9 η ΣΧΕΔΙΑΣΗ ΑΡΙΘΜΗΤΙΚΗΣ ΛΟΓΙΚΗΣ ΜΟΝΑΔΑΣ ΤΕΣΣΑΡΩΝ ΔΥΑΔΙΚΩΝ ΨΗΦΙΩΝ

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

w x y Υλοποίηση της F(w,x,y,z) με πολυπλέκτη 8-σε-1

Εκτέλεση πράξεων. Ψηφιακά Ηλεκτρονικά και Δυαδική Λογική. Πράξεις με δυαδικούς αριθμούς. Πράξεις με δυαδικούς αριθμούς

1 η Θεµατική Ενότητα : Αριθµητικά Κυκλώµατα. Επιµέλεια διαφανειών: Χρ. Καβουσιανός

2 η Θεµατική Ενότητα : Σύνθετα Συνδυαστικά Κυκλώµατα. Επιµέλεια διαφανειών: Χρ. Καβουσιανός

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

Κεφάλαιο 9. Ψηφιακά κυκλώματα - Άλγεβρα Boole

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

Συνδυαστικά Λογικά Κυκλώματα

C D C D C D C D A B

ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 3

Λογική Σχεδίαση Ψηφιακών Συστημάτων

Ελίνα Μακρή

Κεφάλαιο Τρία: Ψηφιακά Ηλεκτρονικά

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

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

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

Ελίνα Μακρή

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

Πρόγραμμα Επικαιροποίησης Γνώσεων Αποφοίτων

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

ΜΑΘΗΜΑ: Ψηφιακά Συστήματα

Ύλη Λογικού Σχεδιασµού Ι

Κεφάλαιο 5. Λογικά κυκλώματα

4. ΝΟΜΟΙ ΔΥΑΔΙΚΗΣ ΑΛΓΕΒΡΑΣ

ΚΕΦΑΛΑΙΟ 3 ΘΕΜΑΤΑ ΨΗΦΙΑΚΗΣ ΣΧΕΔΙΑΣΗΣ

3. Απλοποίηση Συναρτήσεων Boole

ΗΜΥ-210: Σχεδιασμός Ψηφιακών Συστημάτων

f(x, y, z) = y z + xz

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

Οι Εξελικτικοί Αλγόριθμοι (ΕΑ) είναι καθολικοί στοχαστικοί αλγόριθμοι βελτιστοποίησης, εμπνευσμένοι από τις βασικές αρχές της φυσικής εξέλιξης.

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι. Μάθημα 4 ο Πράξεις με bits. Δρ.

Αρχιτεκτονικές Υπολογιστών BOOLEAN ALGEBRA

Transcript:

9 ο Μαθητικό Συνέδριο Πληροφορικής Κεντρικής Μακεδονίας Θεσσαλονίκη, 25-28 Απριλίου 2017, ΝΟΗΣΙΣ "My Binary Logic" Ένας προσομοιωτής λογικών πυλών στο Scratch Κωνσταντίνος Παρασκευόπουλος Καθηγητής Πληροφορικής ΠΕ19 MSc Μαθητές Γ Γυμνασίου Ελληνικό Κολλέγιο Θεσσαλονίκης Εκπαιδευτικός Οργανισμός Ελληνικό Κολλέγιο Θεσσαλονίκης

Εισαγωγή Ο σκοπός της εργασίας Στην παρακάτω εργασία, χρησιμοποιήσαμε τη γλώσσα προγραμματισμού Scratch για να οπτικοποιήσουμε και να προσομοιώσουμε τη λειτουργία μερικών από τις πλέον βασικές λογικές πύλες. Συγκεκριμένα σχεδιάσαμε και προγραμματίσαμε τη λειτουργία των πυλών OR, AND, NOT, NAND, NOR, XOR και XNOR. Στη συνέχεια χρησιμοποιήσαμε τις παραπάνω πύλες για να δημιουργήσουμε και να προσομοιώσουμε τη λειτουργία πιο σύνθετων λογικών κυκλωμάτων όπως είναι ο Half-Adder και ο Full-Adder.

Λογικές Πύλες Οι δομικές μονάδες κάθε ολοκληρωμένου κυκλώματος Τα ψηφιακά κυκλώματα είναι σχεδιασμένα έτσι ώστε να λαμβάνουν αποφάσεις. Συνήθως δέχονται στην είσοδο δύο ή περισσότερες τιμές και παράγουν μία ή περισσότερες τιμές στην έξοδο. Η διαδικασία αυτή γίνεται με τη βοήθεια των λογικών πυλών (logic gates). Η σημασία των λογικών κυκλωμάτων στην επιστήμη των ηλεκτρονικών υπολογιστών είναι προφανής, καθώς αποτελούν τις δομικές μονάδες κάθε ολοκληρωμένου κυκλώματος.

Ένα πρωτότυπο λογισμικό Για την προσομοίωση λογικών πυλών και κυκλωμάτων Για το λόγο αυτό, δημιουργήσαμε ένα πρωτότυπο λογισμικό προσομοίωσης λογικών πυλών και λογικών κυκλωμάτων ώστε να βοηθήσουμε τους συμμαθητές μας στην καλύτερη κατανόηση της λειτουργίας τους. Για τον προγραμματισμό του προσομοιωτή, χρησιμοποιήσαμε τη γλώσσα προγραμματισμού Scratch. Η γλώσσα Scratch είναι μια σχετικά καινούργια γλώσσα προγραμματισμού με γραφικό περιβάλλον με την οποία μπορούμε να κατασκευάσουμε εφαρμογές εύκολα, γρήγορα και διασκεδαστικά, ενώ είναι ιδανική για αρχάριους προγραμματιστές.

Αντιμέτωποι με την Άλγεβρα Boole Δημιουργώντας απλές και σύνθετες λογικές προτάσεις Στο ξεκίνημα της εργασίας ήρθαμε αντιμέτωποι με την Άλγεβρα Boole. Ο υπολογιστής, εκτός από αριθμητικές πράξεις, έχει τη δυνατότητα να εκτελεί και συγκρίσεις, δηλαδή να επεξεργάζεται λογικά δεδομένα. Χρησιμοποιώντας τα λογικά σύμβολα της Άλγεβρας Boole, μπορούμε να παρουσιάσουμε αυτά τα λογικά δεδομένα, δημιουργώντας απλές ή σύνθετες λογικές προτάσεις.

Η Άλγεβρα Boole Λογικές προτάσεις και Άλγεβρα Boole Μία πρόταση λέγεται λογική όταν μπορεί να χαρακτηριστεί Αληθής ή Ψευδής. Λογική Πρόταση Αληθής Ψευδής Παρουσίαση λογικών προτάσεων με μαθηματικά σύμβολα George Boole Ο πρώτος που διατύπωσε τους βασικούς κανόνες με τους οποίους οι λογικές προτάσεις μπορούν να παρουσιαστούν με μαθηματικά σύμβολα, ήταν ο Άγγλος μαθηματικός George Boole

Η Άλγεβρα Boole Οι Πίνακες Αλήθειας Οι κανόνες που καθορίζουν τις βασικές λογικές πράξεις ορίζονται από Πίνακες Αλήθειας στους οποίους περιλαμβάνονται όλοι οι δυνατοί συνδυασμοί των τιμών που μπορούν να πάρουν οι λογικές μεταβλητές καθώς και τα αποτελέσματα που προκύπτουν από αυτούς τους συνδυασμούς. Πίνακες Αλήθειας Α Β Α AND B A OR B A XOR B A NAND B A NOR B A XNOR B Αληθής Αληθής Αληθής Αληθής Ψευδής Ψευδής Ψευδής Αληθής Αληθής Ψευδής Ψευδής Αληθής Αληθής Αληθής Ψευδής Ψευδής Ψευδής Αληθής Ψευδής Αληθής Αληθής Αληθής Ψευδής Ψευδής Ψευδής Ψευδής Ψευδής Ψευδής Ψευδής Αληθής Αληθής Αληθής Πίνακας Αλήθειας A Αληθής Ψευδής NOT A Ψευδής Αληθής

Άλγεβρα Boole Η εφαρμογή της στη σχεδίαση απλούστερων ηλεκτρονικών κυκλωμάτων Όπως είδαμε, στις πράξεις της Άλγεβρας Boole χρησιμοποιούνται μεταβλητές που παίρνουν δύο μόνο τιμές και δίνουν ως αποτέλεσμα πάλι δίτιμες μεταβλητές. χμμμ.. Νομίζω ότι με την Άλγεβρα Boole μπορώ να απλοποιήσω τη σχεδίαση των ηλεκτρονικών κυκλωμάτων Claude Shannon Το 1938 ο C. Shannon έδειξε ότι με την Άλγεβρα Boole μπορεί να απλοποιήσει τη σχεδίαση των ηλεκτρονικών κυκλωμάτων.

Λογικές Πύλες Τα ηλεκτρονικά κυκλώματα που εκτελούν πράξεις της Άλγεβρας Boole Τα ηλεκτρονικά κυκλώματα που εκτελούν τις βασικές πράξεις της Άλγεβρας Boole καλούνται Λογικές Πύλες. Κάθε τέτοια πύλη δέχεται στην είσοδό της σήματα με τη μορφή υψηλής ή χαμηλής ηλεκτρικής τάσης και δίνει στην έξοδό της ένα μοναδικό λογικό αποτέλεσμα με τη μορφή υψηλής ή χαμηλής ηλεκτρικής τάσης. Λογική Πύλη 2-5v Υψηλή Τάση Λογικό «1» - Αληθής 0-0.8v Χαμηλή Τάση Λογικό «0» - Ψευδής

Λογικές Πύλες Υπάρχουν διάφορες λογικές πύλες. Οι λογικές πύλες που υποστηρίζονται από τον προσομοιωτή είναι οι: NOT OR NOR XNOR AND NAND XOR Στις επόμενες διαφάνειες θα περιγράψουμε τη λειτουργίας τους δίνοντας τους πίνακες αλήθειας καθώς και το σχήμα με το οποίο συμβολίζονται.

Λογικές Πύλες Η λογική πύλη NOT Υλοποιεί τη λογική πράξη «Άρνηση». Έχει μια είσοδο και μια έξοδο. Όταν η είσοδος είναι 1 η έξοδος είναι 0, ενώ όταν η είσοδος είναι 0 η έξοδος είναι 1, δηλαδή αντιστρέφει την αξία της εισόδου. Είσοδοι Έξοδος Κύκλωμα Α NOT A 0 1 1 0

Λογικές Πύλες Η λογική πύλη AND Υλοποιεί τη λογική πράξη «Σύζευξη». Έχει δύο εισόδους και μια έξοδο. H έξοδος είναι 1, όταν όλες οι είσοδοι είναι 1. Είσοδοι Έξοδος Κύκλωμα Α Β Α AND B 0 0 0 0 1 0 1 0 0 1 1 1

Λογικές Πύλες Η λογική πύλη OR Υλοποιεί τη λογική πράξη «Διάζευξη». Έχει δύο εισόδους και μια έξοδο. H έξοδος είναι 1, όταν τουλάχιστον μια είσοδος είναι 1. Είσοδοι Έξοδος Κύκλωμα Α Β Α OR B 0 0 0 0 1 1 1 0 1 1 1 1

Λογικές Πύλες Η λογική πύλη NAND Αποτελείται από μια πύλη AND και μια πύλη NOT. Η πύλη NAND δίνει την αντίθετη έξοδο από την AND, δηλαδή δίνει λογικό 1 όταν υπάρχει τουλάχιστο ένα λογικό 0 στις εισόδους. Είσοδοι Έξοδος Κύκλωμα Α Β Α NAND B 0 0 1 0 1 1 1 0 1 1 1 0

Λογικές Πύλες Η λογική πύλη NOR Αποτελείται από μια πύλη OR και μια πύλη NOT. Η πύλη δίνει την αντίθετη έξοδο από την OR, δηλαδή δίνει λογικό 1 όταν και οι δύο είσοδοι είναι 0. Είσοδοι Έξοδος Κύκλωμα Α Β Α NOR B 0 0 1 0 1 0 1 0 0 1 1 0

Λογικές Πύλες Η λογική πύλη XNOR Αποτελείται από μια πύλη OR και μια πύλη NOT. Η πύλη δίνει την αντίθετη έξοδο από την OR, δηλαδή δίνει λογικό 1 όταν και οι δύο είσοδοι είναι 0. Είσοδοι Έξοδος Κύκλωμα Α Β Α XNOR B 0 0 1 0 1 0 1 0 0 1 1 1

Συνδυαστικά Λογικά Κυκλώματα Half Adder και Full Adder Οι παραπάνω λογικές πύλες μπορούν να συνδυαστούν και να δημιουργήσουν ένα συνδυαστικό λογικό κύκλωμα. Το κύκλωμα του Ημιαθροιστή (Half Adder) και το κύκλωμα του Αθροιστή (Full Adder) είναι δύο από τα περισσότερο γνωστά συνδυαστικά λογικά κυκλώματα και για αυτό επιλέξαμε να τα υλοποιήσουμε στον προσομοιωτή που κατασκευάσαμε.

Συνδυαστικά Λογικά Κυκλώματα Το κύκλωμα του Ημιαθροιστή (Half Adder) Ημιαθροιστής (Half Adder), λέγεται το συνδυαστικό κύκλωμα το οποίο εκτελεί την πρόσθεση δύο δυαδικών ψηφίων σύμφωνα με τον παρακάτω πίνακα: + 0 1 0 0 1 1 1 10 Η πρόσθεση 1 + 1 δίνει άθροισμα 0 και κρατούμενο (carry) 1, το οποίο μεταφέρεται στην επόμενη πιο σημαντική τάξη ψηφίων. Παράδειγμα πρόσθεσης: 1 1 1 1 1 κρατούμενα 0 1 0 1 0 0 1 0 =82 (10) + 0 0 1 1 0 1 1 0 =54 (10) 1 0 0 0 1 0 0 0 =136 (10)

Συνδυαστικά Λογικά Κυκλώματα Το κύκλωμα του Ημιαθροιστή (Half Adder) Αν Α, Β είναι δυαδικά ψηφία, τότε το άθροισμα τους S (Sum) και το κρατούμενο της πρόσθεσής τους c (carry) φαίνονται στον παρακάτω πίνακα αλήθειας. Είσοδοι Πίνακας Αλήθειας του Ημιαθροιστή Έξοδος Α Β S C 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 Κύκλωμα άθροισμα κρατούμενο

Συνδυαστικά Λογικά Κυκλώματα Το κύκλωμα του Αθροιστή (Full Adder) Ο Αθροιστής είναι το συνδυαστικό κύκλωμα που εκτελεί την πρόσθεση τριών δυαδικών αριθμών και, συγκεκριμένα, δύο σημαντικών και ενός κρατουμένου. Το κρατούμενο ενδέχεται να έχει παραχθεί από προηγούμενη άθροιση. Input Output Κύκλωμα A B Cin Cout S 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 Α, Β: προσθετέοι S: Άθροισμα Cin: Προηγούμενο κρατούμενο Cout: Νέο κρατούμενο

Προγραμματισμός του προσομοιωτή Δημιουργία Υπόβαθρου για τη Διεπαφή Χρήστη Αφού κατανοήσαμε πλήρως τη λειτουργία των λογικών πυλών, ήρθε η ώρα να προγραμματίσουμε το λογισμικό του προσομοιωτή στο Scratch. Ξεκινήσαμε από τη δημιουργία της διεπαφής χρήστη στο σχεδιαστικό εργαλείο του Scratch. Α Ο τίτλος της εφαρμογής Διακόπτες για τον έλεγχο της εισόδου στα κυκλώματα Δ Β Χώρος κυκλωμάτων Γ Μενού επιλογής κυκλωμάτων

Προγραμματισμός του προσομοιωτή Δημιουργία αντικειμένων για τις Λογικές Πύλες και τα Λογικά Κυκλώματα Στη συνέχεια σχεδιάστηκαν, τοποθετήθηκαν και προγραμματίστηκαν οι λογικές πύλες και τα συνδυαστικά λογικά κυκλώματα ως εξής: Α Γ Για κάθε κύκλωμα δημιουργήσαμε ένα νέο αντικείμενο. Προγραμματίσαμε το κάθε κύκλωμα-αντικείμενο να αλλάζει ενδυμασία ανάλογα με την είσοδο που θα έπαιρνε από τα χειριστήρια εισόδου. Β Για κάθε κύκλωμα-αντικείμενο σχεδιάσαμε κατάλληλες ενδυμασίες ώστε να αντιστοιχούν στις διαφορετικές καταστάσεις του Πίνακα Αλήθειας του κάθε κυκλώματος. Πίνακας Αλήθειας AND Είσοδοι Έξοδος Α Β Α AND B 0 0 0 0 1 0 1 0 0 1 1 1

Προγραμματισμός του προσομοιωτή Δημιουργία των χειριστηρίων εισόδου Στη συνέχεια σχεδιάστηκαν, τοποθετήθηκαν και προγραμματίστηκαν τα χειριστήρια εισόδου για τα λογικά κυκλώματα: Α Γ Δημιουργήσαμε τρία νέα αντικείμενα Προγραμματίσαμε το κάθε χειριστήριο εισόδουαντικείμενο να αλλάζει ενδυμασία ανάλογα με την επιθυμία του χρήστη. Επίσης δημιουργήσαμε κατάλληλα συμβάντα για να ενημερώνονται τα αντικείμενα των λογικών κυκλωμάτων. Β Για κάθε χειριστήριο εισόδουαντικείμενο σχεδιάσαμε κατάλληλες ενδυμασίες ώστε να αντιστοιχούν στις δύο λογικές καταστάσεις «0» και «1». Είσοδος Α Είσοδος Β Συμβάν χρήστη Αλλαγή ενδυμασίας Κρατούμενο Μετέδωσε συμβάν και ενημέρωσε το τρέχων κύκλωμα

Προγραμματισμός του προσομοιωτή Δημιουργία μενού επιλογής Λογικών Κυκλωμάτων Τέλος σχεδιάστηκαν, τοποθετήθηκαν και προγραμματίστηκαν τα κουμπιά για το μενού επιλογής λογικών κυκλωμάτων : Α Δημιουργήσαμε εννέα αντικείμενα. Ένα κουμπί για κάθε λογικό κύκλωμα που υποστηρίζει ο προσομοιωτής. Β Προγραμματίσαμε το κάθε κουμπί ώστε με το που πατηθεί να ενημερώνει τα λογικά κυκλώματα και τα χειριστήρια εισόδου για το πιο είναι το τρέχων επιλεγμένο λογικό κύκλωμα. Συμβάν χρήστη Καθολική μεταβλητή crn_gate Μετέδωσε συμβάν και ενημέρωσε για το πιο είναι το τρέχων επιλεγμένο κύκλωμα

Προγραμματισμός του προσομοιωτή Τα συμβάντα για την επικοινωνία μεταξύ των αντικειμένων Στην παρακάτω εικόνα μπορείτε να δείτε πως επικοινωνούν μεταξύ τους όλα τα αντικείμενα του προσομοιωτή δημιουργώντας συμβάντα: Συμβάντα input_a_on και input_a_off. Προκαλούν αλλαγή ενδυμασίας στο τρέχων λογικό κύκλωμα. Συμβάν change_gate. Ενημερώνει ποια χειριστήρια εισόδου να εμφανιστούν Συμβάν change_gate. Ενημερώνει ποιο λογικό κύκλωμα να εμφανιστεί.

Προγραμματισμός του προσομοιωτή Το τελικό αποτέλεσμα Μπορείτε να κατεβάσετε τον προσομοιωτή και να τον ανοίξετε στον μεταγλωττιστή του Scratch από την διεύθυνση : www.hellenic-college.gr/works/scratch-binary-logic

Εκπαιδευτικός Οργανισμός Ελληνικό Κολλέγιο Θεσσαλονίκης Ευχαριστούμε! Κωνσταντίνος Παρασκευόπουλος Καθηγητής Πληροφορικής Ελληνικού Κολλεγίου Θεσσαλονίκης Μαθητές Γ Γυμνασίου Καραγιάννη Ελένη, Καραγιαννάκη Μαρία-Ελένη, Βασιλειάδης Αθανάσιος, Κωστουλίδης Αναστάσιος-Συμεών, Μουτεβελίδης Ιωάννης-Παναγιώτης, Βασιλειάδου Ευαγγελία, Βογιατζή Νίκη, Γοργία Φωτεινή, Ευγενιάδου Πηνελόπη, Τσολακίδου Παναγιώτα