effektive adresse



  • hallo leute 🙂

    ich hab mal eine frage zur effektiven adresse.
    ich weiß zwar wie man die physikalische adr. berechnet (segmentadr. * 16 + offsetadr.),
    aber hab komm grad nicht drauf wie man die eff. adr. berechnet..

    ich bedanke mich jetzt schonmal für die hilfe 🙂

    lg



  • offsetadr. ist damit gemeint.



  • wie ? meine effektive adresse ist also meine offsetadresse ? 😮 hää 😕



  • und wenn du schon dabei bist, kannst du dich auch gleich mal versuchen, was du über rip-relative Addressierung herausfinden kannst z.B. auf der Seite:

    http://www.complang.tuwien.ac.at/ubvl/amd64/amd64h.html



  • "Bei RIP-relativer Adressierung werden Adressen als Offsets zum Instruktionszeiger (rip) angegeben. Dies ist sinnvoll für relative Sprünge, aber auch, um positionsunabhängigen Code zu erzeugen: Wird auf Symbole RIP-relativ zugegriffen, kann der Linker den Code in einen beliebigen Speicherbereich verschieben, ohne die Adressen anpassen zu müssen. Beispiel: movl xvar(%rip), %eax.

    ModR/M-Adressierung dient dem indirekten Zugriff auf Speicherbereiche, deren Adressen zur Laufzeit berechnet werden. Dabei wird die effektive Adresse aus einer Basisadresse und einem Index, die aus General-Purpose-Registern ausgelesen werden, sowie einem Skalierungsfaktor (1, 2, 4 oder 😎 und einem Displacement, die direkt im Code angegeben sind, berechnet. Die Formel für die Adressberechnung lautet: Base + Index*Scale + Displacement, das Ergebnis wird wie eine absolute Adresse behandelt. "

    😃 😃 😃

    wenn ich sowas sehe denke ich mir manchmal ich möchte wieder ein kind sein und mit meinen barbies spielen 🙄 xD

    skalierungsfaktor :
    byte = 1
    word = 2
    dword = 4
    Qword = 8



  • Vorschlag: mit der lebensechten spielen und inspirieren lassen,
    nochmal Jim Knopf und der Lokomotivführer gucken und bei Kaffe und Kuchen ein bißchen üben, mit 16 Bit Befehlen wie mov ax,[bx+si+E] ein paar fette Speicherplätzchen Gebäcke von den nachbarlichen Kaffetischen zu fischen.


Anmelden zum Antworten