ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ ΓΙΑ ΤΗΝ ΑΠΛΟΠΟΙΗΣΗ ΛΟΓΙΚΩΝ ΣΥΝΑΡΤΗΣΕΩΝ ΜΕ ΤΗ ΧΡΗΣΗ ΤΗΣ ΜΕΘΟΔΟΥ QUINE-MCCLUSKEY. Πτυχιακή Εργασία Τσικρίκης Ανδρέας (759) Επιβλέπων:

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
ΣΕΡΡΕΣ, ΔΕΚΕΜΒΡΙΟΣ 2012 Δημιουργία μιας εφαρμογής σε Java για τη διαχείριση ενός Joomla ιστοτόπου Πτυχιακή Εργασία τoυ Γεώργιου Θεοδωρίδη (1182) Επιβλέπων:
Advertisements

Ασκήσεις Συνδυαστικής
Κατανομή με ευρετήριο.
Άμεσοι Αλγόριθμοι: Προσπέλαση Λίστας (list access) TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Έχουμε αποθηκεύσει.
Πολυδιάστατοι Πίνακες, Δομές, Ενώσεις
HY 120 ΨΗΦΙΑΚΗ ΣΧΕΔΙΑΣΗ Ασυγχρονα ακολουθιακα κυκλωματα 2o μερος.
Επιβλέπων: Δρ. Μπαλουκτσής Αναστάσιος, Καθηγητής
ΓΡΗΓΟΡΟΣ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ FOURIER
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Δυναμικός Κατακερματισμός.
Δομές Αναζήτησης TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A εισαγωγή αναζήτησηεπιλογή διατεταγμένος πίνακας.
HY100 : ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ, ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ, ΤΜΗΜΑ ΕΠΙΣΤΗΜΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΔΑΣΚΟΝΤΕΣ Αντώνιος Σαββίδης, Χρήστος.
Αλγόριθμοι Ταξινόμησης
ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΣΕΡΡΩΝ
Δυαδικά Δένδρα Αναζήτησης, Δένδρα AVL
Αλγόριθμοι Αναζήτησης
Κεφάλαιο 2ο Πεπερασμένα αυτόματα.
Η ΕΚΤΕΛΕΣΗ ΠΡΟΓΡΑΜΜΑΤΟΣ ΧΡΗΣΤΗ ΑΠ’ ΤΟΝ Η/Υ ΤΟΜΕΑΣ ΤΕΧΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Δ.ΙΕΚ ΠΑΤΡΑΣ.
Γραφήματα & Επίπεδα Γραφήματα
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Συναρτησιακές Εξαρτήσεις.
Β΄ ΓΕΛ ΕισΑρχΕπ Η/Υ παρ – 2.2.5
ΗΥ 120 Αλγοριθμικες μηχανες καταστασεως
Προσεγγιστικοί Αλγόριθμοι
Δυναμική Διατήρηση Γραμμικής Διάταξης Διατηρεί μια γραμμική διάταξη δυναμικά μεταβαλλόμενης συλλογής στοιχείων. Υποστηρίζει τις λειτουργίες: Έλεγχος της.
ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Παχατουρίδη Σάββα(676) Επιβλέπων: Σ
2006 GfK Praha CORRUPTION CLIMATE IN EUROPE % % % %0 - 10% % % % % % ΚΛΙΜΑ ΔΙΑΦΘΟΡΑΣ Η.
Αλγόριθμοι CSPs – Κώδικας Μάθημα Τεχνητής Νοημοσύνης ΥΣ02 Χειμερινό εξάμηνο
Παράδειγμα 1:Υπολογισμός αθροίσματος αριθμών με επαναληπτική εντολή : για...από...μέχρι(for ..to) Να βρεθεί και να εκτυπωθεί το άθροισμα των 100 ακεραίων.
Πτυχιακή εργασία: «Ανάπτυξη αλγορίθμου Γενετικού Προγραμματισμού (Genetic Programming) με δυνατότητα διαχείρισης δενδροειδών δομών και εφαρμογή του στην.
Πολλαπλασιασμός αλά ρωσικά (ακέραιοι θετικοί >0)
Προηγμένες Υπηρεσίες Τηλεκπαίδευσης στο Τ.Ε.Ι. Σερρών
Η ΚΑΙΝΟΤΟΜΙΑ ΣΤΟΝ ΕΛΛΗΝΙΚΟ ΕΠΙΧΕΙΡΗΜΑΤΙΚΟ ΧΩΡΟ
Σέρρες,Ιούνιος 2009 Τίτλος: Αυτόματος έλεγχος στο Scilab: Ανάπτυξη πακέτου για εύρωστο έλεγχο. Ονοματεπώνυμο Σπουδάστριας: Ευαγγελία Δάπκα Επιβλέπων Καθηγητής.
Κεφάλαιο 2 Κίνηση σε μία διάσταση
Διάλεξη 9η: Εφαρμογή της μεθόδου Simplex στο γραμμικό προγραμματισμό κατά τη μεγιστοποίηση Μέθοδος Simplex 1.Όταν υπάρχουν μέχρι πέντε κλάδοι παραγωγής.
Εξόρυξη Δεδομένων και Αλγόριθμοι Μάθησης. K-means k-windows k-means: 2 φάσεις 1. Μια διαμέριση των στοιχείων σε k clusters 2. Η ποιότητα της διαμέρισης.
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Δυναμικά Σύνολα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Δυναμικό σύνολο Tα στοιχεία του μεταβάλλονται.
ΜΑΘΗΜΑ: ΣΧΕΔΙΑΣΗ ΑΛΓΟΡΙΘΜΩΝ ΔΙΔΑΣΚΩΝ: Π. ΚΑΤΣΑΡΟΣ Παρασκευή, 3 Απριλίου 2015Παρασκευή, 3 Απριλίου 2015Παρασκευή, 3 Απριλίου 2015Παρασκευή, 3 Απριλίου 2015Τμ.
Ελάχιστο Συνδετικό Δέντρο
Δομές Δεδομένων - Ισοζυγισμένα Δυαδικά Δένδρα (balanced binary trees)
Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές
ΕΠΛ 231 – Δομές Δεδομένων και Αλγόριθμοι13-1 Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ο αλγόριθμος Dijkstra για εύρεση βραχυτέρων μονοπατιών.
Δομές Δεδομένων και Αρχεία Ενότητα 10: Κυκλικά και Διπλά Συνδεδεμένη Λίστα Ηλίας Κ. Σάββας, Αναπληρωτής Καθηγητής, Τμήμα Μηχανικών Πληροφορικής Τ.Ε., T.E.I.
ΑΡΙΘΜΗΤΙΚΗ ΕΠΙΛΥΣΗ ΤΩΝ ΔΙΑΦΟΡΙΚΩΝ ΕΞΙΣΩΣΕΩΝ ΜΕ ΜΕΡΙΚΕΣ ΠΑΡΑΓΩΓΟΥΣ Ακαδημαϊκό Έτος Πέμπτη, 25 Ιουνίου η Εβδομάδα ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ.
Τμήμα Μηχανικών Πληροφορικής
ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ “Διαλογικό διδακτικό πρόγραμμα ανώτερων μαθηματικών”
Advanced Data Indexing (Προηγμένη ευρετηρίαση δεδομένων) Ροές Δεδομένων (3 ο Μέρος)
ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΠΑΡΆΡΤΗΜΑ ΛΕΥΚΑΔΑΣ ΥΠΕΥΘΥΝΗ ΚΑΘΗΓΉΤΡΙΑ Δρ. ΤΣΙΝΤΖΑ ΠΑΝΑΓΙΩΤΑ Οι παρουσιάσεις του μαθήματος βασίζονται στο.
ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΠΑΡΆΡΤΗΜΑ ΛΕΥΚΑΔΑΣ ΥΠΕΥΘΥΝΗ ΚΑΘΗΓΉΤΡΙΑ Δρ. ΤΣΙΝΤΖΑ ΠΑΝΑΓΙΩΤΑ Οι παρουσιάσεις του μαθήματος βασίζονται στο.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ Παραδείγματα BP.
Νικόλαος Καρανάσιος - ΓΕΝΙΚΗ ΛΟΓΙΣΤΙΚΗ 1 ΓΕΝΙΚΗ ΛΟΓΙΣΤΙΚΗ ΚΛΕΙΣΙΜΟ ΧΡΗΣΗΣ TEΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΣΕΡΡΩΝ Τέρμα Μαγνησίας Σέρρες ΤΟΜΕΑΣ ΠΟΣΟΤΙΚΩΝ.
Παρουσίαση πτυχιακής εργασίας Σαλιάρη Αικατερίνη Επιβλέπων καθηγητής: Αθανάσιος Νικολαΐδης.
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Διάλεξη 4: Απλοποίηση (βελτιστοποίηση) λογικών συναρτήσεων με την μέθοδο του χάρτη Karnaugh (1ο μέρος) και υλοποίηση με πύλες NAND -
Δυναμικός Κατακερματισμός
ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ
Συστήματα CAD Πανεπιστήμιο Θεσσαλίας Σχολή Θετικών Επιστημών
Java DataBase Connectivity
Διδάσκων: Δρ. Τσίντζα Παναγιώτα
ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Διάλεξη 5: Απλοποίηση (βελτιστοποίηση) λογικών συναρτήσεων με την μέθοδο του χάρτη Karnaugh (2ο μέρος) Δρ Κώστας Χαϊκάλης ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ.
ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ “Ανάπτυξη προγράμματος προσομοίωσης συγκρούσεων σε
Ζώα και μαθηματικά.
ΕΝΗΜΕΡΩΣΗ ΚΑΙ ΠΑΡΑΚΟΛΟΥΘΗΣΗ ΕΡΓΟΥ
ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΣΕΡΡΩΝ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Ανάπτυξη εκπαιδευτικής εφαρμογής.
Δένδρα Αναζήτησης Πολλαπλής Διακλάδωσης
Φοιτητής: Γκούλης Ευάγγελος ΑΕΜ: 3342
Δυναμικός Κατακερματισμός
Μετρητές
ΓΕΝΙΚΗ ΛΟΓΙΣΤΙΚΗ ΚΛΕΙΣΙΜΟ ΧΡΗΣΗΣ
Μεταγράφημα παρουσίασης:

ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ ΓΙΑ ΤΗΝ ΑΠΛΟΠΟΙΗΣΗ ΛΟΓΙΚΩΝ ΣΥΝΑΡΤΗΣΕΩΝ ΜΕ ΤΗ ΧΡΗΣΗ ΤΗΣ ΜΕΘΟΔΟΥ QUINE-MCCLUSKEY. Πτυχιακή Εργασία Τσικρίκης Ανδρέας (759) Επιβλέπων: Δρ. Μπαλουκτσής Αναστάσιος, Καθηγητής ΣΕΡΡΕΣ, ΙΟΥΝΙΟΣ 2009 ΜΕΡΟΣ 2 Ο

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΟΙ ΠΙΝΑΚΕΣ mTable[32] T[76][7+1] Tnext[76][7] finalMinterms[76][7] m_T[76][32] m_Tnext[76][32] m_finalMinterms[76][32]

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ … … ΟΙ ΠΙΝΑΚΕΣ mTable[]

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΟΙ ΠΙΝΑΚΕΣ … ……………………… T[][]

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΟΙ ΠΙΝΑΚΕΣ … …………………… Tnext[][] finalMinterms[][]

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΟΙ ΠΙΝΑΚΕΣ – Ο πίνακας Τ[ ][ ] … ……………………… Τρέχουσα Γραμμή Γραμμή Βήματος Σύγκριση της τρέχουσας γραμμής με την γραμμή Βήματος. Εάν προκύψει διαφορά μόνο σε 1 ψηφίο τότε αυτοί οι όροι συνδυάζονται και δημιουργούν ένα νέο όρο.

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΟΙ ΠΙΝΑΚΕΣ – Ο πίνακας Τ[ ][ ] … ……………………… Τρέχουσα Γραμμή Γραμμή Βήματος Μετακίνηση της γραμμής Βήματος κατά μία θέση και επανέλεγχος. Η 8 η στήλη του πίνακα έχει ενημερωθεί.

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΟΙ ΠΙΝΑΚΕΣ – Ο πίνακας Τ[ ][ ] … ……………………… Τρέχουσα Γραμμή Γραμμή Βήματος Μετακίνηση της γραμμής Βήματος κατά μία θέση και επανέλεγχος.

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΟΙ ΠΙΝΑΚΕΣ – Ο πίνακας Τ[ ][ ] … ……………………… Τρέχουσα Γραμμή Γραμμή Βήματος Μετακίνηση της γραμμής Βήματος κατά μία θέση και επανέλεγχος.

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΟΙ ΠΙΝΑΚΕΣ – Ο πίνακας Τ[ ][ ] … ……………………… Τρέχουσα Γραμμή Γραμμή Βήματος Μετακίνηση της Τρέχουσας γραμμής κατά μία θέση και τοποθέτηση της γραμμής Βήματος στην ακριβώς επόμενη θέση από την Τρέχουσα.

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ……………………… ΟΙ ΠΙΝΑΚΕΣ – Ο πίνακας Tnext[ ][ ] … ……………………… newMinterm T[][] Tnext[][]

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ……………………… ΟΙ ΠΙΝΑΚΕΣ – Ο πίνακας Tnext[ ][ ] … ……………………… newMinterm T[][]Tnext[][]

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ……………………… ΟΙ ΠΙΝΑΚΕΣ – Ο πίνακας Tnext[ ][ ] … ……………………… firstMinterm T[][]finalMinterms[][]

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ ΟΙ ΠΙΝΑΚΕΣ m_ m_T[][] m_finalMinterms[][] m_Tnext[][] … … 1 … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 … Οι πίνακες m_ χρησιμοποιούνται για να αποθηκεύουν τους δεκαδικούς αριθμούς από τους οποίους προέκυψαν τα τελικά αποτελέσματα.

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ … … 1 1 … 2 2 … 3 8 … 4 10 … 5 … 6 … ……………………… 74 … 75 … ΟΙ ΠΙΝΑΚΕΣ m_ m_T[][] m_Tnext[][] … … … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 … 0,1 2,10

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ … … … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 … ΟΙ ΠΙΝΑΚΕΣ m_ m_T[][] m_Tnext[][] 0,1,2, … … 1 … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 …

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ … … … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 … ΟΙ ΠΙΝΑΚΕΣ m_ - Προγραμματιστικά m_T[][] m_Tnext[][] … … 1 … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 …

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ … … … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 … ΟΙ ΠΙΝΑΚΕΣ m_ - Προγραμματιστικά m_T[][] m_Tnext[][] … … 1 … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 …

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ … … … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 … ΟΙ ΠΙΝΑΚΕΣ m_ - Προγραμματιστικά m_T[][] m_Tnext[][] 0, … … 1 … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 …

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ … … … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 … ΟΙ ΠΙΝΑΚΕΣ m_ - Προγραμματιστικά m_T[][] m_Tnext[][] 0, … … 1 … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 …

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ … … … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 … ΟΙ ΠΙΝΑΚΕΣ m_ - Προγραμματιστικά m_T[][] m_Tnext[][] 0,1, … … 1 … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 …

Η ΦΙΛΟΣΟΦΙΑ ΤΟΥ ΠΡΟΓΡΑΜΜΑΤΟΣ … … … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 … ΟΙ ΠΙΝΑΚΕΣ m_ - Προγραμματιστικά m_T[][] m_Tnext[][] 0,1,2, … … 1 … 2 … 3 … 4 … 5 … 6 … ……………………… 74 … 75 …

Η ΒΕΛΤΙΣΤΗ ΛΥΣΗ … … 1 89 … … 3 57 … 4 67 … … … ……………………… 74 … 75 … m_finalMinterms[][] Δύο buffers διατρέχουν τον πίνακα m_finalMinterms[][] αναζητώντας διπλές εγγραφές. Εάν βρεθούν διπλές εγγραφές για όλα τα στοιχεία ενός πρώτου συνεπαγωγού τότε αυτός διαγράφεται. Αυτό που προκύπτει μετά τις διαγραφές είναι η βέλτιστη λύση.

Η ΒΕΛΤΙΣΤΗ ΛΥΣΗ … … 1 89 … … 3 57 … 4 67 … … … ……………………… 74 … 75 … m_finalMinterms[][] 1 0 Το «2» βρέθηκε στην 6 η γραμμή. Αυτό σημαίνει πως ο όρος 2 του πρώτου συνεπαγωγού που εξετάζεται καλύπτεται και από κάποιον άλλο πρώτο συνεπαγωγό. Άρα το 1 που προστέθηκε κατά την επιλογή του «2» αφαιρείται. Γενικό Σύνολο = 0

Η ΒΕΛΤΙΣΤΗ ΛΥΣΗ … … 1 89 … … 3 57 … 4 67 … … … ……………………… 74 … 75 … m_finalMinterms[][] Ο αριθμός 10 βρέθηκε με διπλή κάλυψη. Άρα το 1 που προστέθηκε κατά την επιλογή του αφαιρείται, οπότε το αποτέλεσμα παραμένει 0.

Η ΒΕΛΤΙΣΤΗ ΛΥΣΗ … … 1810 … 257 … 367 … … … 6 … ……………………… 74 … 75 … m_finalMinterms[][] Ο Πρώτος Συνεπαγωγός που αποτελούνταν από τους όρους 2 και 10, βρέθηκε πως έχει διπλή κάλυψη σε όλα τα στοιχεία του. Αυτό σημαίνει πως είναι περιττός για την τελική λύση, οπότε διαγράφεται. Έτσι όλοι οι υπόλοιποι συνεπαγωγοί «ανεβαίνουν» μια θέση πιο πάνω για να καλύψουν το κενό που άφησε η διαγραφή.

Ο ΚΩΔΙΚΑΣ ΥΛΟΠΟΙΗΣΗΣ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ while(newMinterm!=-1) //ΌΣΟ ΥΠΑΡΧΕΙ ΕΠΟΜΕΝΗ ΦΑΣΗ { phase++; //αυξάνεται ο μετρητής της φάσης change = 100; //ορίζεται το change τυχαία σε έναν αριθμό newMinterm = -1 ; //θεωρείται ότι δεν υπάρχουν νέοι συνδυασμοί ακόμη //ΈΝΑΡΞΗ ΤΟΥ ΒΡΟΓΧΟΥ ΤΗΣ ΤΡΕΧΟΥΣΑΣ ΓΡΑΜΜΗΣ for (i=0;i<minterms;i++) { step=i+1; //Αρχικοποίηση του βήματος μία θέση μετά την τρέχουσα //ΈΝΑΡΞΗ ΤΗΣ ΓΡΑΜΜΗΣ ΒΗΜΑΤΟΣ for (step; step<minterms; step++) { onlyone=0; //μηδενίζεται ο μετρητής διαφοράς ψηφίων //έναρξη του buffer ψηφίου for (j=0;j<vars;j++) { if (onlyone<2) //αν διαφέρουν σε λιγότερα από 2 ψηφία if (T[i][j]!=T[step][j]) { onlyone++; change=j; //κρατάει τη θέση απαλοιφής } } //ΤΕΛΟΣ του buffer ψηφίου

//ΕΛΕΓΧΟΣ ΔΙΑΦΟΡΑΣ ΣΕ 1 ΜΟΝΟ ΨΗΦΙΟ if(onlyone == 1) { newMinterm++; //αύξηση του μετρητή νέων όρων nextPos=0; //μηδενισμός του μετρητή της επόμενης θέσης για νέους όρους //ΔΗΜΙΟΥΡΓΙΑ ΑΠΛΟΠΟΙΗΜΕΝΟΥ ΟΡΟΥ for(j=0;j<vars;j++) { if (j==change) Tnext[newMinterm][j]=2; //τοποθέτηση του αριθμού «2» στη θέση της απαλοιφής if (j != change) Tnext[newMinterm][j]=T[i][j]; //ή αντιγραφή του όρου αν δεν είναι θέση απαλοιφής } //ΕΝΗΜΕΡΩΣΗ ΤΩΝ ΠΙΝΑΚΩΝ ΤΩΝ ΣΥΝΔΥΑΖΟΜΕΝΩΝ MINTERMS for (j=0;j<JOINTS;j++) if(m_T[i][j]!=-1) { m_Tnext[newMinterm][j]=m_T[i][j]; nextPos++; } Ο ΚΩΔΙΚΑΣ ΥΛΟΠΟΙΗΣΗΣ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ

//ΕΝΗΜΕΡΩΣΗ ΤΩΝ ΠΙΝΑΚΩΝ ΤΩΝ ΣΥΝΔΥΑΖΟΜΕΝΩΝ MINTERMS for (j=0;j<JOINTS;j++) if(m_T[step][j]!=-1) { m_Tnext[newMinterm][nextPos]=m_T[step][j]; nextPos++; } //Μαρκάρισμα των όρων που συνδυάστηκαν δίνοντας στο mFlag τους την τιμή 1 T[i][mFlag] = 1; T[step][mFlag] = 1; } //ΤΕΛΟΣ ΕΛΕΓΧΟΥ ΔΙΑΦΟΡΑΣ ΣΕ 1 ΜΟΝΟ ΨΗΦΙΟ //ΜΑΡΚΑΡΙΣΜΑ ΤΩΝ ΙΔΙΩΝ ΟΡΩΝ (ΕΑΝ ΗΤΑΝ ΙΔΙΟΙ) if(onlyone == 0) T[i][mFlag] = 1; } //ΤΕΛΟΣ Της ΑΛΛΑΓΗΣ ΤΗΣ ΓΡΑΜΜΗΣ ΒΗΜΑΤΟΣ } //ΤΕΛΟΣ ΤΟΥ ΒΡΟΓΧΟΥ ΤΗΣ ΤΡΕΧΟΥΣΑΣ ΓΡΑΜΜΗΣ Ο ΚΩΔΙΚΑΣ ΥΛΟΠΟΙΗΣΗΣ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ

//ΟΣΟΙ ΟΡΟΙ ΜΕΙΝΑΝ ΑΜΑΡΚΑΡΙΣΤΟΙ ΕΙΝΑΙ ΠΡΩΤΟΙ ΣΥΝΕΠΑΓΩΓΟΙ for (i=0; i<minterms; i++) if (T[i][mFlag] == 0 ) { for (j=0; j<vars; j++) finalMinterms[firstMinterm][j] = T[i][j]; //.. και γράφονται στον πίνακα των πρώτων συνεπαγωγών for (j=0; j<JOINTS; j++) m_finalMinterms[firstMinterm][j]=m_T[i][j]; //Γράφεται και η αντίστοιχη δεκαδική τους μορφή firstMinterm++ ; //προστίθεται ένας νέος πρώτος συνεπαγωγός } } //ΤΕΛΟΣ ΤΗΣ ΦΑΣΗΣ Ο ΚΩΔΙΚΑΣ ΥΛΟΠΟΙΗΣΗΣ ΤΟΥ ΑΛΓΟΡΙΘΜΟΥ