Основы информатики и программирования

Эволюция классификация языков программирования. Уровни, поколения, классификация и обзор языков программирования. Объектно-ориентированное программирование. Компьютерные вирусы и способы их распространения. Основные признаки появления в системе вируса.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 08.10.2011
Размер файла 42,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Министерство сельского хозяйства РФ

ФГОУ ВПО Тюменская государственная сельскохозяйственная академия

Институт дистанционного образования

Кафедра экономико-математических методов и вычислительной техники

КОНТРОЛЬНАЯ РАБОТА

по дисциплине

«Информатика»

Выполнил: студент ИДО Соснина Т.В.

Товароведение и экспертиза товаров (сокр)

№ ТС-100920

Проверила: Каюгина С.М.

Тюмень, 2011

Задание 1 (21. Эволюция классификация языков программирования)

Эволюция языков программирования. Алгоритм и программа

Алгоритм - это точно определенное описание способа решения задачи в виде конечной последовательности действий. Иначе, это описание называется формальным

Программа - это логически упорядоченная последовательность команд необходимая для управления компьютером.

Программа, с которой работает процессор, представляет собой последовательность чисел, называемую машинным кодом. Написать программу в машинном коде достаточно сложно и поэтому для представления алгоритма в виде, понятном компьютеру, служат языки программирования.

Языки программирования

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

Нарушение формы записи программы приводят к синтаксической ошибке, а правильно написанная программа, но не отвечающая алгоритму, приводит к семантической ошибке (по другому - логической, или ошибке времени выполнения программы).

Процесс поиска ошибок в программе называют тестированием, процесс устранения ошибок - отладкой программы.

Уровни языков программирования

Если язык программирования ориентирован на конкретный тип процессора и учитывает его особенности, то он называется языком программирования низкого уровня. “Низкий уровень” -это значит, что операторы близки к машинному коду и ориентированы на конкретный тип процессора. Языком самого низкого уровня является язык Ассемблера, который представляет каждую машинную команду в виде символьных условных обозначений, называемых символьными мнемониками. Перевод программы на языке Ассемблера в машинный язык называется транслитерацией. Программа, написанная на языке низкого уровня, может быть использована только в такой среде, в которой она была создана. С помощью языков низкого уровня создаются очень эффективные и компактные программы, так как разработчик получает доступ ко всем возможностям процессора.

Языки программирования высокого уровня ближе и понятнее человеку, чем компьютеру. В программах, созданных на языках высокого уровня, особенности компьютерных систем не учитываются, перенос программ на уровне исходных текстов на другие платформы не создает трудностей, если в них создан транслятор этого языка. Программы разрабатывать на языках высокого уровня проще, а ошибок допускается меньше.

Поколения языков программирования

Языки программирования принято делить на пять поколений. В первое поколение входят языки, созданные в начале 50-х годов, когда первые компьютеры только появились на свет. Это был первый язык ассемблера, созданный по принципу « одна инструкция - одна строка».

Расцвет второго поколения языков программирования пришелся на конец 50-х - начало 60-х годов. Тогда был разработан символический ассемблер, в котором появилось понятие переменной. Он стал первым полноценным языком программирования. Благодаря его возникновению заметно возросли скорость разработки и надежность программ.

Появление третьего поколения языков программирования принято относить к 60-м годам. В это время родились универсальные языки высокого уровня, с их помощью удается решать задачи из любых областей. Такие качества новых языков, как относительная простота, независимость от конкретного компьютера и возможность использования мощных синтаксических конструкций, позволили резко повысить производительность труда программистов. Подавляющее большинство языков этого поколения успешно применяется и сегодня.

С начала 70-х годов по настоящее время продолжается период языков четвертого поколения. Эти языки предназначены для реализации крупных проектов, повышения их надежности и скорости создания. Они обычно ориентированы на специализированные области применения, где хороших результатов можно добиться, используя не универсальные, а проблемно-ориентированные языки, оперирующие конкретными понятиями узкой предметной области. Как правило, в эти языки встраиваются мощные операторы, позволяющие одной строкой описать такую функциональность, для реализации которой в языках младших поколений потребовались бы тысячи строк исходного кода.

Рождение языков пятого поколения произошло в середине 90-х годов. К ним относятся также системы автоматического создания прикладных программ с помощью визуальных средств разработки, без знания программирования. Главная идея, которая закладываемая в эти языки,- возможность автоматического формирования результирующего текста на универсальных языках программирования (который потом требуется откомпилировать). Инструкции же вводятся в компьютер в максимально наглядном виде с помощью методов, наиболее удобных для человека, не знакомого с программированием.

Классификация и обзор языков программирования

Деление языков программирования на классы можно представить на схеме таким образом:

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

Различают такие языки процедурного программирования:

Язык Фортран создан в начале 50-х годов 20-го века для программирования научно-технических задач;

Кобол - создан в конце 60-х годов 20-го века для решения задач обработки больших объемов данных, хранящихся на различных носителях данных;

Алгол (1960 год) - это многоцелевой расширенный язык программирования. В нем впервые введены понятия «блочная структура программы» и «динамическое распределение памяти»;

В середине 60-х годов 20-го века был создан специализированный язык программирования для начинающих - BASIC. Характеризуется простотой освоения и наличием универсальных средств для решения научных, технических и экономических задач, а также задач, например, игровых.

Все перечисленные выше языки были ориентированы на различные классы задач,но они в той или иной мере были привязаны к конкретной архитектуре ЭВМ.

В 1963-1966гг был создан многоцелевой универсальный язык PL-1. Этот язык хорошо приспособлен для исследования и планирования вычислительных процессов, моделирования, решения логических задач, разработки систем математического обеспечения.

Язык Паскаль (PASCAL) (1968-1971гг)- язык процедурного программирования наиболее популярный для ПК, который и в настоящее время успешно применяется. В основу языка Pascal положен подход от общей задачи к частным (более простым и меньшим по объему). К основным принципам, которыми обладает Паскаль, можно отнести: а) Структурное программирование, которое основано на использовании подпрограмм и независимых структур данных; б) Программирование «сверху-вниз», когда задача делится на простые, самостоятельно решаемые задачи. Затем выстраивается решение исходной задачи полностью сверху вниз.

К языкам процедурного программирования можно отнести язык АДА (1979 г) Язык назван в честь первой программистки Ады Лавлейс- дочери Байрона. Его отличает модульность конструкций.

Язык СИ (начало 70-х годов) также относится к языкам процедурного программирования. Первоначальный его вариант планировался как язык для реализации операционной системы Unix вместо языка Ассемблера. Одной из особенностей языка СИ является то, что различия между выражениями и операторами сглаживаются, что приближает его к функциональным языкам программирования. Кроме того, в языке СИ отсутствует понятие процедуры, а использование подпрограмм основано на понятии функции, которая может сочетать в себе возможности процедуры. С одной стороны, по набору управляющих конструкций и структур данных его можно отнести к языкам высокого уровня, а с другой - он имеет набор средств прямого обращения к функциональным узлам компьютера, а это означает, что его можно использовать как операционный язык.

Объектно-ориентированное программирование (ООП)

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

Объединение данных и свойственных им процедур обработки в одном объекте, называется инкапсуляцией и является одним из важнейших принципов ООП.

Другим фундаментальным понятием является класс. Класс это шаблон, на основе которого может быть создан конкретный программный объект, он описывает свойства и методы, определяющие поведение объектов этого класса. Каждый конкретный объект, имеющий структуру этого класса, называется экземпляром класса.

Следующими важнейшими принципами ООП являются наследование и полиморфизм.

Наследование предусматривает создание новых классов на базе существующих и позволяет классу потомку иметь (наследовать) все свойства класса - родителя.

Полиморфизм означает, что рожденные объекты обладают информацией о том, какие методы они должны использовать в зависимости от того, в каком месте цепочки они находятся.

Другим важнейшим принципом ООП является модульность - объекты заключают в себе полное определение их характеристик, никакие определения методов и свойств не должны располагаться вне его, это делает возможным свободное копирование и внедрение одного объекта в другие.

Наиболее современными языками программирования являются С++ и Java. С середины 90-х годов многие объектно-ориентированные языки реализуются как системы визуального проектирования, в которых интерфейсная часть программного продукта создается в диалоговом режиме, практически без написания программных операторов. К объектно - ориентированным системам визуального проектирования относятся Visual Basic, Delphi, C++ Builder, Visual C++.

Язык VBA (Visual Basic for Application) - язык приложений Microsoft Office (Excel, Word, Power Point и др). VBA соблюдает основной синтаксис языка и правила программирования языков Basic - диалектов, позволяет создавать макросы для автоматизации выполнения некоторых операций и графический интерфейс пользователя, интеграцию между различными программными продуктами.

Декларативные языки программирования

К ним относятся функциональные и логические языки программирования.

Функциональное программирование- это способ составления программ, в которых единственным действием является вызов функции. В функциональном программировании не используется память, как место для хранения данных, а, следовательно, не используются промежуточные переменные, операторы присваивания и циклы. Ключевым понятием в функциональных языках является выражение. Программа, написанная на функциональном языке, представляет собой последовательность описания функций и выражений. Выражение вычисляется сведением сложного к простому. Все выражения записываются в виде списков. Первым языком стал язык Лисп (LISP, LIST Processing- обработка списков) создан в 1959г. Этот язык позволяет обрабатывать большие объемы текстовой информации.

Логическое программирование- это программирование в терминах логики.

В 1973 году был создан язык искусственного интеллекта Пролог (PROLOG) (Programming in Logic). Программа на языке Пролог строится из последовательности фактов и правил, затем формулируется утверждение, которое Пролог пытается доказать с помощью правил. Язык сам ищет решение с помощью методов поиска и сопоставления, которые в нем заложены. Логические программы не отличаются высоким быстродействием, так как процесс их выполнения сводится к построению прямых и обратных цепочек рассуждений разнообразными методами поиска.

Языки программирования баз данных

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

создание, преобразование и удаление таблиц в БД;

поиск, отбор, сортировка по запросам пользователя;

добавление новых записей и модификация существующих, удаление записей и др.

Для обработки больших массивов информации и выборки записей по определенным признакам был создан структурированный язык запросов SQL (Structured Query Language). Язык SQL - это стандартный язык работы с реляционными базами данных.

Сегодня в мире ведущие производители СУБД: Microsoft (SQL Server), IBM (DB2), Oracle, Software AG (Adabas), Informix и Sybase. Практически в каждой СУБД имеется свой встроенный язык работы с БД. Так, например, в Oracle имеется встроенный язык PL/SQL, в Informix - INFORMIX 4GL, в Adabas - Natural и т.д

Языки программирования для компьютерных сетей

Языки программирования для компьютерных сетей являются интерпретируемыми. Интерпретаторы для них распространяются бесплатно, а сами программы - в исходных текстах. Такие языки называются скрипт - языками.

Язык HTML (Hyper Text Markup Language) - универсальный язык разметки гипертекста, используемый для подготовки Web документов для Internet. Язык позволяет форматировать текст, добавлять графические образы, работать с таблицами и организовывать связь одного документа с другим с помощью механизма гиперссылок.

Язык Perl (80 г) содержит многочисленные функции работы со строками, массивами, всевозможные средства преобразования данных.

Язык PHP (1995-1997гг) обладает средствами доступа к БД и используется создателями динамических сайтов во всем мире.

Язык Tcl/Tk (конец 80-х годов) состоит из мощных команд, предназначенных для работы с абстрактными нетипизированными объектами и позволяет создавать программы с графическим интерфейсом.

Язык VRML (1994г) создан для организации виртуальных трехмерных интерфейсов в Интернете.

Язык XML. С 1996г идет работа над созданием универсального языка структуры документов. Может стать заменой языка HTML.

Задание 2 (46. Компьютерные вирусы. Симптомы появления компьютерных вирусов, способы распространения)

Компьютерные вирусы являются программами, которые могут “размножаться” и скрытно внедрять свои копии в файлы, загрузочные секторы дисков и документы. Активизация компьютерного вируса может вызвать уничтожение программ и данных.

Компьютерные вирусы, как и биологические, имеют три задачи - заразить, выполнить, размножиться.

Заражается компьютер снаружи, когда человек запускает на исполнение некую программу, которая либо заражена вирусом (т.е. при ее выполнении запускается и вирус), либо сама является вирусом.

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

Став старше и опытнее, но так и не повзрослев, многие из подобных вирусописателей попадают в третью, наиболее опасную группу, которая создает и запускает в мир «профессиональные» вирусы. Эти очень тщательно продуманные и отлаженные программы создаются профессиональными, часто очень талантливыми программистами. Такие вирусы нередко используют достаточно оригинальные алгоритмы, недокументированные и мало кому известные способы проникновения в системные области данных.

В настоящее время известно более 5000 программных вирусов, их можно классифицировать по следующим признакам:

- среде обитания

- способу заражения среды обитания

- воздействию

- особенностям алгоритма

По способу заражения вирусы делятся на резидентные и нерезидентные. Резидентный вирус при заражении (инфицировании) компьютера оставляет в оперативной памяти свою резидентную часть, которая потом перехватывает обращение операционной системы к объектам заражения (файлам, загрузочным секторам дисков и т. п.) и внедряется в них. Резидентные вирусы находятся в памяти и являются активными вплоть до выключения или перезагрузки компьютера. Нерезидентные вирусы не заражают память компьютера и являются активными ограниченное время.

По степени воздействия вирусы можно разделить на следующие виды:

неопасные, не мешающие работе компьютера, но уменьшающие объем свободной оперативной памяти и памяти на дисках, действия таких вирусов проявляются в каких-либо графических или звуковых эффектах

опасные вирусы, которые могут привести к различным нарушениям в работе компьютера

очень опасные, воздействие которых может привести к потере программ, уничтожению данных, стиранию информации в системных областях диска.

По особенностям алгоритма вирусы трудно классифицировать из-за большого разнообразия. Простейшие вирусы - паразитические, они изменяют содержимое файлов и секторов диска и могут быть достаточно легко обнаружены и уничтожены. Можно отметить вирусы-репликаторы, называемые червями, которые распространяются по компьютерным сетям, вычисляют адреса сетевых компьютеров и записывают по этим адресам свои копии.

Известны вирусы-невидимки, называемые стелс-вирусами, которые очень трудно обнаружить и обезвредить, так как они перехватывают обращения операционной системы к пораженным файлам и секторам дисков и подставляют вместо своего тела незараженные участки диска. Наиболее трудно обнаружить вирусы-мутанты, содержащие алгоритмы шифровки-расшифровки, благодаря которым копии одного и того же вируса не имеют ни одной повторяющейся цепочки байтов. Имеются и так называемые квазивирусные или «троянские» программы, которые хотя и не способны к самораспространению, но очень опасны, так как, маскируясь под полезную программу, разрушают загрузочный сектор и файловую систему дисков.

Основные признаки появления в системе вируса

При заражении компьютера вирусом важно его обнаружить. Для этого следует знать об основных признаках проявления вирусов. К ним можно отнести следующие:

прекращение работы или неправильная работа ранее успешно функционировавших программ:

- медленная работа компьютера

- невозможность загрузки операционной системы

- исчезновение файлов и каталогов или искажение их содержимого

- изменение даты и времени модификации файлов

- изменение размеров файлов

- неожиданное значительное увеличение количества файлов на диске

- существенное уменьшение размера свободной оперативной памяти

- вывод на экран непредусмотренных сообщений или изображений

- подача непредусмотренных звуковых сигналов

- частые зависания и сбои в работе компьютера

Следует отметить, что вышеперечисленные явления необязательно вызываются присутствием вируса, а могут быть следствием других причин. Поэтому всегда затруднена правильная диагностика состояния компьютера. К вредоносному программному обеспечению относятся сетевые черви, классические файловые вирусы, троянские программы, хакерские утилиты и прочие программы, наносящие заведомый вред компьютеру, на котором они запускаются на выполнение, или другим компьютерам в сети.

Способы распространения вирусов

Основными путями проникновения вирусов в компьютер являются съемные диски (гибкие и лазерные), а также компьютерные сети. Заражение жесткого диска вирусами может произойти при загрузке программы с дискеты, содержащей вирус. Такое заражение может быть и случайным, например, если дискету не вынули из дисковода А и перезагрузили компьютер, при этом дискета может быть и не системной. Заразить дискету гораздо проще. На нее вирус может попасть, даже если дискету просто вставили в дисковод зараженного компьютера и, например, прочитали ее оглавление.

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

Наиболее часто вирусом заражаются загрузочный сектор диска и исполняемые файлы, имеющие расширения EXE, COM, SYS, BAT. Крайне редко заражаются текстовые файлы.

После заражения программы вирус может выполнить какую-нибудь диверсию, не слишком серьезную, чтобы не привлечь внимания. И, наконец, не забывает возвратить управление той программе, из которой был запущен. Каждое выполнение зараженной программы переносит вирус в следующую. Таким образом, заразится все программное обеспечение.

Типы компьютерных вирусов

Файловые вирусы. Файловые вирусы различными способами внедряются в исполнимые файлы (программы), имеющие расширения COM и EXE и обычно активизируются при их запуске. После запуска зараженной программы вирус находится в оперативной памяти компьютера и является активным (то есть может заражать другие файлы) вплоть до момента выключения компьютера или перезагрузки операционной системы.

При этом файловые вирусы не могут заразить файлы данных (например, файлы, содержащие изображение или звук).

Рассмотрим теперь схему работы простого файлового вируса. В отличие от загрузочных вирусов, которые практически всегда резидентны, файловые вирусы совсем не обязательно резидентны. Рассмотрим схему функционирования нерезидентного файлового вируса. Пусть у нас имеется инфицированный исполняемый файл. Вирус ищет новый объект для заражения - подходящий по типу файл, который еще не заражен. Заражая файл, вирус внедряется в его код, чтобы получить управление при запуске этого файла. Кроме своей основной функции - размножения, вирус вполне может сделать что-нибудь замысловатое (сказать, спросить, сыграть) - это уже зависит от фантазии автора вируса. Если файловый вирус резидентный, то он установится в память и получит возможность заражать файлы и проявлять прочие способности не только во время работы зараженного файла. Заражая исполняемый файл, вирус всегда изменяет его код - следовательно, заражение исполняемого файла всегда можно обнаружить. Но, изменяя код файла, вирус не обязательно вносит другие изменения: -он не обязан менять длину файла -неиспользуемые участки кода -не обязан менять начало файлаНаконец, к файловым вирусам часто относят вирусы, которые "имеют некоторое отношение к файлам", но не обязаны внедряться в их код. Профилактическая защита от файловых вирусов состоит в том что не рекомендуется запускать на выполнение файлы полученные из сомнительного источника и предварительно не проверенные антивирусными программами.

Загрузочные вирусы. Загрузочные вирусы записывают себя в загрузочный сектор диска (Boot-сектор). При загрузке операционной системы с заряженного диска вирусы внедряются в оперативную память компьютера. В дальнейшем загрузочный вирус ведет себя так же, как файловый, то есть может заражать файлы при обращении к ним компьютера.

Рассмотрим схему функционирования очень простого загрузочного вируса, заражающего дискеты.Что происходит, когда вы включаете компьютер?

Пусть у вас имеются чистая дискета и зараженный компьютер, под которым мы понимаем компьютер с активным резидентным вирусом. Как только этот вирус обнаружит, что в дисководе появилась подходящая жертва - в нашем случае не защищенная от записи и еще не зараженная дискета, он приступает к заражению. Заражая дискету, вирус производит следующие действия:- выделяет некоторую область диска и помечает ее как недоступную операционной системе, это можно сделать по-разному, в простейшем и традиционном случае занятые вирусом секторы помечаются как сбойные (bad)-копирует в выделенную область диска свой хвост и оригинальный (здоровый) загрузочный сектор- замещает программу начальной загрузки в загрузочном секторе (настоящем) своей головой

- организует цепочку передачи управления согласно схеме.Таким образом, голова вируса теперь первой получает управление, вирус устанавливается в память и передает управление оригинальному загрузочному сектору. В цепочкеПНЗ (ПЗУ) - ПНЗ (диск) - СИСТЕМАпоявляется новое звено:ПНЗ (ПЗУ) - ВИРУС - ПНЗ (диск) - СИСТЕМА Профилактическая защита от таких вирусов состоит в отказе от загрузки операционной системы с гибких дисков и установке в BIOS вашего компьютера защиты загрузочного сектора от изменений.

Макровирусы. Макровирусы заражают файлы документов Word и электронных таблиц Excel. Макровирусы являются фактически макрокомандами (макросами), которые встраиваются в документ.

После загрузки зараженного документа в приложение макровирусы постоянно присутствуют в памяти компьютера и могут заражать другие документы. Угроза заражения прекращается только после закрытия приложения.

Профилактическая защита от макровирусов состоит в предотвращении и запуска вируса. При открытии документа в приложениях Word и Excel сообщается о присутствии в них макросов (потенциальных вирусов) и предлагает запретить их загрузку. Выбор запрета на загрузку макросов надежно защитит ваш компьютер от заражения макровирусами, однако отключит и полезные макросы, содержащиеся в документе.

Сетевые вирусы. Распространяются по различным компьютерным сетям. К данной категории относятся программы, распространяющие свои копии по локальным и/или глобальным сетям с целью:

проникновения на удаленные компьютеры;

запуска своей копии на удаленном компьютере;

дальнейшего распространения на другие компьютеры в сети.

Интернет -черви (worm) -это вирусы ,которые распространяются в компьютерной сети во вложенных в почтовое сообщение файлах. Автоматическая активизация червя и заражение компьютера могут произойти при обычном просмотре сообщения. Опасность таких вирусов состоит в том, что они по определенным датам активизируются и уничтожают файлы на дисках зараженного компьютера.

Кроме того, интерне- черви часто являются троянами, выполняя роль “троянского коня”, внедренного в операционную систему. Такие вирусы “похищают” идентификатор и пароль пользователя для доступа в Интернет за деньги ничего не подозревающих пользователей.

Лавинообразная цепная реакция распространения вируса базируется на том, что вирус после заражения компьютера начинает рассылать себя по всем адресам электронной почты, которые имеются в адресной книге пользователя. Кроме того, может происходить заражение и по локальной сети, так как червь перебирает все локальные диски и сетевые диски с правом доступа и копируется туда под случайным именем.

Профилактическая защита от Интернет- червей состоит в том, что не рекомендуется открывать вложенные почтовые сообщения файлы, полученные из сомнительных источников.

Особой разновидностью вирусов являются активные элементы (программы) на языках JavaScript или VBScript, которые могут выполнять разрушительные действия, то есть являться вирусами (скрипт- вирусами). Такие программы передаются по Всемирной паутине в процессе загрузки Web-страниц с серверов Интернета в браузер локального компьютера.

Профилактическая защита от скрипт- вирусов состоит в том, что в браузере можно запретить получение активных элементов на локальный компьютер.

Полиморфные вирусы. Большинство вопросов связано с термином "полиморфный вирус". Этот вид компьютерных вирусов представляется на сегодняшний день наиболее опасным. Объясним же, что это такое. Полиморфные вирусы это вирусы, модифицирующие свой код в зараженных программах таким образом, что два экземпляра одного и того же вируса могут не совпадать ни в одном бите.Такие вирусы не только шифруют свой код, используя различные пути шифрования, но и содержат код генерации шифровщика и расшифровщика, что отличает их от обычных шифровальных вирусов, которые также могут шифровать участки своего кода, но имеют при этом постоянный код шифровальщика и расшифровщика.Полиморфные вирусы - это вирусы с самомодифицирующимися расшифровщиками. Цель такого шифрования: имея зараженный и оригинальный файлы, вы все равно не сможете проанализировать его код с помощью обычного дизассемблирования.

Список литературы:

язык программирование компьютерный вирус

1. Могилев и д.р Информатика: Учебное пособие для вузов/ А.В. Могилев, Н.И. Пак, Е.К. Хеннер; Под ред. Е.К. Хеннера.- М.: Изд. центр «Академия»,2000

2. «Портфолио». Фестиваль исследовательских и творческих работ учащихся [Электронный ресурс] . -- Электрон. дан. (8 файлов, 50 тыс. записей). --М., [2005].- Режим доступа: http://portfolio.1september.ru/

3. Бурин Е.А. Введение в основы информатики и вычислительной техники: Курс лекций: [для вузов].-Алма-Ата: Мектеп, 1989.-143 с.: ил.; 20 см.-Библиогр.: с.143

4. Безруков Н.Н. Компьютерные вирусы. - М.: Наука, 1991.

5. Компьютерная документация от А до Я - Вирусы [Электронный ресурс] . -- Электрон. дан. (3 файлов, 112 тыс. записей). --М., [2004].- Режим доступа:

6. Николаев Р. Начала информатики: Язык Лого / Под ред. Б.Сендова; Пер. с болг. Э.Паскалевой.-М.: Наука, 1989.-173с

7. Остерейковский В.А. Информатика.- М.: Высшая школа,2001.-512с.

Размещено на Allbest.ru


Подобные документы

  • Характеристики и свойства языков программирования. Исследование эволюции объектно-ориентированных языков программирования. Построение эволюционной карты механизмов ООП. Разработка концептуальной модели функционирования пользовательского интерфейса.

    курсовая работа [2,6 M], добавлен 17.11.2014

  • Понятия языка программирования, разновидности и характеристика языков. Исторический обзор их создания и применения. Классификация, примеры использования. Характеристики языков программирования с точки зрения элементов объектной модели, их популярность.

    реферат [463,6 K], добавлен 07.09.2009

  • Развитие и классификация языков программирования. Методические рекомендации по изучению языков программирования. Основные понятия объектно-ориентированного программирования. Создание электронного учебного пособия с помощью языка гипертекстовой разметки.

    курсовая работа [331,1 K], добавлен 06.09.2011

  • Рассмотрение общих сведений и уровней языков программирования. Ознакомление с историей развития, использования языков программирования. Обзор достоинств и недостатков таких языков как Ассемблер, Паскаль, Си, Си++, Фортран, Кобол, Бейсик, SQL, HTML, Java.

    курсовая работа [759,5 K], добавлен 04.11.2014

  • Сущность и функции языков программирования, их эволюция и оценка популярности различных видов. Особенности компьютерных программ, разработанных на компилируемом, интерпретируемом или смешанном языке. Основные классы и иерархия языков программирования.

    презентация [873,4 K], добавлен 23.01.2013

  • Классификация языков программирования. Использование циклических конструкций и выполнение итерационных процессов. Алгоритмические структуры циклов языков C, C++, Java, C#. Особенности современных языков программирования высокого уровня и их применение.

    курсовая работа [345,6 K], добавлен 13.11.2009

  • Классификация электронных средств обучения, преимущества их использования, рекомендации по созданию. Требования к структуре и содержанию учебного материала. Особенности изучения языков программирования на уроках информатики. Среда программирования Delphi.

    дипломная работа [770,2 K], добавлен 12.09.2015

  • Особенности и суть языков программирования, способы их задания, цепочки символов и операции над ними. Классификация языков и грамматик, форма Бэкуса-Наура. Определение и свойства регулярных выражений, конечные автоматы и грамматики, описание программы.

    курсовая работа [231,5 K], добавлен 23.06.2011

  • Почему C++. Возникновение и эволюция языка C++. Сравнение языков С++ и С. Эффективность и структура. Процедурное программирование. Модульное программирование. Абстракция данных. Объектно-ориентированное программирование. Улучшенный С.

    реферат [26,4 K], добавлен 03.06.2004

  • Эволюция языков программирования от низкого уровня до современности. Языки программирования второго поколения - ассемблер. Императивные, функциональные, логические и объектно-ориентированные языки. Машинная независимость. Парадигмы программирования.

    презентация [353,5 K], добавлен 14.10.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.