Curlie Geschrieben 18. Mai 2001 Geschrieben 18. Mai 2001 Ein Freund von mir hat da so ein Problem und zwar möchte er gerne wissen in welcher Beziehung der Offset und die Speicheradresse stehen und wie man den Offset verändern kann. Vielleicht kann mir ja jemand helfen Tschoe Curlie Zitieren
Sub_7 Geschrieben 18. Mai 2001 Geschrieben 18. Mai 2001 Ja das möchte er allerdings *fg* *wink* Zitieren
gajUli Geschrieben 18. Mai 2001 Geschrieben 18. Mai 2001 Original erstellt von Curlie: <STRONG> und wie man den Offset verändern kann. </STRONG> Speicher verwaltet man mit Pointern. Arbeite ein Kapitel darueber durch, und Du wirst Bescheid wissen. Uli Zitieren
toosten Geschrieben 27. Mai 2001 Geschrieben 27. Mai 2001 Das war mal bei DOS16 !!! Adresse = segment*10h + offset ;-) Ergänzung: zu Doszeiten war nur 1 MB Ram adressierbar (000f:ffffh) da aber eine 16Bit zahl nur 65536 Bytes (0ffffh) adressieren kann mußte man sich was einfallen lassen also hat man die adressierung in segment und offset aufgeteilt die adresse 000d:0000h kann mit segment offset 000d 0000 000c 1000 000b 2000 angesprochen werden alle 3 beispiele ergeben die adresse 000d:0000h Alles klar ??? [ 29. Mai 2001: Beitrag editiert von: toosten ] Zitieren
Ketzer Geschrieben 1. Juni 2001 Geschrieben 1. Juni 2001 Hi, also bei Win32 OS'en wird eigendlich immer (?) mit 32bit pointern gearbeitet. ==> 4GByte adressierbarer Speicher. ==> man braucht dieses Offsetgeschleuder endlich nicht mehr... (lasset die Toten ruhen Grüße Ketzer Zitieren
Curlie Geschrieben 1. Juni 2001 Autor Geschrieben 1. Juni 2001 Thx für die Hilfe. Und ich bin froh, dass man den Offset nicht mehr verwenden muss, da ich die ganzen Rechnungen eh nicht so ganz verstanden hatte Tschoe Curlie Zitieren
toosten Geschrieben 1. Juni 2001 Geschrieben 1. Juni 2001 Das habe ich ja auch am anfang geschrieben ... aber du wolltest es wissen !!! Zitieren
gajUli Geschrieben 1. Juni 2001 Geschrieben 1. Juni 2001 Original erstellt von toosten: <STRONG>DOS16 !!! </STRONG> Wollt ihr jetzt ein Forum fuer Computernostalgie aufmachen? Uli Zitieren
Crush1 Geschrieben 6. Juni 2001 Geschrieben 6. Juni 2001 Offsets sind nichts weiter als Werte die relativ zu einem Startpunkt eine neue Adresse liefern. Bei einem Array kann bedeutet der Offset 2 der dritte Eintrag! Array[0] = 1. Eintrag Array[1] = 2. Array[2] = 3. Das mit DOS16 ist sehr wohl noch ein Thema nur merkt keiner was davon weil die Compiler alles automatisch versuchen soviel wie möglich im gleichen Speicher-Segment zu Compilieren. Dadurch verringert sich die Adressierungs-Bandbreite und damit erhöht sich die gesagmt-Geschwindigkeit aller Speicherzugriffe im selben Segment weil die neuen Segmente erst adressiert werden müssen, was Zeit benötigt. Das hat nichts mit Nostalgie zu tun sondern mit der technischen optimierung bei der Code-Generierung. Übrigens wäre ohne diese Optimierungen wohl so etwas wie die Playstation-, N64-Emulatoren und auch die JIT-UAE-Amiga-Emus nicht dermaßen mit solcher Geschwindigkeit auf unseren Kisten möglich. Außerdem wenn jemand mal direkte Hardware-Programmierung machen muß (Steuerungen, etc.) kommt er um das Thema wohl kaum drum herum. Solange unsere Computer Page-orientiert arbeiten ist das sehr wohl ein Thema. Das Thema Bandbreite ist ja nicht nur beim Computer selbst sondern gerade auch bei Grafikkarten in aller Munde, nicht wahr?!!? Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.