Összeszerelés - Szorzás állandóval
Mivel a multimédiás fájlok hatalmasak a memóriában, lehet, hogy az eax-ben lévő értékeket a regiszterben megszorozni kell, és a nyilvántartási eredménynek eax-nek kell lennie, az előző érték felülírásával. Mindazonáltal, ha a regisztert állandó értékkel kell megszorozni, akkor az eredményt a regiszterbe kell helyezni, majd a parancsot az "lea" utasítással kell használni.
![](http://img.brin-designs.com/img/games/592/assembly-multiplication-constant.png)
Rövid bevezető
Az összeszerelési nyelvek alacsony szintű nyelvek a számítógépek programozásához, és először az 1950-es években alakultak ki. Leginkább második generációs programozási nyelvként ismertek. A közgyűlés nyelvének egyik fontos jellemzője, hogy az első generációs programozáshoz szükséges hibalehető és időigényes műveletek nagy részét kiküszöbölték.
Szorzás az összeszerelésben
Az összeszerelésben két számot megszorozhat a mul (unsigned numbers) és az Imul utasításokkal. Ezek a következők:
mul name_registry
A processzor növeli az eax vagy ax vagy al tartalmát (a rendszerleíró adatbázis méretétől függően, amely a paraméterekben van megadva), majd az eredményt eax, ax, edx vagy dx értékekben tárolja.
A mul használata eléggé zavaró, mert a többszörözött értéket eax-re kell áthelyezni, a többszörös nyilvántartásba kerülő értéket és az eredményt tartalmazó nyilvántartást eax-nek kell lennie.
Ha azonban csak egy állandó értéket szeretne megszorozni, és az eredményt az Ön által kiválasztott rendszerleíró adatbázisba helyezi, akkor az "lea" utasítással (betöltési hatékony cím) található parancsikon is használható. Ez az utasítás a memóriában tárolt adatok címének letöltésére szolgál.
lea target_registry, [memory_address]; helyezze el a memory_address címet a target_registry-ben
Ennek nagy előnye, hogy konstans használatával nem kell egy extra memóriacímet használni. Képzeld el, hogy az ecx-et 7-re szeretné szorozni, és az eredményt ebx-ben menteni, a parancs pedig:
lea ebx, [ecx * 7]
Megjegyzés: A gyorsbillentyűvel két regisztert nem lehet szorozni.