Online: 0x016 (22)
haker.info  — Etyczny hacking_
Spreading knowledge like a virus.

 haker.info Baza wiedzy

Asembler x86/x64

Rejestry mo┼╝na sobie wyobrazi─ç jako specjalna, wewn─Ötrzna pami─Ö─ç w procesorze. Niekt├│rzy nie lubi─ů tu okre┼Ťlenia ÔÇ×pami─Ö─çÔÇŁ, gdy┼╝ rejestr├│w si─Ö nie adresuje. Mimo wszystko mo┼╝na je por├│wna─ç do ÔÇ×pojemnik├│w na dane komputeroweÔÇŁ. I to takich do kt├│rych jest bardzo szybki dost─Öp, wi─Öc operacje z ich u┼╝yciem wykonywane s─ů bardzo szybko.

Bezpo┼Ťredni dost─Öp do rejestr├│w jako programi┼Ťci mo┼╝emy uzyska─ç w j─Özyku Asembler. Odwo┼éuje si─Ö do nich poprzez ich nazwy (np. rax, rbx, rcx...).

Je┼Ťli na przyk┼éad chcemy wykona─ç dodawanie to wpisujemy dwie warto┼Ťci do dw├│ch r├│┼╝nych rejestr├│w i wykonujemy na nich operacj─Ö sumowania odpowiedni─ů instrukcj─ů procesora (wynik te┼╝ b─Ödzie w okre┼Ťlonym rejestrze).

Zatem za pomoc─ů rejestr├│w procesora mo┼╝emy przekazywa─ç dane do przetworzenia, ale te┼╝ np. uzyska─ç dane wynikowe, kt├│re zwraca okre┼Ťlona instrukcja czy funkcja. Je┼Ťli dane nie mieszcz─ů si─Ö w rejestrze, czyli np. jest to d┼éugi ci─ůg tekstu, to wykonujemy wtedy adresowanie. Fragment tekstu do przetworzenia umieszczamy w zmiennej (takiej ÔÇ×kom├│rceÔÇŁ pami─Öci) o wymy┼Ťlonej nazwie, a do rejestru podajemy tylko adres do tego miejsca w pami─Öci (przewa┼╝nie jest to nazwa tej zmiennej poprzedzona specjaln─ů dyrektyw─ů pobieraj─ůc─ů adres).

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.