int86 και λειτουργίες int86x
Αυτές οι λειτουργίες είναι το γενικον λογισμικό 8086 διακόπτουν τις διεπαφές που καθορίζονται στους καταλόγους dos.h. τίθενται τις επιθυμητές τιμές και αυτές οι λειτουργίες καλούνται για να επικαλεσθούν το MS-DOS διακόπτουν. Η δήλωση της λειτουργίας int86 είναι η ακόλουθη:
int int86(int intno, union REGS *inregs,
union REGS *outregs);
int86x είναι η παραλλαγή της λειτουργίας int86. Δηλώνεται ως εξής:
int int86x(int intno, union REGS *inregs,
union REGS *outregs, struct SREGS *segregs);
Και οι λειτουργίες int86 και int86x εκτελούν ένα λογισμικό 8086 διακόπτουν διευκρινισμένος από το intno επιχειρήματος ή μπορούμε να πούμε ότι διακόψτε για να παραγάγετε διευκρινίζεται από το intno.
Με τη λειτουργία int86x η πρόσβαση είναι δυνατή μόνο στην ES και DS και όχι στο καίσιο και το SS έτσι μπορείτε να επικαλεσθείτε ένα λογισμικό 8086 διακόπτετε που παίρνει μια αξία DS διαφορετικού από το τμήμα στοιχείων προεπιλογής ή/και παίρνει ένα επιχείρημα στην ES.
Αυτές οι λειτουργίες αντιγράφουν τις τιμές καταλόγων από τα inregs στους καταλόγους πριν από την εκτέλεση του λογισμικού διακόπτουν. Η λειτουργία int86x αντιγράφει επίσης τα segregs - ds και segregs - τιμές ES στους αντίστοιχους καταλόγους πρίν εκτελεί το λογισμικό διακόπτει. Αυτό το χαρακτηριστικό γνώρισμα επιτρέπει τα προγράμματα που χρησιμοποιούν τους μακρινούς δείκτες ή ένα μεγάλο πρότυπο μνήμης στοιχείων για να διευκρινίσει ποιο τμήμα πρόκειται να χρησιμοποιηθεί για το λογισμικό διακόπτει.
Οι λειτουργίες αντιγράφουν τις τρέχουσες τιμές καταλόγων στα outregs, η θέση φέρνει τη σημαία στον τομέα x.cflag στα outregs και την αξία του καταλόγου 8086 σημαιών στον τομέα x.flags στα outregs, αφότου διακόπτει το λογισμικό τις επιστροφές. Η λειτουργία int86x αποκαθιστά επίσης DS και θέτει τα segregs - ES και segregs - ds τομείς στις τιμές των αντίστοιχων καταλόγων τμήματος.
Και στις δύο λειτουργίες inregs και outregs μπορεί να δείξει την ίδια δομή και και οι δύο λειτουργίες επιστρέφουν την αξία του ΤΣΕΚΟΥΡΙΟΥ αφότου διακόπτει η ολοκλήρωση του λογισμικού. Εάν φέρτε η σημαία τίθεται, συνήθως δείχνει ότι ένα λάθος έχει εμφανιστεί.
|