- •Оглавление
- •1. Информация, ее представление и измерение
- •2. Общая характеристика процессов сбора, передачи и обработки информации
- •2.1. Системы счисления и действия в них
- •2.2. Общая характеристика процессов передачи информации
- •2.3. Кодирование и шифрование информации
- •2.4. Компьютерные вирусы
- •3. Модели решения функциональных и вычислительных задач
- •3.1. Функции алгебры логики
- •Коммутативность
- •Ассоциативность
- •Дистрибутивность
- •3.2. Булева алгебра. Функциональная полнота
- •3.3. Минимизация функций алгебры логики
- •4. Программные средства реализации информационных процессов
- •5. Технические средства реализации информационных процессов
- •6. Алгоритмизация и программирование
- •6.2. Данные, типы данных, структуры и обработка
- •7. Архитектура эвм
- •8. Программное обеспечение
- •8.1. Классификация и основные характеристики по
- •8.2. Структура технического обеспечения
- •8.3.Состав операционной системы и ее основные функции
- •9. Технология программирования
- •9.1. Организация данных в эвм
- •9.2. Стеки и очереди
- •9.3. Графы
- •Ж адный алгоритм
- •Алгоритм ближайшего соседа
- •9.4. Деревья
- •9.5. Сортировка данных
- •10. Базы данных
- •10.1. Основные понятия
- •10.2. Модели данных в субд
- •Реляционные базы данных
- •Выбор типа поля
- •10.3. Двенадцать правил Кодда
- •12 Правил Кодда
- •10.4. Основные понятия реляционной модели
- •Литература
2.4. Компьютерные вирусы
Компьютерный вирус – специальная программа, которая составлена кем-то со злым умыслом или для демонстрации честолюбивых, в плохом смысле, интересов, способная к воспроизводству своего кода и к переходу от программы к программе (инфицирование). Перехватывая управление (прерывания), вирус подключается к работающей программе или к другим программам и затем дает команду компьютеру для записи зараженной версии программы, а затем возвращает управление программе как ни в чем не бывало. Далее этот вирус может заработать, перехватив управление от программы.
По мере появления новых компьютерных вирусов разработчики антивирусных программ пишут вакцину против нее – так называемую антивирусную программу, которая, анализируя файлы, может распознать в них скрытый код вируса и либо удалить этот код (вылечить), либо удалить зараженный файл. Базы антивирусных программ обновляются регулярно.
Пример. Одну из самых популярных антивирусных программ AIDSTESTавтор (Д. Лозинский) обновляет иногда дважды в неделю. Известная антивирусная программа AVPлаборатории Касперского содержит в своей базе данные о нескольких десятках тысяч вирусах, вылечиваемых программой.
Вирусы бывают следующих основных видов:
загрузочные – заражающие стартовые секторы дисков, где находится самая важная информация о структуре и файлах диска (служебные области диска, так называемые boot–сектора);
аппаратно-вредные – приводящие к нарушению работы, а то и вовсе к разрушению аппаратуры, например, к резонансному воздействию на винчестер, к "пробою" точки на экране дисплея;
программные – заражающие исполняемые файлы (например, exe-файлы с непосредственно запускаемыми программами);
полиморфные – которые претерпевают изменения (мутации) от заражения к заражению, от носителя к носителю;
стелс-вирусы – маскирующиеся, незаметные (не определяющие себя ни размером, ни прямым действием);
макровирусы – заражающие документы и шаблоны текстовых редакторов, используемые при их создании;
многоцелевые вирусы.
Особенно опасны вирусы в компьютерных сетях, так как они могут парализовать работу всей сети.
Вирусы могут проникать в сеть, например:
с внешних носителей информации (из копируемых файлов);
через электронную почту (из присоединенных к письму файлов);
через Интернет (из загружаемых файлов).
Существуют различные методы и пакеты программ для борьбы с вирусами (антивирусные пакеты).
Пример. Исследования свидетельствуют, что, если половина компьютеров в мире будет иметь постоянную, эффективную антивирусную защиту, то компьютерные вирусы лишатся возможности размножаться.
3. Модели решения функциональных и вычислительных задач
3.1. Функции алгебры логики
Рассмотрим множество векторов X = {<x1... xn>}. Будем предполагать, что координаты этих векторов могут принимать значения 0 или 1. Таким образом множество X состоит из 2n векторов. Произведем отображение множества X в множество Y = {0, 1} [6].
Определение. Функцией алгебры логики называется функция, дающая однозначное отображение X в Y.
Определение. Если две функции алгебры логики f1(x1... xn) и
f2( x1... xn) принимают на всех наборах значений аргументов одинаковые значения, то их называют равными
Теорема 1. Число различных функций алгебры логики, зависящих от n аргументов конечно и равно 2n.
Приведем иллюстрацию сказанного на основе анализа таблицы:
-
x1, x2,..., xn
f(x1, x2,..., xn )
00...00
a1
00...01
a2
00...10
a3
...
...
11...11
a2n
Как показывает таблица, задавая тот или иной конкретный двоичный набор аргументов, задается одна из возможных функций алгебры логики, принимающая значение 0 или 1. Различное число таких наборов равно 2n. Следовательно, число функций будет равно 2n.
Рассмотрим геометрическую интерпретацию области определения функции алгебры логики. Сопоставим наборам аргументов алгебры логики точки n - мерного пространства. Тогда множество 2n таких наборов определит множество вершин n - мерного единичного куба. Таким образом, множество вершин n - мерного единичного куба есть область определения функций алгебры логики. Пусть вершина А соответствует набору
( х1 = 1, х2 = 1, х3 = 1 ), а вершина B - набору ( х1 = 1, х2 = 1, х3 = 0 ).
Тогда графически это может быть представлено следующим рисунком:
X3
A
0 X2
B
X1
Рис. 3.1. Геометрическая интерпретация области определения функции алгебры логики
Рассмотрим основные функции, которые играют важную роль в построении функций алгебры логики и ее приложениях:
1. f = X.
2. f = X
3. f = 0.
4. f = 1.
5. f = X v Y.
6. f = X Y.
7. f = X Y.
8. f = X Y.
9. f = X Y.
10. f = X | Y.
11. f = X Y .
Эти одиннадцать функций алгебры логики позволяют строить новые функции, при этом используется два подхода:
подстановка в функцию новой функции вместо аргументов;
переобозначение аргументов.
Определение. Функция, полученная из f1 ... fk путем применения возможно многократного указанных двух подходов называется суперпозицией функций f1 ... fk.
Пример. Представить в виде таблицы функцию
f (X1,X2 ) = { ( X1 X2 ) v (X1 X2 ) } = X1 | X2.
Решение.
X1 |
X2 |
X1 X2 |
X1 X2 |
f |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
Пример. Показать, что X1 X2 = X1 v X2 на основе построения и сравнения функций по таблицам истинности.
Решение.
X1 |
X2 |
X1 X2 |
X1 |
X1 v X2 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
Аналогично можно показать, что
X1 X2 = ( (X1 v X2) & (X1 v X2 ) ).
X Y = (X1 v X2) & (X1 v X2 ).
(X1 ) = X.
X1 & X2 = (X1 v X2).
X1 v X2 = (X1 & X2).
Рассмотрим свойства конъюнкции, дизъюнкции и отрицания.