Σελίδα μεθοριακό σταθμό πρόβλημα με tms320c55x

D

dora

Guest
Γεια σας φίλοι!

Θα ήθελα να μοιραστώ practicle προγραμματισμού πρόβλημα tms320c5509.

Σε μεγάλο μοντέλο μνήμης της δείκτες δεδομένων είναι 23 bits καιρό, ώστε να είναι αποθηκευμένα σε 2 λέξεις (32 bits).
Χρησιμοποιώντας Γ αν γράφω

int * pint?
pint = (int *) 0xffff?
πίντα ? / / το αποτέλεσμα εξαρτάται από την έκδοση του επεξεργαστή.αν είναι έκδοσης 3.0 ή υψηλότερο είναι το αποτέλεσμα είναι 0x10000 otherwice είναι 0x0000

Τώρα τον κωδικό:
int * pint?
pint = (int *) 0xffff?
pint = pint 10? / / το reselt είναι 0x0009 ανεξάρτητη από την έκδοση της CPU από την ADD # 10, AR1 που χρησιμοποιείται δεν είναι η πλήρης XAR1 μητρώο.Αυτή η συμπεριφορά επιβάλλει πολύ αυστηρό περιορισμό του μεγέθους τμήματος σε σχέση με τα όρια σελίδα.Για παράδειγμα, ο σωρός δεν μπορεί να είναι μεγαλύτερο τότε 64 λέξεις Κ.Η εφαρμογή μου είναι στην περιοχή επεξεργασίας εικόνας, ώστε να είναι πολύ κακό για μένα.

Η ερώτησή μου είναι να σας αντιμετώπισαν παρόμοια προβλήματα όριο σελίδα;Υπάρχει soltion;Μερικές συμβουλές;

Ευχαριστώ εκ των προτέρων!
dora

 
Δεν λειτουργεί με tms320 αλλά νομίζω ότι υπάρχει πρόβλημα compiler - αν πίντα μπορεί να δώσει 0x10000 και πίντα 10 = 0x09.
Bcoz pint μπορεί να θεωρηθεί ως pint 1.Λοιπόν, μεταφραστής μπορεί να χρησιμοποιήσει τεχνικές βελτιστοποίησης, όπως η αντικατάσταση Επιπλέον με asm δήλωση var αύξηση στη μνήμη RAM, αλλά τα αποτελέσματα πρέπει να είναι συνεχόμενες.

 

Welcome to EDABoard.com

Sponsor

Back
Top