Online: 0x08A (138)
haker.iиfø  — Etyczny hacking_
Spreading knowledge like a virus.

 haker.info Baza wiedzy

Asembler x86/x64 » Rejestry procesora

Rejestr wskaźnika instrukcji

Rejestr ten zawiera adres następnej instrukcji do wykonania. Chciałbym tutaj wspomnieć dodatkowo o adresowaniu relatywnym do wskaźnika instrukcji, które jest dostępny w trybie 64-bitowym. Jest to bardzo przydatne przy tworzeniu kodu relokowalnego/wstrzykiwalnego, który musi być niezależny od miejsca w pamięci. Jeśli adresujemy względnie do rejestru RIP, to po zmianie miejsca kodu, który wstrzykniemy do pamięci nasze odwołania (adresy) nie zostaną zniszczone (nie będą nieprawidłowe).

W architekturze 32-bitowej z tego rodzaju adresowania korzystało się przy wykonywaniu skoków (JMP) czy wywołań procedur (CALL). Z wejściem trybu 64-bitowego możliwy jest dodatkowo swobodny dostęp do miejsc w pamięci korzystając z rejestru wskaźnika instrukcji RIP.

rip

Dawid Farbaniec

Wykaz literatury (bibliografia)

  • Advanced Micro Devices Inc., 2017 – AMD64 Architecture Programmer's Manual
  • Intel Corporation, 2019 – Intel 64 and IA-32 Architectures Software Developer's Manual
  • Randall Hyde, 2010 – Asembler. Sztuka programowania. Wydanie II, ISBN: 9788324628544
Wszystkie treści umieszczone na tej witrynie są chronione prawem autorskim. Surowo zabronione jest kopiowanie i rozpowszechnianie zawartości tej witryny bez zgody autora. Wszelkie opublikowane tutaj treści (w tym kody źródłowe i inne) służą wyłącznie celom informacyjnym oraz edukacyjnym. Właściciele tej witryny nie ponoszą odpowiedzialności za ewentualne niezgodne z prawem wykorzystanie zasobów dostępnych w witrynie. Użytkownik tej witryny oświadcza, że z zamieszczonych tutaj danych korzysta na własną odpowiedzialność. Wszelkie znaki towarowe i nazwy zastrzeżone zostały użyte jedynie w celach informacyjnych i należą wyłącznie do ich prawnych właścicieli. Korzystając z zasobów witryny haker.info oświadczasz, że akceptujesz powyższe warunki oraz politykę prywatności.