Το κύριο πλεονέκτημα ενός συναρμολογητή με ένα πέρασμα είναι ότι είναι ταχύτερος από έναν συναρμολογητή δύο περασμάτων. Αυτό συμβαίνει επειδή δεν χρειάζεται να διαβάσει τον πηγαίο κώδικα δύο φορές. Το κύριο μειονέκτημα ενός assembler με ένα πέρασμα είναι ότι δεν μπορεί να επιλύσει παραπομπές προς τα εμπρός. Αυτό σημαίνει ότι εάν μια ετικέτα ή μια μεταβλητή χρησιμοποιηθεί πριν από τον ορισμό της, η assembler δεν θα μπορεί να δημιουργήσει τον σωστό κώδικα μηχανής.
Οι συναρμολογητές δύο περασμάτων μπορούν να επιλύσουν αναφορές προς τα εμπρός, αλλά είναι πιο αργοί από τους συναρμολογητές με ένα πέρασμα. Αυτό συμβαίνει επειδή πρέπει να διαβάσουν τον πηγαίο κώδικα δύο φορές. Το κύριο πλεονέκτημα ενός συναρμολογητή δύο περασμάτων έναντι του συναρμολογητή ενός περασμάτων είναι ότι μπορεί να παράγει πιο αποτελεσματικό κώδικα μηχανής. Αυτό συμβαίνει επειδή έχει πρόσβαση στον πίνακα συμβόλων κατά το δεύτερο πέρασμα, κάτι που του επιτρέπει να βελτιστοποιήσει τον κώδικα του μηχανήματος.
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα