224 читали · 4 года назад
Пишем самомодифицирующуюся программу вычисления факториала под x86
Базовый факториал Для начала нам понадобится обычная программа вычисления факториала. factorial: push ebp mov ebx, eax factorial_start: sub ebx, 1 cmp ebx, 0 je factorial_end mul ebx jmp factorial_start factorial_end: pop ebp ret Здесь все довольно просто. Самомодифицирующийся факториал В алгоритме вычисления факториала есть два места, в которых изменение значения при выполнении имеет смысл: начальное значение и множитель. Технические особенности Во-первых, самомодифицирующиеся программы имеют свою специфику...