🗊Презентация Лекция. Исполняемые файлы java

Нажмите для полного просмотра!
Лекция. Исполняемые файлы java, слайд №1Лекция. Исполняемые файлы java, слайд №2Лекция. Исполняемые файлы java, слайд №3Лекция. Исполняемые файлы java, слайд №4Лекция. Исполняемые файлы java, слайд №5Лекция. Исполняемые файлы java, слайд №6Лекция. Исполняемые файлы java, слайд №7Лекция. Исполняемые файлы java, слайд №8Лекция. Исполняемые файлы java, слайд №9Лекция. Исполняемые файлы java, слайд №10Лекция. Исполняемые файлы java, слайд №11Лекция. Исполняемые файлы java, слайд №12Лекция. Исполняемые файлы java, слайд №13Лекция. Исполняемые файлы java, слайд №14Лекция. Исполняемые файлы java, слайд №15Лекция. Исполняемые файлы java, слайд №16Лекция. Исполняемые файлы java, слайд №17Лекция. Исполняемые файлы java, слайд №18Лекция. Исполняемые файлы java, слайд №19Лекция. Исполняемые файлы java, слайд №20Лекция. Исполняемые файлы java, слайд №21Лекция. Исполняемые файлы java, слайд №22Лекция. Исполняемые файлы java, слайд №23Лекция. Исполняемые файлы java, слайд №24Лекция. Исполняемые файлы java, слайд №25Лекция. Исполняемые файлы java, слайд №26Лекция. Исполняемые файлы java, слайд №27Лекция. Исполняемые файлы java, слайд №28Лекция. Исполняемые файлы java, слайд №29Лекция. Исполняемые файлы java, слайд №30Лекция. Исполняемые файлы java, слайд №31Лекция. Исполняемые файлы java, слайд №32Лекция. Исполняемые файлы java, слайд №33Лекция. Исполняемые файлы java, слайд №34Лекция. Исполняемые файлы java, слайд №35Лекция. Исполняемые файлы java, слайд №36Лекция. Исполняемые файлы java, слайд №37Лекция. Исполняемые файлы java, слайд №38Лекция. Исполняемые файлы java, слайд №39Лекция. Исполняемые файлы java, слайд №40Лекция. Исполняемые файлы java, слайд №41Лекция. Исполняемые файлы java, слайд №42Лекция. Исполняемые файлы java, слайд №43Лекция. Исполняемые файлы java, слайд №44Лекция. Исполняемые файлы java, слайд №45Лекция. Исполняемые файлы java, слайд №46Лекция. Исполняемые файлы java, слайд №47Лекция. Исполняемые файлы java, слайд №48Лекция. Исполняемые файлы java, слайд №49Лекция. Исполняемые файлы java, слайд №50Лекция. Исполняемые файлы java, слайд №51Лекция. Исполняемые файлы java, слайд №52Лекция. Исполняемые файлы java, слайд №53Лекция. Исполняемые файлы java, слайд №54Лекция. Исполняемые файлы java, слайд №55Лекция. Исполняемые файлы java, слайд №56Лекция. Исполняемые файлы java, слайд №57Лекция. Исполняемые файлы java, слайд №58Лекция. Исполняемые файлы java, слайд №59Лекция. Исполняемые файлы java, слайд №60Лекция. Исполняемые файлы java, слайд №61Лекция. Исполняемые файлы java, слайд №62Лекция. Исполняемые файлы java, слайд №63Лекция. Исполняемые файлы java, слайд №64Лекция. Исполняемые файлы java, слайд №65Лекция. Исполняемые файлы java, слайд №66Лекция. Исполняемые файлы java, слайд №67Лекция. Исполняемые файлы java, слайд №68Лекция. Исполняемые файлы java, слайд №69Лекция. Исполняемые файлы java, слайд №70Лекция. Исполняемые файлы java, слайд №71Лекция. Исполняемые файлы java, слайд №72Лекция. Исполняемые файлы java, слайд №73Лекция. Исполняемые файлы java, слайд №74Лекция. Исполняемые файлы java, слайд №75Лекция. Исполняемые файлы java, слайд №76Лекция. Исполняемые файлы java, слайд №77Лекция. Исполняемые файлы java, слайд №78Лекция. Исполняемые файлы java, слайд №79Лекция. Исполняемые файлы java, слайд №80Лекция. Исполняемые файлы java, слайд №81Лекция. Исполняемые файлы java, слайд №82Лекция. Исполняемые файлы java, слайд №83Лекция. Исполняемые файлы java, слайд №84Лекция. Исполняемые файлы java, слайд №85Лекция. Исполняемые файлы java, слайд №86Лекция. Исполняемые файлы java, слайд №87Лекция. Исполняемые файлы java, слайд №88Лекция. Исполняемые файлы java, слайд №89Лекция. Исполняемые файлы java, слайд №90Лекция. Исполняемые файлы java, слайд №91Лекция. Исполняемые файлы java, слайд №92Лекция. Исполняемые файлы java, слайд №93Лекция. Исполняемые файлы java, слайд №94Лекция. Исполняемые файлы java, слайд №95Лекция. Исполняемые файлы java, слайд №96Лекция. Исполняемые файлы java, слайд №97Лекция. Исполняемые файлы java, слайд №98Лекция. Исполняемые файлы java, слайд №99Лекция. Исполняемые файлы java, слайд №100Лекция. Исполняемые файлы java, слайд №101

Содержание

Вы можете ознакомиться и скачать презентацию на тему Лекция. Исполняемые файлы java. Доклад-сообщение содержит 101 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Лекция  
Исполняемые файлы java
Описание слайда:
Лекция Исполняемые файлы java

Слайд 2





Темы

Структура class файла.
Средства работы с class файлами.
 Байт-код java.
Стеганография и цифровые водяные знаки.
 Способы скрытого вложения информации class файлы.
Описание слайда:
Темы Структура class файла. Средства работы с class файлами. Байт-код java. Стеганография и цифровые водяные знаки. Способы скрытого вложения информации class файлы.

Слайд 3





Class файл
Содержит байт-код, который выполняется на виртуальной машине.
Содержит информацию о классе.
Генерируется компилятором из исходного кода (.java)
Jar файл – представляет собой zip архив class файлов.
Описание слайда:
Class файл Содержит байт-код, который выполняется на виртуальной машине. Содержит информацию о классе. Генерируется компилятором из исходного кода (.java) Jar файл – представляет собой zip архив class файлов.

Слайд 4





Структура class файла

class файл состоит из 1,2,4 байтовых значений.
Введем обозначения: 
u1 – byte ( 1 байт )
u2 – long ( 2 байта)
u4 – int    ( 4 байта)
Описание слайда:
Структура class файла class файл состоит из 1,2,4 байтовых значений. Введем обозначения: u1 – byte ( 1 байт ) u2 – long ( 2 байта) u4 – int ( 4 байта)

Слайд 5





Структура class файла
Описание слайда:
Структура class файла

Слайд 6





Структура class файла
u4 magic
Идентификатор формата файла класса.
Позволяет идентифицировать .class файл.
Всегда принимает значение: 0xCAFEBABE.
Описание слайда:
Структура class файла u4 magic Идентификатор формата файла класса. Позволяет идентифицировать .class файл. Всегда принимает значение: 0xCAFEBABE.

Слайд 7





Структура class файла
u2 minor_version
u2 major_version

Вспомогательная и основная версии class файла.
Описание слайда:
Структура class файла u2 minor_version u2 major_version Вспомогательная и основная версии class файла.

Слайд 8





Структура class файла
u2 constant_pool_count
Размер массива констант.
Описание слайда:
Структура class файла u2 constant_pool_count Размер массива констант.

Слайд 9





Структура class файла
 cp_info constant_pool[constant_pool_count-1]
Пул констант представлен в виде массива структур в которых содержится: 
строковые константы, имена классов, интерфейсов и   полей …
Описание слайда:
Структура class файла cp_info constant_pool[constant_pool_count-1] Пул констант представлен в виде массива структур в которых содержится: строковые константы, имена классов, интерфейсов и полей …

Слайд 10






Формат каждого элемента пула констант определяется первым байтом (tag).
Описание слайда:
Формат каждого элемента пула констант определяется первым байтом (tag).

Слайд 11


Лекция. Исполняемые файлы java, слайд №11
Описание слайда:

Слайд 12





Структура class файла
u2 access_flags
Значение элемента является маской флагов, используемых таким образом, чтобы обозначить права доступа и свойства этого класса.
Описание слайда:
Структура class файла u2 access_flags Значение элемента является маской флагов, используемых таким образом, чтобы обозначить права доступа и свойства этого класса.

Слайд 13






 Флаги доступа
Описание слайда:
Флаги доступа

Слайд 14





Структура class файла
u2 this_class
u2 super_class
  Ссылки на константу с названием класса и его суперкласса.
Описание слайда:
Структура class файла u2 this_class u2 super_class Ссылки на константу с названием класса и его суперкласса.

Слайд 15





Структура class файла
u2 interfaces_count
  
Размер массива интерфейсов.
Описание слайда:
Структура class файла u2 interfaces_count Размер массива интерфейсов.

Слайд 16





Структура class файла
u2 interfaces[interfaces_count]  
Массив интерфейсов. Каждый элемент массива является индексом таблицы пула констант, где указывается имя интерфейса.
Описание слайда:
Структура class файла u2 interfaces[interfaces_count] Массив интерфейсов. Каждый элемент массива является индексом таблицы пула констант, где указывается имя интерфейса.

Слайд 17





Структура class файла
u2 fields_count
Размер массива полей.
Описание слайда:
Структура class файла u2 fields_count Размер массива полей.

Слайд 18





Структура class файла
field_info fields[fields_count]
Массив полей.
Описание слайда:
Структура class файла field_info fields[fields_count] Массив полей.

Слайд 19





Структура class файла
u2 methods_count
Размер массива методов.
Описание слайда:
Структура class файла u2 methods_count Размер массива методов.

Слайд 20





Структура class файла
method_info methods[methods_count]
Массив методов.
Описание слайда:
Структура class файла method_info methods[methods_count] Массив методов.

Слайд 21


Лекция. Исполняемые файлы java, слайд №21
Описание слайда:

Слайд 22






Атрибут Code
Описание слайда:
Атрибут Code

Слайд 23





Структура class файла
u2 attributes_count
Размер массива атрибутов.
Описание слайда:
Структура class файла u2 attributes_count Размер массива атрибутов.

Слайд 24





Структура class файла
attribute_info attributes[attributes_count]
Массив атрибутов.
Описание слайда:
Структура class файла attribute_info attributes[attributes_count] Массив атрибутов.

Слайд 25





Структура class файла
Описание слайда:
Структура class файла

Слайд 26





Средства работы с  class-файлами
JBE - Java Bytecode Editor – программа, позволяющая просматривать и редактировать class файлы.
javap – декомпилятор class файлов.
Описание слайда:
Средства работы с class-файлами JBE - Java Bytecode Editor – программа, позволяющая просматривать и редактировать class файлы. javap – декомпилятор class файлов.

Слайд 27





Исходный код
       Файл Main.java
public class Main 
{
    public static void main (String [] args )
    {
           int a = 4;
		int b = 5;
		int c = a+b;
	}  
}
> javac Main.java
Описание слайда:
Исходный код Файл Main.java public class Main { public static void main (String [] args ) { int a = 4; int b = 5; int c = a+b; } } > javac Main.java

Слайд 28


Лекция. Исполняемые файлы java, слайд №28
Описание слайда:

Слайд 29


Лекция. Исполняемые файлы java, слайд №29
Описание слайда:

Слайд 30


Лекция. Исполняемые файлы java, слайд №30
Описание слайда:

Слайд 31


Лекция. Исполняемые файлы java, слайд №31
Описание слайда:

Слайд 32


Лекция. Исполняемые файлы java, слайд №32
Описание слайда:

Слайд 33


Лекция. Исполняемые файлы java, слайд №33
Описание слайда:

Слайд 34


Лекция. Исполняемые файлы java, слайд №34
Описание слайда:

Слайд 35


Лекция. Исполняемые файлы java, слайд №35
Описание слайда:

Слайд 36


Лекция. Исполняемые файлы java, слайд №36
Описание слайда:

Слайд 37


Лекция. Исполняемые файлы java, слайд №37
Описание слайда:

Слайд 38





Исходный код
       Файл Main.java
public class Main 
{
    public static void main (String [] args )
    {
           int a = 4;
		int b = 5;
		int c = a+b;
	}  
}
> javac Main.java
Описание слайда:
Исходный код Файл Main.java public class Main { public static void main (String [] args ) { int a = 4; int b = 5; int c = a+b; } } > javac Main.java

Слайд 39





Просмотр байт-кода
> javap -c Main.class
Описание слайда:
Просмотр байт-кода > javap -c Main.class

Слайд 40





Байт-код Java
Байт-код Java — набор инструкций, исполняемых виртуальной машиной Java. Каждый код операции байт-кода имеет размер один байт.
Описание слайда:
Байт-код Java Байт-код Java — набор инструкций, исполняемых виртуальной машиной Java. Каждый код операции байт-кода имеет размер один байт.

Слайд 41





Виды инструкций
загрузка и сохранение;
арифметические и логические операции;
преобразование типов;
создание и преобразование объекта;
управление стеком;
операторы перехода;
вызовы методов и возврат;
Описание слайда:
Виды инструкций загрузка и сохранение; арифметические и логические операции; преобразование типов; создание и преобразование объекта; управление стеком; операторы перехода; вызовы методов и возврат;

Слайд 42





Формат инструкций
Описание слайда:
Формат инструкций

Слайд 43





Инструкции загрузки
Загрузка типа int из локальной переменной:
iload_0 = 26 (0x1a)
iload_1 = 27 (0x1b)
iload_2 = 28 (0x1c)
iload_3 = 29 (0x1d)

Не имеют аргументов.
Описание слайда:
Инструкции загрузки Загрузка типа int из локальной переменной: iload_0 = 26 (0x1a) iload_1 = 27 (0x1b) iload_2 = 28 (0x1c) iload_3 = 29 (0x1d) Не имеют аргументов.

Слайд 44





Инструкции загрузки
Загрузка типа int из локальной переменной:
iload = 21 (0x15)


Имеет один аргумент.
Описание слайда:
Инструкции загрузки Загрузка типа int из локальной переменной: iload = 21 (0x15) Имеет один аргумент.

Слайд 45





Инструкции загрузки
Загрузка из локальной переменной

iload  — для типа int 
lload — для типа long
fload — для типа float
dload — для типа double
Описание слайда:
Инструкции загрузки Загрузка из локальной переменной iload — для типа int lload — для типа long fload — для типа float dload — для типа double

Слайд 46





Инструкции сохранения
Сохранение локальной переменно типа int:
istore_0 = 59 (0x3b)
istore_1 = 60 (0x3c)
istore_2 = 61 (0x3d)
istore_3 = 62 (0x3e)
Не имеют аргументов
Описание слайда:
Инструкции сохранения Сохранение локальной переменно типа int: istore_0 = 59 (0x3b) istore_1 = 60 (0x3c) istore_2 = 61 (0x3d) istore_3 = 62 (0x3e) Не имеют аргументов

Слайд 47





Инструкции сохранения
Сохранение локальной переменной типа int:

istore = 54 (0x36)

Имеет один аргумент
Описание слайда:
Инструкции сохранения Сохранение локальной переменной типа int: istore = 54 (0x36) Имеет один аргумент

Слайд 48





Инструкции загрузки
Сохранение в локальной переменной

istore — для типа int 
lstore — для типа long
fstore — для типа float
dstore — для типа double
Описание слайда:
Инструкции загрузки Сохранение в локальной переменной istore — для типа int lstore — для типа long fstore — для типа float dstore — для типа double

Слайд 49





Математические операции

iadd = 96 (0x60) –  сложение типа int
ladd = 97 (0x61) –  сложение типа long
fadd = 98 (0x62) –  сложение типа float
dadd = 99 (0x63) – сложение типа double

imul = 104 (0x68) – умножение типа int
Описание слайда:
Математические операции iadd = 96 (0x60) – сложение типа int ladd = 97 (0x61) – сложение типа long fadd = 98 (0x62) – сложение типа float dadd = 99 (0x63) – сложение типа double imul = 104 (0x68) – умножение типа int

Слайд 50





Примеры кода
Описание слайда:
Примеры кода

Слайд 51





Примеры кода
Описание слайда:
Примеры кода

Слайд 52





Java Virtual Machine
Виртуальная машина java реализована в виде стековой машины.
Команды делятся на два вида: аргументы и операции.
Аргументы расположены перед операциями.
Аргументы  - добавляют элементы в стек.
Операции – извлекают элементы из стека.
Описание слайда:
Java Virtual Machine Виртуальная машина java реализована в виде стековой машины. Команды делятся на два вида: аргументы и операции. Аргументы расположены перед операциями. Аргументы - добавляют элементы в стек. Операции – извлекают элементы из стека.

Слайд 53





Пример вычисления
Описание слайда:
Пример вычисления

Слайд 54





Пример вычисления
Описание слайда:
Пример вычисления

Слайд 55





Пример вычисления
Описание слайда:
Пример вычисления

Слайд 56





Пример вычисления
Описание слайда:
Пример вычисления

Слайд 57





Пример вычисления
Описание слайда:
Пример вычисления

Слайд 58





Пример вычисления
Описание слайда:
Пример вычисления

Слайд 59





Пример вычисления
Описание слайда:
Пример вычисления

Слайд 60





СТЕГАНОГРАФИЯ (В широком смысле).
Англоязычный термин"Скрытие информации" (Information hiding (IH)).

Определение. IH - это семейство методов, при помощи которых некоторое дополнительное сведение погружается в основное 
(покрывающее сообщение (ПС)) при сохранении хорошего качества ПС.

Две основные части IH:
1. Собственно стеганография (стеганография). 
2. Цифровые "водяные знаки" (ЦВЗ).

Задачи стеганографии:
Погрузить дополнительное сообщение в ПС так, чтобы сам факт его присутствия в нем нельзя было бы обнаружить нелегитимным пользователям.

Задача ЦВЗ:
Погрузить дополнительные сведения (обычно идентификационный код автора) в ПС так, чтобы его нельзя было бы удалить, не ухудшив существенно качество ПС. 
(Факт такого вложения может и обнаруживаться нелегитимными пользователями.)
Описание слайда:
СТЕГАНОГРАФИЯ (В широком смысле). Англоязычный термин"Скрытие информации" (Information hiding (IH)). Определение. IH - это семейство методов, при помощи которых некоторое дополнительное сведение погружается в основное (покрывающее сообщение (ПС)) при сохранении хорошего качества ПС. Две основные части IH: 1. Собственно стеганография (стеганография). 2. Цифровые "водяные знаки" (ЦВЗ). Задачи стеганографии: Погрузить дополнительное сообщение в ПС так, чтобы сам факт его присутствия в нем нельзя было бы обнаружить нелегитимным пользователям. Задача ЦВЗ: Погрузить дополнительные сведения (обычно идентификационный код автора) в ПС так, чтобы его нельзя было бы удалить, не ухудшив существенно качество ПС. (Факт такого вложения может и обнаруживаться нелегитимными пользователями.)

Слайд 61





Типичные ПС
- неподвижное изображение
- подвижное изображение (видео)
- аудио файлы
- речь
- печатный смысловой текст
- интернет - протоколы
- программы для компьютеров(исполняемые файлы).
Описание слайда:
Типичные ПС - неподвижное изображение - подвижное изображение (видео) - аудио файлы - речь - печатный смысловой текст - интернет - протоколы - программы для компьютеров(исполняемые файлы).

Слайд 62





Вложение в class файл
Применяется для защиты авторских прав.
Не должно нарушать работу программы.
Не должно быть обнаружимо.
Описание слайда:
Вложение в class файл Применяется для защиты авторских прав. Не должно нарушать работу программы. Не должно быть обнаружимо.

Слайд 63





Методы вложения в исполняемый class файл
Модификация class файла
Перестановка элементов массивов:
Интерфейсов
Полей 
Методов
Атрибутов
Модификация байт-кода
Вставка операций
Замена конструкций на эквивалентные 
Перестановка операций
Описание слайда:
Методы вложения в исполняемый class файл Модификация class файла Перестановка элементов массивов: Интерфейсов Полей Методов Атрибутов Модификация байт-кода Вставка операций Замена конструкций на эквивалентные Перестановка операций

Слайд 64





Количество бит, которые можно вложить за счет перестановки массивов.
Имеется массив из N элементов.
Количество комбинаций равно  N!
                      
Число бит которые можно будет вложить равно
Описание слайда:
Количество бит, которые можно вложить за счет перестановки массивов. Имеется массив из N элементов. Количество комбинаций равно N! Число бит которые можно будет вложить равно

Слайд 65






Файл Main.java
public class Main
{
	Integer integer = 4;
	String string = "123";
	int number = 5;
	public static void main (String [] args )
      {      
	}  
    
}
> javac Main.java
Описание слайда:
Файл Main.java public class Main { Integer integer = 4; String string = "123"; int number = 5; public static void main (String [] args ) { } } > javac Main.java

Слайд 66


Лекция. Исполняемые файлы java, слайд №66
Описание слайда:

Слайд 67


Лекция. Исполняемые файлы java, слайд №67
Описание слайда:

Слайд 68





Перестановка элементов массивов полей
Количество бит, которые мы можем вложить равно
Для массива интерфейсов и атрибутов все аналогично.
Описание слайда:
Перестановка элементов массивов полей Количество бит, которые мы можем вложить равно Для массива интерфейсов и атрибутов все аналогично.

Слайд 69





Перестановка элементов массивов методов
Файл Main.java
public class Main
{
    public static void main (String [] args )
    {      
	}  
    void getX()
	{}
	void getY()
	{}
	void setZ()
	{}
}
> javac Main.java
Описание слайда:
Перестановка элементов массивов методов Файл Main.java public class Main { public static void main (String [] args ) { } void getX() {} void getY() {} void setZ() {} } > javac Main.java

Слайд 70





Перестановка элементов массивов методов
Описание слайда:
Перестановка элементов массивов методов

Слайд 71





Перестановка элементов массивов методов
Описание слайда:
Перестановка элементов массивов методов

Слайд 72





Перестановка элементов массивов методов
Файл Main.java
public class test
{
    test()
    {      
     }  
    void getX()
	{}
	void getY()
	{}
	void setZ()
	{}
}
> javac test.java
Описание слайда:
Перестановка элементов массивов методов Файл Main.java public class test { test() { } void getX() {} void getY() {} void setZ() {} } > javac test.java

Слайд 73





Перестановка элементов массивов методов
Описание слайда:
Перестановка элементов массивов методов

Слайд 74





Перестановка элементов массивов методов
Описание слайда:
Перестановка элементов массивов методов

Слайд 75





Перестановка элементов массивов методов
Количество бит которые можно вложить за счет перестановки массивов методов равно:
Если класс содержит функцию main, то k = 2 , если нет то k = 1.
Описание слайда:
Перестановка элементов массивов методов Количество бит которые можно вложить за счет перестановки массивов методов равно: Если класс содержит функцию main, то k = 2 , если нет то k = 1.

Слайд 76






Количество бит которые можно вложить за счет перестановки массивов в class файле равно:
Если класс содержит функцию main, то k = 2 , если нет то k = 1.
Описание слайда:
Количество бит которые можно вложить за счет перестановки массивов в class файле равно: Если класс содержит функцию main, то k = 2 , если нет то k = 1.

Слайд 77





Перестановка элементов массивов методов
Не меняют размер исполняемого файла.
Объем вложения ограничен.
Не обнаруживается
Описание слайда:
Перестановка элементов массивов методов Не меняют размер исполняемого файла. Объем вложения ограничен. Не обнаруживается

Слайд 78





Модификация байт-кода
Вставка операций
Замена конструкций на эквивалентные 
Перестановка операций
Описание слайда:
Модификация байт-кода Вставка операций Замена конструкций на эквивалентные Перестановка операций

Слайд 79





Вставка операций
Размер вложенной информации 4*3 = 12 байт
Описание слайда:
Вставка операций Размер вложенной информации 4*3 = 12 байт

Слайд 80





Вставка операций
Увеличивает размер исполняемого файла.
Объем вложения неограничен.
Обнаруживается с помощью статистического анализа.
Описание слайда:
Вставка операций Увеличивает размер исполняемого файла. Объем вложения неограничен. Обнаруживается с помощью статистического анализа.

Слайд 81





Замена конструкций на эквивалентные 

Замена математических операций на эквивалентные
Замена ветвлений кода в условиях
Описание слайда:
Замена конструкций на эквивалентные Замена математических операций на эквивалентные Замена ветвлений кода в условиях

Слайд 82





Замена математических операций на эквивалентные

a+b        a-(-b)
a-b         a+(-b)       
a*b        (-a)*(-b)
a*(-b)    (-a)*(b)
Описание слайда:
Замена математических операций на эквивалентные a+b  a-(-b) a-b  a+(-b) a*b  (-a)*(-b) a*(-b)  (-a)*(b)

Слайд 83





Замена математических операций на эквивалентные
Описание слайда:
Замена математических операций на эквивалентные

Слайд 84





Замена математических операций на эквивалентные
Описание слайда:
Замена математических операций на эквивалентные

Слайд 85





Замена математических операций на эквивалентные
Описание слайда:
Замена математических операций на эквивалентные

Слайд 86





Замена математических операций на эквивалентные
Описание слайда:
Замена математических операций на эквивалентные

Слайд 87





Замена математических операций на эквивалентные

Могут увеличить объём исполняемого файла но не значительно.
Объем вложения ограничен.
Обнаружение зависит от вложенного объёма информации.
Описание слайда:
Замена математических операций на эквивалентные Могут увеличить объём исполняемого файла но не значительно. Объем вложения ограничен. Обнаружение зависит от вложенного объёма информации.

Слайд 88





Замена ветвлений кода в условиях
Описание слайда:
Замена ветвлений кода в условиях

Слайд 89





Замена ветвлений кода в условиях
Описание слайда:
Замена ветвлений кода в условиях

Слайд 90





Замена ветвлений кода в условиях
Не меняют размер исполняемого файла.
Объем вложения ограничен.
Обнаружение зависит от вложенного объёма информации.
Описание слайда:
Замена ветвлений кода в условиях Не меняют размер исполняемого файла. Объем вложения ограничен. Обнаружение зависит от вложенного объёма информации.

Слайд 91





Перестановка операций
Перестановка элементов, участвующих в операциях.
Изменение порядка присваивания переменных.
Описание слайда:
Перестановка операций Перестановка элементов, участвующих в операциях. Изменение порядка присваивания переменных.

Слайд 92





Перестановка элементов, участвующих в операциях
a+b  b+a
a+b+c  a+c+b
a*b  b*a
a*b*c  a*c*b
Математические операции: сложение, умножение.
Логические операции: AND, OR, XOR
Описание слайда:
Перестановка элементов, участвующих в операциях a+b  b+a a+b+c  a+c+b a*b  b*a a*b*c  a*c*b Математические операции: сложение, умножение. Логические операции: AND, OR, XOR

Слайд 93






Количество, вкладываемых бит равно
При условии что все элементы разные.
Описание слайда:
Количество, вкладываемых бит равно При условии что все элементы разные.

Слайд 94





Перестановка элементов, участвующих в операциях
Описание слайда:
Перестановка элементов, участвующих в операциях

Слайд 95


Лекция. Исполняемые файлы java, слайд №95
Описание слайда:

Слайд 96


Лекция. Исполняемые файлы java, слайд №96
Описание слайда:

Слайд 97





Перестановка элементов, участвующих в операциях.
Не меняют размер исполняемого файла.
Объем вложения ограничен.
Обнаружение зависит от вложенного объёма информации.
Описание слайда:
Перестановка элементов, участвующих в операциях. Не меняют размер исполняемого файла. Объем вложения ограничен. Обнаружение зависит от вложенного объёма информации.

Слайд 98





Изменение порядка присваивания переменных.
Перестановка не должна менять результат вычисления
Описание слайда:
Изменение порядка присваивания переменных. Перестановка не должна менять результат вычисления

Слайд 99





Изменение порядка присваивания переменных.
Не меняют размер исполняемого файла.
Объем вложения ограничен.
Обнаружение зависит от вложенного объёма информации.
Описание слайда:
Изменение порядка присваивания переменных. Не меняют размер исполняемого файла. Объем вложения ограничен. Обнаружение зависит от вложенного объёма информации.

Слайд 100






Можем вложить три бита
Описание слайда:
Можем вложить три бита

Слайд 101





Сравнение методов вложения
Описание слайда:
Сравнение методов вложения



Похожие презентации
Mypresentation.ru
Загрузить презентацию