Τάξη : Α’ Λυκείου
Ενότητα : Υλικό Υπολογιστή
Ιστοσελίδα : http://matt.krutar.org/LMC4/
Ενδεικτική Διάρκεια : 1 διδακτική ώρα




                           Little Man Computer



Σε αυτό το φύλλο εργασίας θα µελετήσεις την αρχιτεκτονική ενός υπολογιστή. Πιο
συγκεκριµένα θα εξετάσεις ένα απλό εκπαιδευτικό µοντέλο του υπολογιστή που
ονοµάζεται Little Man Computer (LMC).




Το παραπάνω µοντέλο είναι εκπαιδευτικό και δεν µοιάζει απόλυτα µε το πραγµατικό
µοντέλο που φαίνεται παρακάτω :


Σαρηµπαλίδης Ιωάννης                                                   Σελίδα 1
Εφαρµογές Υπολογιστών




Οι βασικές διαφορές είναι οι εξής:
•   Η µνήµη είναι ξεχωριστή από τη CPU,
•   Τα δεδοµένα είναι σε δυαδική και όχι σε δεκαδική µορφή.



Εντολές που υποστηρίζονται
Το µοντέλο υποστηρίζει διάφορες εντολές. Εµείς όµως θα ασχοληθούµε µε τις εξής :



                        Εντολή                  Παράδειγµα

                         LOAD                       5xx

                        STORE                       3xx

                          ADD                       1xx

                        INPUT                       901

                        OUTPUT                      902

                         HALT                       000




Σαρηµπαλίδης Ιωάννης                                                       Σελίδα 2
Little Man Computer (LMC)


Στις παραπάνω εντολές όπου xx εννοείται µία θέση µνήµης ( 00 – 99 ). Έτσι π.χ.



         Εντολή                            Επεξήγηση

                    Πρόσθεσε αυτό που υπάρχει στην ALU (κοµπιουτεράκι) µε
          120
                    το περιεχόµενο της θέσης µνήµης 20.

                    Πάρε τον αριθµό που υπάρχει στην ALU (κοµπιουτεράκι)
          335
                    και αποθήκευσε τον στη θέση µνήµης 35.

                    Πάρε το περιεχόµενο της θέσης µνήµης 48 και τοποθέτησε
          548
                    το στην ALU (κοµπιουτεράκι).




Πρώτο πρόγραµµα
Αυτά όλα µπορεί να φαίνονται περίεργα αλλά θα προσπαθήσουµε να τα ξεδιαλύνουµε
µέσα από ένα πρόγραµµα που θα προσθέτει δύο αριθµούς και θα εµφανίζει το
αποτέλεσµα.



           Εντολή                              Επεξήγηση

           INPUT         Εισαγωγή πρώτου αριθµού. Για να γίνει κάτι τέτοιο
                         πρέπει να συµπληρώσετε το πλαίσιο Input Buffer.

         STORE 10        Αποθήκευσε τον πρώτο αριθµό στη θέση µνήµης 10.

           INPUT         Εισαγωγή δεύτερου αριθµού.

          STORE 11       Αποθήκευσε τον πρώτο αριθµό στη θέση µνήµης 11.

                         Πρόσθεσε το περιεχόµενο της ALU (που είναι ο
           ADD 10        δεύτερος αριθµός) µε το περιεχόµενο της θέσης 10
                         (που είναι ο πρώτος αριθµός).

         STORE 12        Αποθήκευσε το άθροισµα στη θέση µνήµης 12.

          OUTPUT         Εµφάνισε το άθροισµα στον Output Buffer.

            HALT         Τέλος προγράµµατος.




Σαρηµπαλίδης Ιωάννης                                                         Σελίδα 3
Εφαρµογές Υπολογιστών


Γράψε τις παραπάνω εντολές στις θέσεις µνήµης της RAM. Θα πρέπει να φαίνεται
όπως παρακάτω :




Τρέξε τώρα το πρόγραµµα βήµα – βήµα πατώντας το κουµπί Step. Πρόσεχε πριν από
κάθε εντολή INPUT (901) να έχεις τοποθετήσει έναν αριθµό στον Input Buffer.


Αν όλα πάνε καλά στο τέλος θα πρέπει να εµφανιστεί στον Output Buffer το άθροισµα
των δύο αριθµών που επέλεξες. Αν όχι έλεγξε ξανά τα βήµατα σου για να δεις που
ακριβώς έκανες το λάθος.



Δοκίµασε τώρα να φτιάξεις ένα πρόγραµµα το οποίο θα διαβάζει τρεις αριθµούς Α, Β,
Γ και θα υπολογίζει και θα εµφανίζει το αποτέλεσµα της έκφρασης Α + Β – Γ. Πιο
αναλυτικά θα κάνει τα εξής :



   Βήµα                     Επεξήγηση                          Εντολές

    1     Θα διαβάζει τρεις αριθµούς και θα τους
                                                           INPUT , STORE
          αποθηκεύει στις θέσεις µνήµης 50, 51 και 52

    2     Θα φορτώνει τον πρώτο αριθµό στην ALU                 LOAD

    3     Θα προσθέτει στην ALU τον δεύτερο αριθµό               ADD

    4     Θα αφαιρεί από την ALU τον τρίτο αριθµό            SUBTRACT

          Θα αποθηκεύει το αποτέλεσµα στη θέση µνήµης
    5                                                          STORE
          53

    6     Θα εµφανίζει το αποτέλεσµα                           OUTPUT

    7     Θα τερµατίζει το πρόγραµµα                            HALT




Σαρηµπαλίδης Ιωάννης                                                     Σελίδα 4

Little man computer

  • 1.
    Τάξη : Α’Λυκείου Ενότητα : Υλικό Υπολογιστή Ιστοσελίδα : http://matt.krutar.org/LMC4/ Ενδεικτική Διάρκεια : 1 διδακτική ώρα Little Man Computer Σε αυτό το φύλλο εργασίας θα µελετήσεις την αρχιτεκτονική ενός υπολογιστή. Πιο συγκεκριµένα θα εξετάσεις ένα απλό εκπαιδευτικό µοντέλο του υπολογιστή που ονοµάζεται Little Man Computer (LMC). Το παραπάνω µοντέλο είναι εκπαιδευτικό και δεν µοιάζει απόλυτα µε το πραγµατικό µοντέλο που φαίνεται παρακάτω : Σαρηµπαλίδης Ιωάννης Σελίδα 1
  • 2.
    Εφαρµογές Υπολογιστών Οι βασικέςδιαφορές είναι οι εξής: • Η µνήµη είναι ξεχωριστή από τη CPU, • Τα δεδοµένα είναι σε δυαδική και όχι σε δεκαδική µορφή. Εντολές που υποστηρίζονται Το µοντέλο υποστηρίζει διάφορες εντολές. Εµείς όµως θα ασχοληθούµε µε τις εξής : Εντολή Παράδειγµα LOAD 5xx STORE 3xx ADD 1xx INPUT 901 OUTPUT 902 HALT 000 Σαρηµπαλίδης Ιωάννης Σελίδα 2
  • 3.
    Little Man Computer(LMC) Στις παραπάνω εντολές όπου xx εννοείται µία θέση µνήµης ( 00 – 99 ). Έτσι π.χ. Εντολή Επεξήγηση Πρόσθεσε αυτό που υπάρχει στην ALU (κοµπιουτεράκι) µε 120 το περιεχόµενο της θέσης µνήµης 20. Πάρε τον αριθµό που υπάρχει στην ALU (κοµπιουτεράκι) 335 και αποθήκευσε τον στη θέση µνήµης 35. Πάρε το περιεχόµενο της θέσης µνήµης 48 και τοποθέτησε 548 το στην ALU (κοµπιουτεράκι). Πρώτο πρόγραµµα Αυτά όλα µπορεί να φαίνονται περίεργα αλλά θα προσπαθήσουµε να τα ξεδιαλύνουµε µέσα από ένα πρόγραµµα που θα προσθέτει δύο αριθµούς και θα εµφανίζει το αποτέλεσµα. Εντολή Επεξήγηση INPUT Εισαγωγή πρώτου αριθµού. Για να γίνει κάτι τέτοιο πρέπει να συµπληρώσετε το πλαίσιο Input Buffer. STORE 10 Αποθήκευσε τον πρώτο αριθµό στη θέση µνήµης 10. INPUT Εισαγωγή δεύτερου αριθµού. STORE 11 Αποθήκευσε τον πρώτο αριθµό στη θέση µνήµης 11. Πρόσθεσε το περιεχόµενο της ALU (που είναι ο ADD 10 δεύτερος αριθµός) µε το περιεχόµενο της θέσης 10 (που είναι ο πρώτος αριθµός). STORE 12 Αποθήκευσε το άθροισµα στη θέση µνήµης 12. OUTPUT Εµφάνισε το άθροισµα στον Output Buffer. HALT Τέλος προγράµµατος. Σαρηµπαλίδης Ιωάννης Σελίδα 3
  • 4.
    Εφαρµογές Υπολογιστών Γράψε τιςπαραπάνω εντολές στις θέσεις µνήµης της RAM. Θα πρέπει να φαίνεται όπως παρακάτω : Τρέξε τώρα το πρόγραµµα βήµα – βήµα πατώντας το κουµπί Step. Πρόσεχε πριν από κάθε εντολή INPUT (901) να έχεις τοποθετήσει έναν αριθµό στον Input Buffer. Αν όλα πάνε καλά στο τέλος θα πρέπει να εµφανιστεί στον Output Buffer το άθροισµα των δύο αριθµών που επέλεξες. Αν όχι έλεγξε ξανά τα βήµατα σου για να δεις που ακριβώς έκανες το λάθος. Δοκίµασε τώρα να φτιάξεις ένα πρόγραµµα το οποίο θα διαβάζει τρεις αριθµούς Α, Β, Γ και θα υπολογίζει και θα εµφανίζει το αποτέλεσµα της έκφρασης Α + Β – Γ. Πιο αναλυτικά θα κάνει τα εξής : Βήµα Επεξήγηση Εντολές 1 Θα διαβάζει τρεις αριθµούς και θα τους INPUT , STORE αποθηκεύει στις θέσεις µνήµης 50, 51 και 52 2 Θα φορτώνει τον πρώτο αριθµό στην ALU LOAD 3 Θα προσθέτει στην ALU τον δεύτερο αριθµό ADD 4 Θα αφαιρεί από την ALU τον τρίτο αριθµό SUBTRACT Θα αποθηκεύει το αποτέλεσµα στη θέση µνήµης 5 STORE 53 6 Θα εµφανίζει το αποτέλεσµα OUTPUT 7 Θα τερµατίζει το πρόγραµµα HALT Σαρηµπαλίδης Ιωάννης Σελίδα 4