Skip to content
EntityQ2165944· pop 18· linked from 233 articles

Самомодифицирующийся код

Sign in to save

source code that alters its instructions to the hardware while executing

Wikidata facts

Subclass of
technique
Sources (1)

via Wikidata · CC0

Article · Русский

Самомодифицирующийся код (СМК) — программный приём, при котором приложение создаёт или изменяет часть своего программного кода во время выполнения. Такой код обычно применяют в программах, написанных под процессор с фон-неймановской организацией памяти. По времени проведения модификации метод делится на: * Модификация при инициализации — проводится один раз перед запуском изменяемого кода * Модификация на лету (on-the-fly) — изменение состояния программы во время исполнения В обоих случаях изменение проходит непосредственно в машинном коде, когда новые инструкции перезаписывают старые (напр. условный переход , , , и т.п. заменяются на безусловный переход или NOP). В наборе инструкций IBM/360 и Z/Architecture имеется инструкция EXECUTE (EX), которая перезаписывает целевую инструкцию (записанную во втором байте команды EX) самыми младшими 8 битами регистра 1. На указанных архитектурах с её помощью реализуется стандартный, законный метод временного изменения инструкций.

Abstract from DBpedia / Wikipedia · CC BY-SA