thalex2 Δημοσ. 9 Απριλίου 2008 Δημοσ. 9 Απριλίου 2008 Γεια χαρα σε ολους.Προσπαθω να γραψω προγραμματακια σε Assembly για μια εργασια αλλα αντιμετωπιζω προβλήματα.Π.χ πως εκφραζεται η εντολη εκχωρησης?Πωσ δεχεται ως εισοδο εναν αριθμο?Ποια η διαφορα των H-L, B-C απο τους καταχωρητές?Υπάρχει καποιος να βοηθησει?Ευχαριστω
gtroza Δημοσ. 9 Απριλίου 2008 Δημοσ. 9 Απριλίου 2008 μέχρι να απαντήσουν οι ειδικοί, ρίξε μιά ματια http://www.insomnia.gr/forum/showpost.php?p=2095438&postcount=4 .
alkisg Δημοσ. 9 Απριλίου 2008 Δημοσ. 9 Απριλίου 2008 Εντολή εκχώρησης: mov ax,[100] (κάποια θέση μνήμης) Αν γράφεις σε καλό assembler, δέχεται και το mov ax,variable και εννοείται αντί του ax βάζεις οποιονδήποτε καταχωρητή. Είσοδος αριθμού: Προφανώς εννοείς να επικοινωνήσεις με το πληκτρολόγιο. Αυτό σχεδόν ποτέ δεν το κάνει ο προγραμματιστής, το κάνει το λειτουργικό σύστημα (π.χ. int 21 για DOS) ή το BIOS (int 16 αν θυμάμαι καλά απ' έξω). Αν επιμένεις να το κάνεις εσύ, θα πρέπει να κάνεις hook το interrupt 09 ή να κάνεις polling στη θύρα 61. Διαφορά H-L: Μάλλον εννοείς π.χ. AH και AL. Είναι τα δύο μισά του καταχωρητή AX. Ο AX είναι δύο byte, το "δεξιότερο" το λένε AL και μπορούμε να το χρησιμοποιούμε σαν μικρότερο καταχωρητή, και το αριστερότερο AH (κι αυτό μπορούμε να το χρησιμοποιούμε ανεξάρτητα). Διαφορά B-C: Δεν κατάλαβα τι εννοείς, εκτός αν λες για τους BX και CX. Υπάρχουν διάφοροι καταχωρητές: AX, BX, CX, DX, ES, DS, SI, DI κτλ. Φαντάσου ότι έχεις μια γλώσσα προγραμματισμού με 10 διαφορετικές μεταβλητές και δεν μπορείς να δηλώσεις καμία άλλη, ε, κάπως έτσι είναι. Όπως βλέπεις δεν μπορείς να μάθεις assembly από forum. Διάβασε τα links που σου έδωσε ο gtroza και αν στην πορεία σου δημιουργηθούν συγκεκριμένες απορίες ξαναρώτα.
thalex2 Δημοσ. 10 Απριλίου 2008 Μέλος Δημοσ. 10 Απριλίου 2008 Ειλικρινά ευχαριστώ για την βοήθεια. Τα links έχουν πολύ ενδιαφέρον αν και εγώ χρειάζομαι πιο βασικά πράγματα. Να φανταστείτε το πρόγραμμα βγάζει το μέγιστο κοινό διαιρετή δυο αριθμών σύμφωνα με τον αλγόριθμο του Ευκλείδη. Δεν είναι κάτι το σπουδαίο πιστεύω. Έχω φτιάξει το διάγραμμα ροής, πιστεύω ότι θα βγει: ΟΣΟ Α<>Υ ΕΠΑΝΕΛΑΒΕ ΑΝ Χ<Υ ΤΟΤΕ . . ΑΝ Χ>Υ ΤΟΤΕ .. Κ.Τ.Λ Όσο για το H-L και B-C εννοώ ζεύγη καταχωρητών. Επίσης μάλλον δεν χρειάζονται τιμές εισόδου γιατί οι τιμές έχουν είδη εισαχθεί στις θέσεις μνήμης. Και πάλι ευχαριστώ παιδία.
Chrisxxx Δημοσ. 10 Απριλίου 2008 Δημοσ. 10 Απριλίου 2008 ftp://www.teiser.gr/pliroforiki/Arxitektoniki Οι σημειώσεις του Εργαστηρίου ειναι αρκετα κατατοπιστικες επισης υπαρχει και ενας emulator.
GCMH Δημοσ. 10 Απριλίου 2008 Δημοσ. 10 Απριλίου 2008 Όσο για το H-L και B-C εννοώ ζεύγη καταχωρητών. Μπας και αντί για 8086 εννοείς 8080/Ζ80 (μπαμπάς και θείος);
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.