14Lue ja ymmärrä konekoodia
Bittisiirrot ja LEA
Keskitaso30MIN
Bittisiirrot ja LEA: bittien liikuttelu ja osoitearitmetiikka
![SHL siirtää bittejä vasemmalle = kerro 2^n:llä; LEA laskee [kanta + indeksi*skaalaus + siirto] osoitelausekkeen yhdellä käskyllä.](https://cdn.sanity.io/images/3unppnk2/ha-content/3f5f4255678d670f7dbd4e39e5039146b402c8a6-1200x628.png?w=3840&q=75&fit=clip&auto=format)
Olemme käyttäneet MOV-, ADD- ja IMUL-käskyjä rekistereiden arvojen siirtoon ja laskentaan. Mutta kun käännät C-koodia konekielelle, kääntäjä korvaa monet IMUL- ja IDIV-käskyt paljon nopeammilla bittisiirroilla, ja monet osoitelaskut yhdellä erikoiskäskyllä nimeltään LEA. Nämä ovat takaisinmallinnuksen (reverse engineering) näkymässä jatkuvasti vastassa, joten on aika opetella tunnistamaan ne.
1 / 5
Hakatemia Pro
Hakkeroinnin oppiminen alkaa tästä
Sadat interaktiiviset kurssit, virtuaalilabrat ja CTF-haasteet selaimessasi. Aloita ilmainen kokeilu ilman korttitietoja.