Уроците на Jonie
( БЪРЗ
КУРС ПО ASSEMBLER )
Този
урок има за цел обясняването на най-важните за един кракер неща свързани с познаването
и използването на assembler.
Регистри |
Регистрите на процесора
са основната част в която се съхраняват данни. |
Флагове |
Флаговете са част от регистрите
на процесора, където се запаметяват |
AND - Събиране |
|
Мнемоничен код: |
ADD цел, източник |
Действие: |
(цел) + (източник); резултат в (цел) |
Пример: |
ADD EAX, EDX |
AND - Логическо И |
|
Мнемоничен код: |
AND цел, източник |
Действие: |
(цел) побитово И-свързване с (източник); резултат в (цел) |
Пример: |
AND AH, 5h |
CALL - Извикване на процедура |
|
Мнемоничен код: |
CALL име на процедура или адрес |
Действие: |
извиква подпрограма и поставя
адреса на обратния преход в |
Пример: |
CALL 00456984 |
CMP - Сравняване |
|
Мнемоничен код: |
CMP операнд 1, операнд 2 |
Действие: |
Изважда операнд 1 от операнд
2.Резултатът не се запомня, но |
Пример: |
CMP EAX, ECX |
DEC - Намаляване с една единица |
|
Мнемоничен код: |
DEC операнд |
Действие: |
операндът ( байт или дума ) се намалява с единица |
Пример: |
DEC ECX |
INC - Увеличаване с единица |
|
Мнемоничен код: |
INC операнд |
Действие: |
операндът се увеличава с единица |
Пример: |
INC EBX |
JMP - Безусловен пеход |
|
Мнемоничен код: |
JMP цел |
Действие: |
безусловен пеход към дадената цел |
Пример: |
JMP 01AC4F |
JZ - Преход, ако е нула |
|
Мнемоничен код: |
JZ цел |
Действие: |
преминава към зададената
цел, ако резултатът от |
Пример: |
JZ 445FAC |
JNZ - Преход, ако не е нула |
|
Мнемоничен код: |
JNZ цел |
Действие: |
преминава към зададената
цел, ако резултатът от |
Пример: |
JNZ 447AD3 |
MOV - Прехвърляне ( копиране ) |
|
Мнемоничен код: |
MOV цел, източник |
Действие: |
Копира един байт или дума
от операнда-източник |
Пример: |
MOV EAX, ECX |
NOP - Няма операция |
|
Мнемоничен код: |
NOP |
Действие: |
не се изпълнява никаква операция.
NOP е средство за |
Пример: |
NOP |
POP - Извеждане от стека |
|
Мнемоничен код: |
POP цел |
Действие: |
най-горната дума от стека се прехвърля в регистъра-цел |
Пример: |
POP EDX |
PUSH - Въвеждане в стека |
|
Мнемоничен код: |
PUSH източник |
Действие: |
думата от източника се прехвърля във върха на стека |
Пример: |
PUSH EAX |
RET - Връщане от процедура ( подпрограма ) |
|
Мнемоничен код: |
RET |
Действие: |
връщане от процедура ( подпрограма ) |
Пример: |
RET |
TEST - Проверка ( логическо сравняване ) |
|
Мнемоничен код: |
TEST операнд 1, операнд 2 |
Действие: |
двата операнда 1 и 2 се свързват
побитово чрез логическата |
Пример: |
TEST EBX, ECX |