Информационные технологии
Понятие информации и информационных процессов. Язык, как способ представления информации и кодирование. Системы счисления и основы логики. Устройство компьютера и программное обеспечение. Алгоритмизация и программирование, моделирование и формализация.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 02.03.2013 |
Размер файла | 1,2 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Для того, чтобы воспользоваться хранящейся в файле информацией, необходимо знать, на каком именно устройстве и в какой папке находится нужный файл. Эти сведения содержатся в полном имени файла. Полное имя файла состоит из пути к файлу и имени файла. Путь к файлу представляет собой перечень имен папок, которые нужно последовательно посетить, чтобы спуститься к файлу с самого высокого уровня дерева файлов.
В операционных системах семейства Windows полное имя файла начинается с имени устройства внешней памяти, на котором он расположен. Имя устройства образуется двумя символами - латинской буквой и следующим за ней двоеточием. Имена A: и B: используются только для дисководов гибких магнитных дисков (дискет). После имени устройства следуют имена папок, разделенные символом “\” или “/”.
Пример полного имени файла: C:\Documents and Settings\Администратор\Мои документы\Harry Potter\User.ini
Часть операционной системы, ответственная за хранение файлов и папок, называется файловой системой. Файловая система предоставляет пользователю возможность создавать, переименовывать и удалять файлы и папки, а также просматривать содержимое папок.
Поиск файлов с использованием шаблонов имен.
На современном персональном компьютере могут храниться десятки тысяч файлов. Естественно, пользователь может забыть, в какой папке хранится нужный ему файл. Для поиска файлов существуют специальные программы, просматривающие папки и сравнивающие имена находящихся в них файлов с заданным. Иногда задача усложняется тем, что пользователь не помнит точно имя файла. В этом случае следует использовать шаблоны имен файлов. Шаблон представляет собой имя файла, в котором отдельные символы или их группы заменены на знаки “*” или “?”. Звездочка в шаблоне означает, что на ее месте может находиться произвольная (возможно пустая) последовательность символов, а “?” - любой одиночный символ.
Примеры: По шаблону a*1 будут найдены все файлы, имена которых начинаются на букву a, а заканчиваются на цифру 1, в том числе alpha1, animals2001 и т.д.
По шаблону *.doc будут найдены все файлы c расширением.doc.
По шаблону *video?.avi будут найдены все файлы c расширением avi и содержащие подстроку videо между произвольной последовательностью символов в начале имени и любым символом на месте вопросительного знака, например, (myvideo1.avi, videoM.avi и т.д.).
Замечание. Операционные системы семейства UNIX различают большие и маленькие буквы в именах файлов. Поэтому с точки зрения, например, Linux readme.TXT и Readme.txt - это различные имена файлов. С семейством Windows ситуация более сложная. Различаются ли регистры букв -- это зависит от типа применяемой файловой системы. В файловой системе NTFS регистры букв различаются.
4.5 Компьютерные вирусы
информация кодирование алгоритмизация программный
Компьютерным вирусом называется программа (некоторая совокупность исполняемого кода и данных), которая обладает способностью создавать свои копии (не обязательно полностью совпадающие с оригиналом) и внедрять их в различные объекты и ресурсы компьютерных систем, сетей и т.д. без ведома пользователя. При этом копии сохраняют способность дальнейшего распространения.
Классификация компьютерных вирусов.
Существует несколько подходов к классификации компьютерных вирусов по их характерным особенностям:
Ш По среде обитания вируса
Ш По способу заражения
Ш По деструктивным возможностям
Ш По особенностям алгоритма работ
Рассмотрим каждый подход в отдельности. По среде обитания вирусы подразделяются на:
Ш Файловые вирусы - вирусы поражающие исполняемые файлы, написанные в различных форматах. Соответственно в зависимости от формата, в котором написана программа это будут EXE или COM вирусы.
Ш Загрузочные вирусы - вирусы поражающие загрузочные сектора (Boot сектора) дисков или сектор содержащий системный загрузчик(Master Boot Record) винчестера.
Ш Сетевые вирусы - вирусы, распространяющиеся в различных компьютерных сетях и системах.
Ш Макро вирусы - вирусы поражающие файлы Microsoft Office
Ш Flash - вирусы - вирусы поражающие микросхемы FLASH памяти BIOS.
По способу заражения вирусы делятся на:
Ш Резидентные вирусы - вирусы, которые при инфицировании компьютера оставляют свою резидентную часть в памяти. Они могут перехватывать прерывания операционной системы, а также обращения к инфицированным файлам со стороны программ и операционной системы. Эти вирусы могут оставаться активными в плоть до выключения или перезагрузки компьютера.
Ш Нерезидентные вирусы - вирусы не оставляющие своих резидентных частей в оперативной памяти компьютера. Некоторые вирусы оставляют в памяти некоторые свои фрагменты не способные к дальнейшему размножению такие вирусы считаются не резидентными.
По деструктивным возможностям вирусы подразделяются на:
Ш Безвредные вирусы - это вирусы ни как не влияющие на работу компьютера за исключение, быть может, уменьшения свободного места на диске и объема оперативной памяти.
Ш Неопасные вирусы - вирусы, которые проявляют себя в выводе различных графических, звуковых эффектов и прочих безвредных действий.
Ш Опасные вирусы - это вирусы, которые могут привести к различным сбоям в работе компьютеров, а также их систем и сетей.
Ш Очень опасные вирусы - это вирусы, приводящие к потере, уничтожению информации, потере работоспособности программ и системы в целом.
По особенностям алгоритма работы вирусы можно подразделить на:
Ш Вирусы спутники(companion) - эти вирусы поражают EXE-файлы путем создания COM-файла двойника, и по этому при запуске программы запустится сначала COM-файл с вирусом, после выполнения своей работы вирус запустит EXE-файл. При таком способе заражения "инфицированная" программа не изменяется.
Ш Вирусы "черви" (Worms) - вирусы, которые распостраняются в компьютерных сетях. Они проникают в память компьютера из компьютерной сети, вычисляют адреса других компьютеров и пересылают на эти адреса свои копии. Иногда они оставляют временные файлы на компьютере но некоторые могут и не затрагивать ресурсы компьютера за исключением оперативной памяти и разумеется процессора.
Ш "Паразитические" - все вирусы, которые модифицируют содержимое файлов или секторов на диске. К этой категории относятся все вирусы не являются вирусами-спутниками и вирусами червями.
Ш "Стелс-вирусы" (вирусы-невидимки, stealth) - представляющие собой весьма совершенные программы, которые перехватывают обращения DOS к пораженным файлам или секторам дисков и ?подставляют? вместо себя незараженные участки информации. Кроме этого, такие вирусы при обращении к файлам используют достаточно оригинальные алгоритмы, позволяющие "обманывать" резидентные антивирусные мониторы.
Ш "Полиморфные" (самошифрующиеся или вирусы-призраки, polymorphic) - вирусы достаточно труднообнаруживаемые вирусы, не имеющие сигнатур, т.е. не содержащие ни одного постоянного участка кода. В большинстве случаев два образца одного и того же полиморфного вируса не будут иметь ни одного совпадения. Это достигается шифрованием основного тела вируса и модификациями программы-расшифровщика.
Ш "Макро-вирусы" - вирусы этого семейства используют возможности макроязыков, встроенных в системы обработки данных (текстовые редакторы, электронные таблицы и т.д.). В настоящее время наиболее распространены макро-вирусы, заражающие текстовые документы редактора Microsoft Word.
Приведенная выше классификация не может считаться полной, так как прогресс не стоит на месте, появляются всё новые и новые интеллектуальные устройства и соответственно вирусы работающие на них, например уже появились вирусы поражающие мобильные телефоны.
Меры защиты от компьютерных вирусов.
Для защиты от вирусов можно использовать:
Ш Общие средства защиты информации, которые полезны также ка страховка от физической порчи дисков, неправильно работающих программ или ошибочных действий пользователей;
Ш профилактические меры, позволяющие уменьшить вероятность заражения вирусом;
Ш специализированные программы для защиты от вирусов.
Общие средства защиты информации полезны не только для защиты от вирусов. Имеются две основные разновидности этих средств:
копирование информации -- создание копий файлов и системных областей дисков;
разграничение доступа предотвращает несанкционированное использование информации, в частности, защиту от изменений программ и данных вирусами, неправильно работающими программами и ошибочными действиями пользователей.
Несмотря на то, что общие средства защиты информации очень важны для защиты от вирусов, все же их одних недостаточно. Необходимо применять специализированные программы для защиты от вирусов. Эти программы можно разделить на несколько видов:
Программы - детекторы позволяют обнаруживать файлы, зараженные одним из нескольких известных вирусов.
Программы - доктора, или фаги, "лечат" зараженные программы или диски, "выкусывая" из зараженных программ тело вируса, т.е. восстанавливая программу в том состоянии, в котором она находилась до заражения вирусом.
Программы - ревизоры сначала запоминают сведения о состоянии программ и системных областей дисков, а затем сравнивают их состояние с исходным. При выявлении несоответствий, об этом сообщается пользователю.
Доктора - ревизоры -- это гибриды ревизоров и докторов, т.е. программы, которые не только обнаруживают изменения в файлах и системных областях дисков, но и могут автоматически вернуть их в исходное состояние.
Программы - фильтры располагаются резидентно в оперативной памяти компьютера и перехватывают те обращения к операционной системе, которые используются вирусами для размножения и нанесения вреда, и сообщают о них пользователю. Пользователь может разрешить или запретить выполнение соответствующей операции.
Программы - вакцины, или иммунизаторы, модифицируют программы и диски таким образом, что это не отражается на работе программ, но вирус, от которого производится вакцинация, считает эти программы и диски уже зараженными. Эти программы крайне неэффективны и далее не рассматриваются.
Стратегия защиты от вирусов. Ни один тип антивирусных программ по отдельности не дает, к сожалению, полной защиты от вирусов. По этому наилучшей стратегией защиты от вирусов является многоуровневая, "эшелонная" оборона. Опишем структуру этой обороны.
Средствам разведки в "обороне" от вирусов соответствуют программы - детекторы, позволяющие проверять вновь полученное программное обеспечение на наличие вирусов.
На переднем крае обороны находятся программы-фильтры (резидентные программы для защиты от вируса). Эти программы могут первыми сообщить о вирусной атаке и предотвратить заражение программ и диска.
Второй эшелон обороны составляют программы-ревизоры, программы-доктора и доктора-ревизоры. Ревизоры обнаруживают нападение даже тогда, когда вирус сумел "просочиться" через передний край обороны. Программы-доктора применяются для восстановления зараженных программ, если ее копий нет в архиве. Но они не всегда лечат правильно. Доктора-ревизоры обнаруживают нападение вируса и лечат зараженные файлы, причем контролируют правильность лечения.
Самый глубокий эшелон обороны -- это средства разграничения доступа. Они не позволяют вирусам и неверно работающим программам, даже если они проникли в компьютер, испортить важные данные.
И наконец, в "стратегическом резерве" находятся архивные копии информации и "эталонные" дискеты с программными продуктами. Они позволяют восстановить информацию при ее повреждении на жестком диске.
5. Моделирование и формализация
5.1 Информационное моделирование
Понятие объекта - одно из основных понятий информационного моделирования. Объект - это нечто, воспринимаемое человеком как единое целое. Объекты могут быть материальными (предметы и явления) и нематериальными, то есть существующими только в умах (идеи и образы).
Примеры объектов: учебник, кнопка клавиатуры, теорема Пифагора, горная вершина.
Все объекты обладают определенными отличительными признаками, или, иначе говоря, свойствами. Следует различать название свойства и его значение.
Пример: названия свойств объекта “автомобиль”: государственный регистрационный номер, фамилия владельца, тип автомобиля, марка.
Вариант значений этих свойств для конкретного автомобиля: У 213 ТР 77, Иванов, микроавтобус, Фольксваген.
Если свойство принимает только числовые значения, то оно называется параметром.
Множество объектов с одинаковым набором свойств называется классом. Так, например, все объекты со свойствами автомобиля могут быть объединены в класс под названием “автомобили”. Конкретный объект, принадлежащий какому-либо классу, называется экземпляром этого класса. Значения свойств экземпляров, принадлежащих одному классу, могут быть различны.
О каждом объекте можно сообщить огромное количество сведений, описывающих его вид, состав, поведение, историю и другие свойства. Практический же интерес обычно представляет только некоторые из них. Какие именно - зависит от точки зрения на объект, от цели его использования. Так, например, с точки зрения дизайнера, к существенным сведениям об автомобиле некоторой марки относятся его форма и цвет, владельца автомагазина в первую очередь интересует наличие спроса на эти машины и разница между заводской и розничной ценой, защитникам окружающей среды требуется знать объем выброса вредных веществ, водителю - особенности эксплуатации автомобиля.
5.2 Информационная модель объекта
Совокупность существенных с некоторой точки зрения сведений об объекте называется его информационной моделью. Информационная модель объекта может быть представлена в виде текстового описания, в виде формул, графическом виде (график, чертеж, карта, рисунок, фотография, схема), в виде электронной таблицы, компьютерной программы, записи в базе данных, а также многими другими способами. Информационная модель используется вместо реального объекта в процессах передачи, хранения и обработки информации о нем.
Пример: информационные модели компьютера (схема, рисунок, спецификация, описание).
Процесс создания информационных моделей называется информационным моделированием. Информационные модели всегда создаются с определенной целью. Даже если цель моделирования не сформулирована в явном виде, она все равно существует и может быть выявлена. Состав и форма представления моделей определяются целью моделирования. Критерием качества информационной модели является ее соответствие цели моделирования, подтверждаемое практикой.
Пример: цель чертежа детали - предоставить рабочему необходимую для ее изготовления информацию. Если эта цель не достигнута, то модель выполнена плохо, если достигнута - хорошо.
Пример: цель словесного описания покупаемого компьютера - снабдить продавца информацией, необходимой для подбора конфигурации. Если словесное описание выглядит так: “Мне бы надо… Наверное, вы сами знаете… В общем, компьютер нужен”, то эта модель плоха, поскольку вряд ли продавец сможет по ней оформить заказ. Модель “компьютер стоимостью в пределах такой-то суммы для поиска в Интернет и работы с текстовыми документами ” гораздо лучше, поскольку она сразу позволяет продавцу предложить конкретные варианты конфигурации.
5.3 Степень формализации модели
Важным свойством информационной модели является степень ее формализации. Степень формализации определяется требованиями, предъявляемыми к форме представления модели. Чем четче и детальней указаны требования, тем более формальной является модель. Для создания наиболее формальных моделей используются специальные формальные языки - языки программирования, язык шахматной нотации и т.д.
Примеры формальных моделей: компьютерная программа, чертеж, математические и химические формулы.
Примеры моделей со слабой степенью формализации: рисунок, словесное описание на естественном (неформальном) языке.
К недостаткам формальных моделей относится сложность их построения, связанная с необходимостью неукоснительного соблюдения всех формальных требований. Преимущество формальных моделей заключается в том, что они, как правило, не допускают неоднозначного прочтения. Поэтому формальные модели удобны для автоматизированной компьютерной обработки и часто создаются именно для этой цели.
5.4 Степень детализации моделей
Модели могут различаться по степени детализации, то есть количеству подробностей, сообщаемых об объекте. Так, например, на портретах, выполненных одним художником, могут быть выписаны мельчайшие детали человеческого лица, портреты работы другого мастера создают лишь общее впечатление о изображенном человеке. При этом и те, и другие портреты могут достигать целей, поставленных перед собой художниками.
Подробные модели несут больше информации, но они более объемны, и следовательно, требуют больших затрат на хранение, передачу и обработку. Менее детализированные модели иногда труднее создавать, чем подробные, поскольку при этом требуется отбирать для моделирования из множества свойств объекта наиболее существенные.
Степень формализации и степень детализации модели определяются целью моделирования. Качество модели снижает как излишняя, так и недостаточная детализация и формализация.
5.5 Избыточность и противоречивость моделей
Информационная модель называется избыточной, если в ней содержатся сведения, которые могут быть получены из других сведений, содержащихся в модели.
Пример:
Данная модель является избыточной, так как информация о значении третьего угла может быть получена по известной формуле, использующей значения двух других углов.
Информационная модель называется противоречивой, если в ней содержатся противоречащие друг другу сведения. Избыточность информационной модели часто является причиной ее противоречивости.
Пример:
Данная модель треугольника является противоречивой.
Если модель противоречива, это означает, что она неверна, содержит ошибки. Ее обработка может заключаться только в исправлении ошибок или в ликвидации самой модели.
Примечание. Если при хранении или передаче информационной модели вероятны искажения, то иногда сознательно вводят в модель избыточные данные, помогающие выявить или исправить ошибку. Пусть, например, модель объекта представляет собой последовательность чисел. Для повышения вероятности выявления ошибки при передаче модели, в модель можно включить избыточную информацию - сумму всех чисел (такая сумма называется контрольной). Приемник информации должен вычислить сумму полученных чисел и сравнить ее с полученной контрольной суммой. Если вычисленная и принятая суммы различаются, то это значит, что содержание модели исказилось и передачу надо повторить.
5.6 Отношения объектов
Важным свойством объектов является их способность находиться друг с другом в определенных отношениях. Отношения выражают логические, временные, пространственные, механические, организационные и другие связи между объектами.
Примеры:
Объекты “грузовик” и “автобус” находятся в логическом отношении “принадлежать к одному классу ” (классу “Автомобили”).
Объекты “звонок к уроку” и “звонок на перемену” связаны временным отношением “происходить после”.
Два города могут быть связаны географическим отношением “находиться на одном континенте”.
Будем обозначать отношения греческими буквами a, b, g,… и писать A a B, если объекты A и B находятся в отношении a.
Примеры:
Поскольку у каждого человека есть рост, на множестве людей можно ввести отношение a “быть выше ростом”. Два человека будут находиться в этом отношении тогда и только тогда, когда рост первого больше второго. Заметим, что отношения A a B, и B a A одновременно существовать не могут, так как если A выше ростом, чем B, то B уже не может быть выше A.
Рассмотрим отношение b “состоять в браке”. В этом случае, если А состоит в отношении b с В, то и обязательно В состоит в этом же отношении с А. Такие отношения называются симметричными.
5.7 Системы
Для решения многих задач требуется моделировать взаимоотношения объектов. Совокупность взаимодействующих объектов называется системой. В информационную модель системы должны входить не только описания составляющих систему объектов, но и описания всех отношений, существенных для достижения цели моделирования.
Системы могут быть социальными, например, семья, государство; техническими - автомобиль, самолет; биологическими - человек, лес, растение.
При информационном моделировании довольно часто приходится решать вопрос, рассматривать ли нечто как объект или как систему объектов. Ответ зависит от цели моделирования. Так, например, для регулировщика движения автомобили представляют собой объекты, для автослесаря - системы.
Системы могут состоять как из небольшого числа объектов (Солнечная система, как система больших планет), так и из огромного (Солнечная система, как система элементарных частиц).
Статические и динамические модели систем
В статических моделях система представляется неизменной во времени. Такие модели удобны, когда нужно описать структуру системы, то есть из каких объектов она состоит, как эти объекты связаны с друг с другом и каковы свойства этих объектов. Образно говоря, статическая модель представляет собой как бы “фотографию” существенных свойств системы в некоторый момент времени.
Примеры статических моделей: карта местности, схема персонального компьютера, перечень планет Солнечной системы с указанием их массы.
Динамические модели содержат информацию о поведении системы и ее составных частей. Для описания поведения обычно используются записанные в виде формул, схем или компьютерных программ соотношения, позволяющие вычислить параметры системы и ее объектов, как функции времени.
Примеры динамических моделей: набор формул небесной механики, описывающий движение планет Солнечной системы; график изменения температуры в помещении в течение суток; видеозапись извержения вулкана.
В зависимости от цели моделирования для одной и той же системы могут создаваться как статические, так и динамические модели. Построение динамических моделей обычно сложнее, чем статических, поэтому, если значения свойств системы изменяются редко или медленно, то лучше построить статическую модель системы и при необходимости вносить в нее коррективы.
5.8 Виды моделей
Тип используемой информационной модели определяется свойствами моделируемого объекта (системы) и целью моделирования. Наиболее часто для моделирования структуры системы используются табличные, сетевые и иерархические модели.
5.8.1 Табличные модели
Для описания группы объектов, обладающих одинаковым набором свойств, удобно использовать прямоугольную таблицу. Каждая строка таблицы соответствует некоторому объекту, а каждый столбец содержит значения определенного свойства объектов.
Пример: Табличное представление результатов школьного турнира по футболу.
Объектами являются команды.
Название |
Класс |
Выиграно |
Ничьих |
Проиграно |
Забито мячей |
Пропущено |
Очки |
Место |
|
Радуга |
8А |
2 |
1 |
0 |
9 |
2 |
7 |
1 |
|
Бутса |
7Б |
0 |
1 |
2 |
8 |
11 |
1 |
4 |
|
Гоблины |
8Б |
1 |
0 |
2 |
6 |
8 |
3 |
3 |
|
Интер |
7А |
2 |
0 |
1 |
9 |
11 |
6 |
2 |
С помощью таблиц можно представлять отношения между парами объектов, входящих в систему. Для этого в заголовках строк и столбцов располагаются имена объектов, а информация об отношении объектов записывается на пересечении соответствующих строки и столбца.
Пример: Табличное представление результатов матчей для каждой пары команд.
Радуга |
Бутса |
Гоблины |
Интер |
||
Радуга |
-- |
1:1 |
3:1 |
5:0 |
|
Бутса |
1:1 |
-- |
2:4 |
5:6 |
|
Гоблины |
1:3 |
4:2 |
-- |
1:3 |
|
Интер |
0:5 |
6:5 |
3:1 |
-- |
5.8.2 Сетевые модели
При табличном моделировании сложных систем модели могут оказаться слишком большими и неудобными для использования. Причина этого в формате табличных моделей, требующем представлять данные единообразно - в форме прямоугольной таблицы. Так, например, если мы представим схему линий московского метрополитена в виде таблицы объектов-станций, где на пересечении каждых строки и столбца будет стоять “+” для соседних станций и пересадок и “-” для всех остальных, то такая таблица будет состоять из более чем 10000 ячеек и пользоваться ей будет практически невозможно.
В сетевых моделях компактно отображаются наиболее существенные отношения между объектами. Обычно сетевые модели изображаются в наглядном графическом виде.
Пример сетевой модели - схема линий метрополитена.
5.8.3 Графы
Распространенной формой представления сетевых моделей являются графы.
Граф представляет собой наглядное описание отношений (связей) между парами элементов некоторого множества. Эти элементы называются вершинами графа и обычно изображаются окружностями или прямоугольниками. Связи между вершинами называются ребрами и изображаются линиями. Название вершины пишется внутри ее изображения или рядом с ним. Две соединенные ребром вершины называются смежными.
В информационном моделировании систем вершинам графа обычно соответствуют входящие в систему объекты, а ребрам - отношения между ними.
Пример. На рисунке изображен граф дорог между населенными пунктами:
Вершины этого графа - элементы множества населенных пунктов некоторого региона. То, что две вершины соединены ребром, означает наличие дороги между соответствующими населенными пунктами.
Форма ребра и расположение вершин графа влияют только на наглядность изображения графа и несущественны для информационной модели. Так, например, граф на следующем рисунке изображен по-другому, но он несет ту же информацию о моделируемой системе, что и на предыдущем.
На графе можно отобразить дополнительную информацию о связях между вершинами, например, в случае графа дорог, время или стоимость проезда из одного пункта в другой. Характеристики связи пишутся рядом с соответствующей ей линией.
Граф с дополнительной информацией о связях называется нагруженным графом.
Пример. Нагруженный граф дорог с указанием стоимости проезда между населенными пунктами:
Граф может быть представлен в виде таблицы, заголовки строк и столбцов которой соответствуют вершинам графа. На пересечении строки и столбца находится информация о соответствующем ребре (если оно имеется).
Пример: таблица для нагруженного графа стоимости перевозок, приведенного в предыдущем примере.
Антоново |
Иваново |
Петрово |
Большие грозы |
||
Антоново |
300 |
-- |
200 |
||
Иваново |
300 |
-- |
100 |
||
Петрово |
-- |
-- |
200 |
||
Большие грозы |
200 |
100 |
200 |
Если отношения между объектами моделируемой системы не являются симметричными, например, есть проезд из A в B, но нет проезда из B в А, то для их изображения используются линии со стрелками на конце, называемые не ребрами, а дугами. Граф, в состав которого входят дуги, называется ориентированным. Ориентированный граф тоже может быть нагруженным.
Пример: Ориентированный нагруженный граф стоимости перевозок между населенными пунктами.
Таблица, соответствующая этому графу:
Антоново |
Иваново |
Петрово |
Большие грозы |
||
Антоново |
300 |
-- |
-- |
||
Иваново |
-- |
-- |
100 |
||
Петрово |
-- |
-- |
200 |
||
Большие грозы |
200 |
-- |
150 |
Поскольку в данном примере отношения между населенными пунктам не являются симметричными, то необходимо пояснение, что пункты отправления перечислены в заголовках строк таблицы, а пункты назначения - в заголовках столбцов.
5.8.4 Иерархические системы. Деревья
Если в информационной модели системы входящие в нее объекты рассматриваются, в свою очередь, как системы, то сама система и ее модель называются иерархическими.
Примеры иерархических систем: файловая система компьютера; биологическая система классификации растений и животных; книга, состоящая из разделов, которые, в свою очередь, состоят из глав, поделенных на параграфы.
В иерархических системах можно выделить уровни иерархии. Верхний (первый) уровень представляет сама система в целом, следующий - подсистемы, соответствующие объектам верхнего уровня, третий уровень - подсистемы этих подсистем и так далее. В случае с книгой, верхним уровнем иерархии является сама книга, вторым уровнем - разделы, третьем - главы, четвертым и низшим уровнем - параграфы. На вершине иерархии файловой системы расположен каталог самого высокого уровня, остальные файлы и каталоги расположены на различных уровнях иерархии.
В иерархических моделях основным видом связи между объектами является отношение, условно называемое “родитель-потомок”. В качестве “родителя” выступает объект более высокого уровня, а в качестве “потомка” - элемент подсистемы, соответствующей “родителю”. Так, например, потомками главы книги являются составляющие ее параграфы. Это отношение не является симметричным. В иерархических системах один объект-“потомок” не может иметь более одного “родителя” на предыдущем уровне иерархии. Зато объект-“родитель” может иметь много потомков - объектов, входящих в соответствующую ему подсистему. Так, в книге один параграф не может принадлежать двум главам, в файловой системе один файл не может непосредственно принадлежать двум каталогам.
Иерархические модели обычно представляются с помощью особого вида ориентированных графов - деревьев. Вершина дерева, соответствующая самому верхнему уровню иерархии, называется корнем. Графы-деревья обычно изображаются корнем вверх. Дуги дерева соответствуют отношению “родитель-потомок”.
Замечание: объекты-“родители” принято рисовать над объектами-“потомками”, поэтому направление дуг дерева понятно и без стрелок. Стрелки на дугах деревьев часто не изображают.
Вершины дерева, не имеющие потомков, называются листьями. С помощью деревьев удобно представлять классификационные и структурные схемы.
5.9 Основные этапы информационного моделирования
Информационное моделирование - это творческий процесс. Не существует универсального рецепта построения моделей, пригодного на все случаи жизни, но можно выделить основные этапы и закономерности, характерные для создания самых разных моделей.
Первый этап - постановка задачи. Прежде всего следует уяснить цель моделирования. Исходя из цели моделирования, определяется вид и форма представления информационной модели, а также степень детализации и формализации модели. В соответствии с целью моделирования заранее определяются границы применимости создаваемой модели. На этом этапе также необходимо выбрать инструментарий, который будет использоваться при моделировании (например, компьютерную программу).
Второй этап - собственно моделирование, построение модели. На этом этапе важно правильно выявить составляющие систему объекты, их свойства и взаимоотношения и представить всю эту информацию в уже выбранной форме. Создаваемую модель необходимо периодически подвергать критическому анализу, чтобы своевременно выявлять избыточность, противоречивость и несоответствие целям моделирования.
Третий этап - оценка качества модели, заключающаяся в проверке соответствия модели целям моделирования. Такая проверка может производиться путем логических рассуждений, а также экспериментов, в том числе и компьютерных. При этом могут быть уточнены границы применимости модели. В случае выявления несоответствия модели целям моделирования она подлежит частичной или полной переделке.
Четвертый этап - эксплуатация модели, ее применение для решения практических задач в соответствии с целями моделирования.
Пятый этап - анализ полученных результатов и корректировка исследуемой модели.
6. Алгоритмизация и программирование
6.1 Алгоритмы
Появление алгоритмов связывают с зарождением математики. Более 1000 лет назад (в 825 году) ученый из города Хорезма Абдулла (или Абу Джафар) Мухаммед бен Муса аль-Хорезми создал книгу по математике, в которой описал способы выполнения арифметических действий над многозначными числами. Само слово алгоритм возникло в Европе после перевода на латынь книги этого математика.
Алгоритм - описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов.
За время своего существования человечество выработало правила поведения в определенных ситуациях для достижения поставленных целей. Часто эти правила можно представить в виде инструкций, состоящих из последовательно выполняемых пунктов (шагов). Так, например, в первобытном обществе инструкция охотникам по восполнению продовольственных запасов племени могла бы выглядеть следующим образом:
1. Найти тропу, по которой часто ходят мамонты.
2. Вырыть на ней большую глубокую яму и замаскировать ветками.
3. Спрятаться и ждать, пока в яму не провалится мамонт.
4. Закидать провалившегося мамонта копьями и камнями.
5. Разделать тушу и доставить ее к хижинам племени.
Возможно, что некоторые наскальные рисунки, сделанные до возникновения письменности, представляли собой своеобразную запись таких инструкций.
Перечни поочередно выполняемых действий используются в самых различных сферах человеческой деятельности. В качестве примеров можно привести правила выполнения умножения и деления чисел “столбиком” в арифметике, пошаговые инструкции по выполнению физических или химических опытов, сборке мебели, подготовки к работе фотоаппарата.
6.1.1 Свойства алгоритмов
1. Дискретность (алгоритм должен состоять из конкретных действий, следующих в определенном порядке);
2. Детерминированность (любое действие должно быть строго и недвусмысленно определено в каждом случае);
3. Конечность (каждое действие и алгоритм в целом должны иметь возможность завершения);
4. Массовость (один и тот же алгоритм можно использовать с разными исходными данными);
5. Результативность (отсутствие ошибок, алгоритм должен приводить к правильному результату для всех допустимых входных значениях).
6.1.2 Виды алгоритмов
1. Линейный алгоритм (описание действий, которые выполняются однократно в заданном порядке);
2. Циклический алгоритм (описание действий, которые должны повторятся указанное число раз или пока не выполнено задание);
3. Разветвляющий алгоритм (алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий)
4. Вспомогательный алгоритм (алгоритм, который можно использовать в других алгоритмах, указав только его имя).
Для более наглядного представления алгоритма широко используется графическая форма - блок-схема, которая составляется из стандартных графических объектов.
Вид стандартного графического объекта |
Назначение |
|
Начало алгоритма |
||
Конец алгоритма |
||
Выполняемое действие записывается внутри прямоугольника |
||
Условие выполнения действий записывается внутри ромба |
||
Счетчик кол-во повторов |
||
Последовательность выполнения действий. |
6.1.3 Стадии создания алгоритма
1. Алгоритм должен быть представлен в форме, понятной человеку, который его разрабатывает.
2. Алгоритм должен быть представлен в форме, понятной тому объекту (в том числе и человеку), который будет выполнять описанные в алгоритме действия.
Исполнитель - объект, который выполняет алгоритм.
Идеальными исполнителями являются машины, роботы, компьютеры...
Исполнитель способен выполнить только ограниченное количество команд. Поэтому алгоритм разрабатывается и детализируется так, чтобы в нем присутствовали только те команды и конструкции, которые может выполнить исполнитель.
Исполнитель, как и любой объект, находится в определенной среде и может выполнять только допустимые в нем действия. Если исполнитель встретит в алгоритме неизвестную ему команду, то выполнение алгоритма прекратится.
Компьютер - автоматический исполнитель алгоритмов.
Алгоритм, записанный на «понятном» компьютеру языке программирования, называется программой.
Программирование - процесс составления программы для компьютера. Для первых ЭВМ программы записывались в виде последовательности элементарных операций. Это была очень трудоемкая и неэффективная работа. Поэтому в последствии были разработанные специальные языки программирования. В настоящее время существует множество искусственных языков для составления программ. Однако, так и не удалось создать идеальный язык, который бы устроил бы всех.
6.1.4 Линейный алгоритм
Существует большое количество алгоритмов, в которых команды должны быть выполнены одна за другой. Такие алгоритмы называются линейными.
Программа имеет линейную структуру, если все операторы (команды) выполняются последовательно друг за другом.
6.1.5 Разветвляющийся алгоритм
Разветвляющий алгоритм - это алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий.
Во многих случаях требуется, чтобы при одних условиях выполнялась одна последовательность действий, а при других - другая.
Вся программа состоит из команд (операторов). Команды бывают простые и составные (команды, внутри которых встречаются другие команды). Составные команды часто называют управляющими конструкциями. Этим подчеркивается то, что эти операторы управляют дальнейшим ходом программы.
6.1.6 Алгоритмическая структура «цикл». Циклы со счетчиком и циклы по условию
Лучшее качества компьютеров проявляются не тогда, когда они рассчитывают значения сложных выражений, а когда многократно, с незначительными изменениями, повторяют сравнительно простые операции. Даже очень простые расчеты могут поставить человека в тупик, если их надо повторить тысячи раз, а повторять операции миллионы раз человек совершенно не способен.
С необходимостью повторяющихся вычислений программисты сталкиваются постоянно. Например, если надо подсчитать, сколько раз буква "о" встречается в тексте необходимо перебрать все буквы. При всей простоте этой программы исполнить ее человеку очень трудно, а для компьютера это задача на несколько секунд.
Циклический алгоритм - описание действий, которые должны повторяться указанное число раз или пока не выполнено заданное условие.
Перечень повторяющихся действий называют телом цикла.
Например, на уроке физкультуры вы должны пробежать некоторое количество кругов вокруг стадиона.
Такие циклы называются - циклы со счетчиком.
В субботу вечером вы смотрите телевизор. Время от времени поглядываете на часы и если время меньше полуночи, то продолжаете смотреть телевизор, если это не так, то вы прекращаете просмотр телепередач.
Циклы такого вида называют - циклы с предусловием.
Вам надо поточить все карандаши в коробке. Вы точите один карандаш и откладываете его в сторону. Затем проверяете, остались ли карандаши в коробке. Если условие ложно, то снова выполняется действие 'заточить карандаш'. Как только условие становится истинным, то цикл прекращается.
Циклы такого вида называют - циклы с постусловием.
6.2 Программирование
Объектно-ориентированное является в настоящее время наиболее популярной технологией программирования. Объектно-ориентированными языками программирования являются Visual Basic, Pascal, Visual Basic for Application (VBA), Delphi и др.
Основной единицей в объектно-ориентированном программировании является объект, который заключает в себе (инкапсулирует) как описывающие его данные (свойства), так и средства обработки этих данных (методы).
Объекты, заключающие одинаковый перечень свойств и методов, объединяются в классы. Каждый отдельный объект является экземпляром класса. Экземпляры класса могут иметь отличающиеся значения свойств.
Например, в среде Windows&Office в приложении Word существует класс объектов документ, который обозначается следующим образом: Documents ()
Класс объектов может содержать множество различных документов (экземпляров класса), каждый из которых имеет свое имя. Например, один из документов может иметь имя flpo6a.doc: Documents ("npo6a.doc")
Объекты в приложениях образуют некоторую иерархию. На вершине иерархии объектов находится приложение. Так, иерархия объектов приложения Word включает в себя следующие объекты: приложение (Aplication), документ (Documents), фрагмент документа (Selection), символ (Character) и др.
Полная ссылка на объект состоит из ряда имен вложенных последовательно друг в друга объектов. Разделителями имен объектов в этом ряду являются точки, ряд начинается с объекта наиболее высокого уровня и заканчивается именем интересующего нас объекта.
Например, ссылка на документ flpo6a.doc в приложении Word будет выглядеть следующим образом: Application . Documents ("Проба . doc")
Чтобы объект выполнил какую-либо операцию, необходимо задать метод. Многие методы имеют аргументы, которые позволяют установить параметры выполняемых действий. Для присваивания аргументам конкретных значений применяется двоеточие и знак равенства, а между собой аргументы отделяются запятой. Синтаксис команды применения метода объекта следующий: Объект.Метод:=значение, арг2:=значение
Например, операция открытия в приложении Word документа flpo6a.doc должна содержать не только название метода Open, но и указание пути к открываемому файлу (аргументу метода FileName необходимо присвоить конкретное значение): Documents () .Open FileName: ="С: ДокументыПроба. doc"
Чтобы изменить состояние объекта, необходимо определить новые значения его свойств. Для присваивания свойству конкретного значения используется знак равенства. Синтаксис установки значения свойства объекта следующий: Объект.Свойство = ЗначениеСвойства
Одним из классов объектов является класс символов Characters (). Экземпляры класса нумеруются: Characters (I), Characters (2) и т. д. Установим во фрагменте текста (объект Selection) для первого символа (объект Characters (1)) начертание полужирный (свойство Bold).
Свойство Bold имеет два значения и может быть установлено (значение True) или не установлено (значение False). Значения True и False являются ключевыми словами языка.Присвоим свойству Bold значение True: Selection.Characters(1).Bold = True
Объектно-ориентированное программирование по своей сути -- это создание приложений из объектов, подобно тому как из блоков и различных деталей строятся дома. Одни объекты приходится полностью создавать самостоятельно, тогда как другие можно позаимствовать в готовом виде из разнообразных программных библиотек.
7. Информационные технологии
7.1 Технология обработки текстовой информации
Текстом называется любая последовательность символов, к которым относятся буквы, пробел, знаки препинания, цифры, знаки арифметических операций и операций отношения и т. п.
К аппаратным средствам ввода текста относятся клавиатура, сканер, световой карандаш и др.
Текстовый редактор -- программное средство, предназначенное для создания (ввода, набора), редактирования и оформления текстов.
Основные функции текстового редактора:
Ш обеспечение ввода текста с клавиатуры или из существующего файла;
Ш редактирование текста (добавление, изменение, удаление или копирование фрагментов текста, символов, слов и т. д.);
Ш оформление текста (выбор шрифтов, способа выравнивания, установление межстрочного интервала, интервала между абзацами и т. п.);
Ш размещение текста на странице (установка размера страницы, полей, отступов; разбиение на колонки; расстановка номеров страниц, колонтитулов и пр.);
Ш сохранение текста в файле на внешнем носителе или получение твердой копии (печать текста);
Ш проверка орфографии, подбор синонимов, контекстный поиск и замена;
Ш выдача подсказок и прочее.
Если рассматривать текст как систему, то элементами его будут отдельные символы, слова, строки, предложения, абзацы.
Абзацем в обычном тексте называют часть текста от одной красной строки до другой.
В текстовом редакторе абзац -- это часть текста от одного признака конца строки до другого (чаще всего признак конца строки вставляется в текст автоматически при нажатии клавиши ввода).
Над абзацами в текстовых редакторах выполняются такие операции, как выравнивание, установка межстрочного интервала, установка отступа красной строки.
В текстовых редакторах допустимы операции над отдельными элементами текста, даже если они не выделены, например, операции над символами (удаление, вставка, замена), абзацами (выравнивание, отступы), но основной принцип оформления текста в текстовом редакторе «выдели и преобразуй».
В текстовых редакторах большинство операций по преобразованию текста осуществляется над выделенными фрагментами текста, например, такие операции, как копирование и перенос.
Наиболее распространенные текстовые редакторы: «Лексикон», Edit, «Слово и дело», Ched, NotePad, Write.
Текстовый процессор отличается от текстового редактора более широкими функциональными возможностями, такими как:
Ш настраиваемое пользователем меню;
Ш использование контекстного меню;
Ш сопровождение текста таблицами и проведение в них простейших расчетов;
Ш вставка графических объектов (рисунков, диаграмм, заголовков и пр.) или создание рисунков с помощью встроенных инструментов;
Ш вставка формул, графиков, диаграмм;
Ш оформление текста списками, буквицами;
Ш использование инструмента автокоррекции текста и его автореферирования;
Ш создание и использование макросов;
Ш фоновая проверка орфографии, синтаксиса и многое другое.
Наиболее распространенные текстовые процессоры: Word (Microsoft Office), Word Pro (Lotus SmartSuite), WordPerfect (Perfect Office), WordExpress, Accent.
7.2 Технология обработки графической информации
Для обработки изображений на компьютере используются специальные программы -- графические редакторы. Графические редакторы также можно разделить на две категории: растровые и векторные.
Растровые графические редакторы являются наилучшим средством обработки фотографий и рисунков, поскольку растровые изображения обеспечивают высокую точность передачи градаций цветов и полутонов.
Среди растровых графических редакторов есть простые, например стандартное приложение Paint, и мощные профессиональные графические системы, например Adobe Photoshop.
К векторным графическим редакторам относятся графический редактор, встроенный в текстовый редактор Word. Среди профессиональных векторных графических систем наиболее распространена CorelDRAW.
Графический редактор -- это программа создания, редактирования и просмотра графических изображений.
Для создания рисунка традиционными методами необходимо выбрать инструмент рисования (это могут быть фломастеры, кисть с красками, карандаши, пастель и многое другое). Графические редакторы также предоставляют возможность выбора инструментов для создания и редактирования графических изображений, объединяя их в панели инструментов.
7.3 Технология обработки числовой информации
Основным техническим средством технологии переработки информации сегодня является персональный компьютер.
К программным средствам ввода и обработки числовой информации относятся:
* электронные калькуляторы;
* электронные таблицы;
* пакеты прикладных программ для статистической обработки больших массивов данных (Statistica, Stadia);
* специализированные математические пакеты (Eureka, MathCAD, Mathlab), позволяющие решить практически любую математическую задачу и представить результаты расчетов в табличном или графическом виде. Простейшим программным продуктом, предназначенным для обработки числовой информации, в MS Windows является приложение Калькулятор. С его помощью можно не только проводить простые арифметические операции, но и осуществлять статистические и инженерные вычисления в десятичной системе счисления, работать с целыми двоичными, восьмеричными и шестнадцатеричными числами.
...Подобные документы
Арифметические и логические основы персонального компьютера. Работа персонального компьютера. Программные средства реализации информационных процессов. Алгоритмизация и программирование. Моделирование и формализация. Локальные и глобальные сети ЭВМ.
методичка [112,9 K], добавлен 10.12.2011Информатика как наука, ее функции. Виды, свойства и кодирование информации. Системы счисления. Высказывания и предикаты. Алгоритмы и их исполнители. Программное обеспечение. Языки и грамматики. Моделирование систем. Новые информационные технологии.
тест [89,0 K], добавлен 10.12.2011Свойства и кодирование информации. Алгоритмизация. Этические и правовые нормы информационной деятельности. История вычислительной техники. Программное обеспечение. Среда операционной системы. Архитектура современного компьютера. Логические системы ЭВМ.
книга [4,6 M], добавлен 12.02.2009Основы информатики и кибернетики. Информационные процессы, системы и технологии. Структура и элементы информационных систем. Системы счисления. Функциональная организация компьютера. Алгоритмы и алгоритмизация. Архивация файлов. Типовые методы доступа.
курс лекций [73,0 K], добавлен 05.06.2011Определение информации, ее виды и свойства. Назначение основных блоков компьютера: процессор, память, системная магистраль, внешнее устройство. Архитектура фон Неймана. Характерные черты информации. Принцип использования двоичной системы счисления.
контрольная работа [333,2 K], добавлен 21.02.2010Понятие экономической информации, ее классификаторы. Системы классификации и кодирования информации. Документация и технологии её формирования. Применение технологий Workflow, их функции. Виды носителей информации, современные технологии ее хранения.
курсовая работа [2,0 M], добавлен 27.09.2013Непрерывная и дискретная информация. Кодирование как процесс представления информации в виде кода. Особенности процедуры дискретизации непрерывного сообщения. Позиционные и непозиционные системы счисления. Представление информации в двоичном коде.
реферат [117,3 K], добавлен 11.06.2010Кодирование символьной и числовой информации. Основные системы счисления. Двоичная система счисления. Устройства вывода информации. Правила выполнения арифметических операций. Логические основы построения, функциональные узлы ЭВМ. Синтез логических схем.
презентация [1,2 M], добавлен 08.11.2016Понятие сигнала и данных. Кодирование информации, текстовых и графических данных. Представления цифровой информации. Логические схемы и основы алгебры логики. Комбинационные, последовательностные и арифметические устройства. Организация памяти в системе.
шпаргалка [1,6 M], добавлен 16.12.2010Информационный процесс как совокупность последовательных действий, производимых над информацией для получения какого-либо результата. Понятие и сущность кодирования, механизмы и виді сбора информации. Применения компьютера для автоматизация процессов.
реферат [2,6 M], добавлен 12.03.2010Информационные технологии в экономике. Основы автоматизации экономической деятельности предприятий. Компьютерные технологии моделирования управления. Защита информации в информационных системах. Программное обеспечение экономической деятельности.
курс лекций [1,8 M], добавлен 15.03.2010Содержательный и кибернетический подходы к определению и измерению информации. Кодирование символьной информации в компьютере. Линия информации и информационных процессов. Обзор процесса передачи информации по техническим каналам связи. Языки информатики.
презентация [173,0 K], добавлен 19.10.2014Понятие информации и ее представление. Хранение, кодирование и преобразование данных. Определение информационной емкости различных носителей информации. Представление о языках программирования. Внутреннее устройство ЭВМ. Операции с файлами и дисками.
методичка [2,8 M], добавлен 15.02.2010Понятие и виды систем счисления, принципы двоичной системы. Формы представления чисел в ЭВМ, виды кодирования информации. Оценка и выбор пакетов прикладных программ: преимущества операционной системы Windows, справочной системы "КонсультантПлюс".
реферат [22,4 K], добавлен 21.06.2010Изложение основ информатики, вычислительной техники и технологии программирования на языке Паскаль. Эволюция средств вычислений. Классификация программного обеспечения ЭВМ. Кодирование информации в ЭВМ, системы счисления, принципы программирования.
учебное пособие [1,4 M], добавлен 25.12.2009Представление информации в двоичной системе. Необходимость кодирования в программировании. Кодирование графической информации, чисел, текста, звука. Разница между кодированием и шифрованием. Двоичное кодирование символьной (текстовой) информации.
реферат [31,7 K], добавлен 27.03.2010Язык как способ представления информации и знаковая система. Естественные и формальные языки. Функции естественного языка. Строгие однозначные правила, ограниченный словарь в основе формальных языков. Кодирование информации, ее представление в компьютере.
презентация [2,6 M], добавлен 11.01.2012Представление числовой информации с помощью систем счисления. Кодирование символьной, текстовой, числовой и графической информации. Устройство жесткого диска; дисковод компакт-дисков CD-ROM. Использование главного меню Windows; языки программирования.
контрольная работа [62,9 K], добавлен 16.03.2015Система счисления как способ записи информации с помощью заданного набора цифр. История развития различных систем счисления. Позиционные и непозиционные системы. Вавилонская, иероглифическая, римская система счисления. Система счисления майя и ацтеков.
презентация [3,2 M], добавлен 05.05.2012Понятие информации и основные принципы ее кодирования, используемые методы и приемы, инструментарий и задачи. Специфические особенности процессов кодирования цифровой и текстовой, графической и звуковой информации. Логические основы работы компьютера.
курсовая работа [55,8 K], добавлен 23.04.2014