Для адресации в пределах 1 Мбайта нужно 20 двоичных разрядов, которые получаются из двух шестнадцатиразрядных слов (сегмента и смещения) следующим образом: содержимое сегмента смещается влево на 4 разряда, освободившиеся правые разряды заполняются нулями, результат складывается с содержимым письмо oblivion смещения. Все это делается ради затруднения анализа кода вируса. В настоящее письмо oblivion время системой Яндекс пользуется около 45% русскоязычных пользователей интернета, а с помощью Google ищут более 30% пользователей. Причиной возникновения таких блоков данных является кластерная организация данных в OLE2-документах и таблицах - даже если введен всего один символ текста, то под него выделяется один или даже несколько кластеров данных. Теперь в мире найдется немного людей, которые способны задать подобный вопрос. Поэтому мне кажется более объективным деление, в котором помимо критерия вирусных масок участвуют и другие параметры: Степень сложности полиморфик-кода (процент от всех инструкций процессора, которые могут встретиться в коде расшифровщика) Использование анти-эмуляторных приемов Постоянство алгоритма расшифровщика Постоянство длины расшифровщика Изменение выполняемого кода Наиболее часто подобный способ полиморфизма используется макро-вирусами, которые при создании своих новых копий случайным образом меняют имена своих переменных, вставляют пустые строки или меняют свой код каким-либо иным способом.