АЛМАТИНСКИЙ ИНСТИТУТ
ЭНЕРГЕТИКИ И СВЯЗИ
Кафедра инженерной
кибернетики
ИНФОРМАТИКА
Конспект лекций
(для студентов всех форм обучения всех
специальностей)
Алматы 2006
СОСТАВИТЕЛИ: Л.К. Ибраева, Н.В. Сябина, Л.Н. Рудакова. Информатика.
Конспект лекций (для студентов всех форм обучения всех специальностей).-
Алматы: АИЭС, 2006.- 40 с.
Настоящий
конспект лекций составлен на основании типовой рабочей программы в помощь
первокурсникам при изучении теоретического материала по информатике и включает
восемь тем. В конце каждой темы приведены ссылки на дополнительную литературу
для более глубокого освоения предмета. Электронные
варианты лекционного материала и специального терминологического словаря
(глоссария) размещены на серверах компьютерных классов кафедры «Инженерная
кибернетика».
Конспект
лекций предназначен для студентов всех форм обучения всех
специальностей.
Ил.1,
табл.1, прилож.1, библиогр. – 43 назв.
Рецензент:
канд. тех. наук, доц. Имангалиев Ш.И.
Печатается по плану издания Алматинского института
энергетики
и связи на
© Алматинский институт энергетики и связи,
Содержание
Введение 4
1 Лекция 1. Введение. Информатика и информация. Арифметические и
логические основы компьютеров 5
2 Лекция 2. Технические средства информатики 9
3 Лекция 3. Технические средства
информатики 13
4 Лекция 4. Системное программное обеспечение 17
5 Лекция 5. Прикладное программное обеспечение 21
6 Лекция 6. Компьютерные сети, сетевые и телекоммуникационные
технологии 25
7 Лекция 7. Основы защиты информации 29
8 Лекция 8. Алгоритмизация. Основы программирования. Современные программные
средства 33
Приложение А 37
Список литературы 38
Введение
Одной из основных задач системы образования в
период перехода современного общества к информационной эпохе развития является
проблема формирования основ
информационной культуры будущего специалиста. Потребность общества в
квалифицированных кадрах, владеющих арсеналом средств и методов информатики,
превращается в ведущий фактор образовательной политики. Стремительное развитие
средств вычислительной техники и связи, проникновение информационных технологий
почти во все сферы жизни требуют серьезного изучения информатики.
Роль
информатики в современных условиях постоянно возрастает. Деятельность как
отдельных людей, так и целых организаций все в большей степени зависит от их
информированности и способности эффективно использовать имеющуюся информацию.
Внедрение
компьютеров, современных средств переработки и передачи информации в различные
индустрии послужило началом процесса, называемого информатизацией общества. Современное материальное
производство и другие сферы деятельности все больше нуждаются в информационном
обслуживании, переработке огромного количества информации. Результатом процесса
информатизации является создание информационного общества, где манипулируют не
материальными объектами, а идеями, образами, интеллектом, знаниями. Для каждой
страны ее движение от индустриального этапа развития к информационному
определяется степенью информатизации общества.
Внедрение
персонального компьютера в информационную сферу и применение телекоммуникационных средств
связи определили новый этап развития информационной технологии. Новая информационная
технология - это информационная технология с «дружественным» интерфейсом работы
пользователя, использующая персональные компьютеры и телекоммуникационные средства. Новая
информационная технология базируется на принципах интерактивности,
интегрированности с другими программными продуктами и гибкости процесса изменения данных.
Типовая программа дисциплины
«Информатика», изучаемой студентами института на первом курсе, включает большой
объем теоретического и практического материала. Однако ограниченность
аудиторных часов не позволяет в полной мере изложить необходимую информацию.
Предлагаемый конспект лекций составлен в
соответствии с типовой программой дисциплины «Информатика» и содержит восемь
тем. Следует обратить внимание, что предлагаемое издание является лишь кратким
конспектом лекций и не может содержать всех необходимых сведений. Так, основные
определения в тексте выделены полужирным шрифтом, а объяснение терминов,
выделенных курсивом, можно найти в электронном варианте конспекта лекций, размещенного на
серверах кафедры «Инженерная кибернетика».
Для успешного и всестороннего освоения материала следует воспользоваться и
другими источниками.
1 Лекция № 1. Введение. Информатика и информация. Арифметические и
логические основы компьютеров
Содержание
лекции:
- предмет и основные определения информатики;
математические основы информатики; кодирование числовой информации.
Цель лекции:
- изучить основные структуры информационного процесса;
способы представления числовой и символьной информации; основы алгебры логики.
Информатика – это техническая наука, систематизирующая приемы
создания, хранения, воспроизведения, обработки и передачи данных средствами
вычислительной техники, а также принципы функционирования этих средств и методы
управления ими.
Слово информатика происходит
от французского слова Informatique, образованного в результате
объединения терминов: Informacion (информация) и Automatique (автоматика), что
выражает ее суть как науки об автоматической обработке информации. Этот термин используется в ряде стран
Восточной Европы. В большинстве стран Западной Европы и США используется термин
Computer
Science (наука о средствах вычислительной техники).
Информатика тесно связана с кибернетикой, но не тождественна ей. Кибернетика изучает общие
закономерности процессов управления сложными системами в разных областях
человеческой деятельности
независимо от наличия или отсутствия компьютеров. Информатика же изучает общие свойства только конкретных информационных систем. Информатику можно
рассматривать как науку, как технологию
и как индустрию.
Информатика как
наука объединяет
группу дисциплин, занимающихся
изучением различных аспектов свойств информации
в информационных процессах, а также применением алгоритмических,
математических и программных средств для ее обработки с помощью компьютеров.
Информатика как технология включает в себя систему процедур компьютерного
преобразования информации с целью ее формирования, хранения, обработки,
распространения и использования. Информационная
технология представляет собой процесс,
использующий совокупность средств и методов сбора, обработки и передачи данных для получения информации нового качества о
состоянии объекта, процесса или
явления. Цель информационной технологии — производство информации для ее анализа
человеком и принятия на его основе
решения по выполнению какого-либо действия.
Систему, организующую, хранящую и преобразующую информацию, называют
информационной системой. Подавляющее
большинство современных информационных систем являются автоматизированными.
В современных условиях основным техническим средством обработки информации
является персональный компьютер.
Информатика как индустрия — это инфраструктурная отрасль, обеспечивающая все
сферы деятельности человека необходимыми информационными ресурсами.
Информация — это сведения об объектах и
явлениях окружающей
среды, их параметрах, свойствах и состояниях, которые уменьшают имеющуюся степень
неопределенности, неполноты знаний о них. Различные фазы преобразования информации рассматриваются как единый информационный процесс, направленный на
удовлетворение информационных потребностей человечества.
Основные формы представления информации:
символьная (основана
на использовании
различных символов), текстовая (текст — это символы, расположенные в определенном порядке),
графическая (различные
виды изображений), звуковая.
Данными называется информация, представленная в удобном для
обработки виде. Информация же представляет собой обработанные
данные.
Совокупность
символов, соглашений и правил, используемых для общения, отображения, передачи информации в
электронном виде, то есть определенная знаковая система представления информации, называется языком.
Правила, по которым можно отобразить информацию
называют кодом. Каждый образ при
кодировании (шифровке) представлен отдельным знаком.
Набор знаков, в котором определен их порядок,
формирует алфавит. Существует
множество алфавитов. Особое значение имеют
двоичные наборы, состоящие всего из двух знаков. Двоичный знак (binary
digit) получил название “бит”.
Кодировать можно текстовую,
графическую информацию и звуки.
При двоичном кодировании
текстовой информации каждому символу сопоставляется его код - последовательность
из фиксированного количества нулей и единиц. В большинстве современных
компьютеров для хранения двоичного кода
одного символа выделена последовательность из 8 нулей и единиц, называемая "байтом" (byte). Учитывая, что каждый бит принимает значение 0 или 1,
количество их возможных сочетаний в байте равно 28 = 256. Значит, с
помощью 1 байта можно получить 256 разных двоичных комбинаций и отобразить с их
помощью 256 различных символов, например, большие и малые буквы русского и
латинского алфавитов, цифры, знаки препинания и т. д. Соответствие байтов и
символов задается с помощью кодовой
таблицы, в которой для каждого кода указывается соответствующий символ.
Наиболее распространенными кодами являются АSCII (Аmerican Standart
Code for Information Interchange – американский
стандартный код для обмена информацией) и КОИ-8 (код обмена информации длиной 8
бит).
Создавать и хранить
графические объекты в компьютере можно двумя способами — как растровое изображение или как векторное изображение. Для каждого типа изображения
используется свой способ кодирования.
Для записи звука выбирается
система равноотстоящих друг от друга уровней напряжения сигнала и каждому из
них ставится в соответствие определенный номер. Через равные небольшие
промежутки времени измеряется уровень входного сигнала и определяется, к какому
из стандартных уровней он ближе всего подходит; номер найденного уровня и
записывается в память в качестве громкости звука в данный момент. При
воспроизведении данные считываются, и с такой же самой, как и при записи,
высокой частотой компьютер изменяет интенсивность звука в зависимости от
прочитанных номеров уровней. Регулировка громкости при таком методе
воспроизведения в самом прямом смысле осуществляется с помощью умножения:
например, чтобы увеличить громкость вдвое, перед воспроизведением номер уровня
необходимо также удвоить.
Таким образом, рассмотрев
принципы хранения в ЭВМ различных видов информации, можно сделать важный вывод
о том, что все они так или иначе преобразуются в числовую форму и кодируются
набором нулей и единиц. Благодаря такой универсальности представления данных,
если из памяти извлечь содержимое какой-нибудь ячейки, то принципиально
невозможно определить, какая именно информация там закодирована: текст, число
или картинка.
Наряду с битами и байтами,
для измерения количества информации в двоичных сообщениях используются и более
крупные единицы (килобиты, мегабиты, гигабиты, гигабайты, мегабайты,
килобайты).
Использование двоичного кодирования базируется на
двоичной системе счисления.
Система счисления – способ представления любого числа с помощью алфавита символов,
называемых цифрами. В повседневной жизни мы используем десятичную систему
счисления. Существуют правила перевода чисел из одной системы счисления в
другую.
Для описания того, как
функционируют аппаратные средства компьютера, используется математический
аппарат алгебры логики.
Алгебра логики — это раздел математики, изучающий высказывания, рассматриваемые со
стороны их логических значений (истинности или ложности) и логических операций
над ними.
Логическое высказывание — это любое
повествовательное предложение, в отношении которого можно однозначно сказать,
истинно оно или ложно. Алгебра логики рассматривает любое высказывание только с
одной точки зрения — является ли оно истинным или ложным. Чтобы обращаться к логическим высказываниям,
им назначают имена – имена логических переменных. Логические переменные могут
принимать только два значения — "истина" или
"ложь", обозначаемые
соответственно "1" и
"0". С помощью логических связок (определенных слов и
словосочетаний) можно из уже заданных высказываний строить новые высказывания –
составные выказывания. Высказывания,
не являющиеся составными, называются элементарными.
Истинность или ложность составных высказываний зависит от истинности или
ложности элементарных высказываний. Каждые логические связки рассматриваются
как операции над логическими высказываниями и имеют свое название и
обозначение. С помощью логических переменных и символов логических операций
любое высказывание можно формализовать, то есть заменить логической формулой.
Определение логической формулы:
а) всякая логическая
переменная и символы "истина" ("1") и "ложь" ("0") являются
элементарными формулами;
б) если А и В - формулы, то A. ,
А.В, АvВ, А=> B, А <=> В - формулы. Здесь определены правила
образования новых формул из любых других;
в) никаких других формул в
алгебре логики нет.
Математический аппарат
алгебры логики очень удобен для описания функционирования аппаратных средств
компьютера, поскольку основной системой счисления в компьютере является
двоичная, использующая цифры 1 и 0, а значений логических переменных тоже два:
“
а) одни и те же
устройства компьютера могут применяться для обработки и хранения как числовой
информации, так и логических переменных;
б) на этапе конструирования аппаратных средств алгебра логики
позволяет значительно упростить логические функции, описывающие
функционирование схем компьютера, и, следовательно, уменьшить число элементарных
логических элементов, из десятков тысяч которых состоят основные узлы
компьютера.
Данные и команды
представляются в виде двоичных последовательностей различной структуры и длины.
Для реализации элементарной логической функции используются логические элементы
компьютера - электронные схемы И, ИЛИ, НЕ, И—НЕ, ИЛИ—НЕ и другие (вентили), а также триггер. С
помощью этих схем можно реализовать любую логическую функцию, описывающую
работу устройств компьютера. Обычно у вентилей бывает от двух до восьми входов
и один или два выхода. Чтобы представить два логических состояния — “
Каждый логический элемент
имеет свое условное обозначение, которое выражает его логическую функцию, но не
указывает на то, какая именно электронная схема в нем реализована. Это упрощает
запись и понимание сложных логических схем. Работу
логических элементов описывают с помощью таблиц
истинности.
Каким же образом команды и данные записываются в памяти компьютера? Физическая память, к которой процессор имеет
доступ по шине адреса, называется оперативной
памятью (оперативным запоминающим устройством — ОЗУ). На самом
нижнем уровне память компьютера можно рассматривать как массив битов. Для
физической реализации битов и работы с ними идеально подходят логические схемы.
Но процессору неудобно работать с памятью на уровне битов, поэтому реально ОЗУ
организовано как последовательность байтов.
Каждому байту соответствует свой уникальный адрес (его номер), называемый физическим. Диапазон
значений физических адресов зависит от разрядности
шины адреса процессора.
Помимо основной памяти, программы могут использовать регистры.
Дополнительную информацию по теме можно получить в [1-5, 35-43].
2
Лекция № 2. Технические средства информатики
Содержание
лекции:
- архитектура и классификация персональных компьютеров;
принципы создания и работы вычислительной техники; микропроцессоры.
Цель лекции:
- изучить основные устройства компьютера, их характеристики и назначение;
структуру микропроцессора и его основные характеристики; функциональные
характеристики ПК.
Компьютер — это многофункциональное электронное устройство,
предназначенное для накопления, обработки и передачи информации.
Существуют различные
классификации компьютеров, одной из которых является классификация по областям
применения, согласно которой различают: персональные компьютеры и рабочие станции, серверы, Х-терминалы, мейнфреймы, кластерные архитектуры.
Под архитектурой
персонального компьютера понимается его логическая организация, структура и
ресурсы, т. е. средства вычислительной системы, которые могут быть выделены
процессу обработки данных на определенный интервал времени.
В первых ЭВМ для
генерации нужных сигналов необходимо было с помощью переключателей выполнить
ручное программирование всех логических схем. Использовалась десятичная логика,
при которой каждый разряд представлялся десятичной цифрой и моделировался 10
электронными лампами. В зависимости от нужной цифры одна лампа включалась,
остальные девять оставались выключенными. Известный немецкий математик Джон фон
Нейман предложил схему ЭВМ с программой в памяти и двоичной логикой вместо
десятичной. Логически машину фон Неймана составляли пять блоков (рисунок 2.1):
оперативная память, арифметико-логическое устройство (АЛУ) с аккумулятором,
блок управления, устройства ввода и вывода.
Рисунок
2.1 – Схема машины фон Неймана
В основу построения большинства
компьютеров положены принципы,
сформулированные Джоном фон Нейманом:
а) принцип программного управления - программа состоит из набора команд,
которые выполняются процессором автоматически друг за другом в определенной
последовательности;
б) принцип однородности памяти - программы и данные хранятся в одной и той же
памяти; над командами можно выполнять те же действия, что и над данными;
в) принцип адресности - основная память структурно состоит из пронумерованных
ячеек.
Компьютеры, построенные на этих
принципах, имеют классическую
архитектуру. Архитектура компьютера определяет принцип действия, информационные
связи и взаимное соединение основных логических узлов компьютера, к которым относятся:
центральный процессор, основная память, внешняя память, периферийные устройства.
К аппаратному
обеспечению вычислительных систем
относятся устройства и приборы, образующие аппаратную конфигурацию. Современные
компьютеры имеют блочно-модульную конструкцию,
то есть аппаратную конфигурацию можно собрать из готовых блоков и узлов.
Согласование между отдельными узлами и блоками
выполняют с помощью переходных аппаратно-логических устройств – аппаратных интерфейсов. Интерфейсы
делятся на последовательные и параллельные. Через последовательные
интерфейсы данные передаются последовательно бит за битом, а через параллельный
- одновременно группами битов. Количество бит, участвующих в одной посылке,
определяется разрядностью интерфейса. Например, 8-разрядный параллельный
интерфейс передает 1 байт (8 бит) за один цикл.
Конструктивно персональные компьютеры
выполнены в виде центрального системного блока, к которому через специальные
разъемы присоединяются другие устройства. В состав системного блока входят все основные узлы компьютера: блок
питания, системная плата, накопитель на жестком магнитном диске, накопитель на гибком магнитном диске, накопитель на оптическом диске, разъемы для дополнительных устройств.
На системной
(материнской) плате размещаются: микропроцессор, математический сопроцессор, генератор тактовых импульсов,
микросхемы памяти, контроллеры внешних устройств, звуковая и видеокарты, таймер.
Микропроцессор - это
центральный блок персонального компьютера, предназначенный для управления
работой всех блоков машины и для выполнения арифметических и логических операций
над информацией. Микропроцессор
выполняет следующие основные функции:
а)
чтение и дешифрацию команд из основной памяти;
б) чтение данных из основной памяти и
регистров адаптеров внешних устройств;
в) прием и обработку запросов и команд
от адаптеров на обслуживание внешних устройств;
г) обработку данных, а также их запись
в основную память и регистры адаптеров внешних устройств;
д)
выработку управляющих сигналов для всех прочих узлов и блоков компьютера.
В
состав микропроцессора входят следующие устройства:
- арифметико-логическое устройство, предназначенное
для выполнения
всех арифметических и логических операций над числовой и символьной информацией;
- устройство
управления, координирующее взаимодействие различных частей компьютера;
- микропроцессорная память, предназначенная для кратковременного хранения, записи и выдачи
информации, используемой в вычислениях непосредственно в ближайшие такты работы
машины;
- интерфейсная система микропроцессора,
служащая для связи с другими устройствами компьютера.
К микропроцессору и системной
шине, наряду с типовыми внешними устройствами, могут быть подключены и дополнительные платы с интегральными
микросхемами, расширяющие и улучшающие функциональные возможности
микропроцессора. К ним относятся математический сопроцессор, контроллер прямого доступа к памяти,
сопроцессор ввода-вывода, контроллер прерываний и другие
Математический сопроцессор
имеет свою систему команд и работает параллельно с основным микропроцессором,
но под его управлением. В результате выполнения операций ускоряется в десятки
раз. Начиная с МП 80486 DX, модели микропроцессоров включают в свою структуру
математический сопроцессор. Контроллер прямого доступа к памяти освобождает
микропроцессор от прямого управления накопителями на магнитных дисках, что
существенно повышает эффективное быстродействие компьютера. Сопроцессор
ввода-вывода за счет параллельной работы с микропроцессором значительно
ускоряет выполнение процедур ввода-вывода при обслуживании нескольких внешних
устройств, освобождает микропроцессор от обработки процедур ввода-вывода, в
том числе реализует режим прямого доступа к памяти. Контроллер прерываний
обслуживает процедуры прерывания,
принимает запрос на прерывание от внешних устройств, определяет уровень
приоритета этого запроса и выдает сигнал прерывания в микропроцессор.
Все микропроцессоры можно разделить на группы:
а) микропроцессоры типа CISC с полным набором системы команд;
б) микропроцессоры типа RISC с усеченным набором системы команд;
в) микропроцессоры типа VLIW со сверхбольшим командным словом;
г) микропроцессоры типа MISC с минимальным набором системы команд и весьма высоким
быстродействием и другие.
Важнейшими характеристиками микропроцессора
являются: тактовая частота, разрядность процессора, адресное пространство.
Все контроллеры устройств взаимодействуют
с микропроцессором и оперативной памятью через системную магистраль передачи
данных (системную шину). Системная
шина выполняется в виде печатного мостика на материнской плате и обеспечивает
три направления передачи информации: между микропроцессором и основной
памятью; между микропроцессором и портами ввода-вывода внешних устройств; между
основной памятью и портами ввода-вывода внешних устройств.
Порты
ввода-вывода всех устройств через
соответствующие разъемы (слоты)
подключаются к шине либо непосредственно, либо через специальные контроллеры (адаптеры).
Основными функциональными характеристиками персонального компьютера являются:
-
производительность, тактовая частота,
быстродействие.
Производительность современных ЭВМ
измеряют обычно в миллионах операций в секунду;
- разрядность
микропроцессора и кодовых шин
интерфейса;
- типы системного и локальных
интерфейсов.
Разные типы интерфейсов обеспечивают
разные скорости передачи информации между узлами машины, позволяют подключать
разное количество внешних устройств и различные их виды;
- емкость оперативной памяти.
Емкость оперативной памяти измеряется
обычно в Мбайтах. Многие современные прикладные программы с оперативной памятью,
имеющей емкость меньше 16 Мбайт, просто не работают либо работают, но очень
медленно;
- емкость накопителя на жестких магнитных дисках (винчестера).
Емкость винчестера измеряется обычно в
Гбайтах;
- тип и емкость накопителей на гибких магнитных дисках.
Сейчас применяются накопители на гибких магнитных дисках,
использующие дискеты диаметром
- наличие, виды и емкость кэш-памяти.
Наличие кэш-памяти емкостью 256 Кбайт
увеличивает производительность персонального компьютера примерно на 20%;
- тип видеомонитора
и видеоадаптера;
- наличие и тип принтера;
- наличие и тип накопителя на компакт
дисках CD-ROM;
- наличие и тип модема;
- наличие и виды мультимедийных аудио и
видеосредств;
- имеющееся программное обеспечение и вид операционной
системы;
- аппаратная
и программная совместимость с другими типами ЭВМ;
- возможность работы в вычислительной
сети;
- возможность работы в многозадачном режиме;
- надежность;
- стоимость, габариты и вес.
Дополнительную информацию по теме можно получить в [1, 5-8, 35-43].
3 Лекция № 3. Технические средства информатики
Содержание
лекции:
- иерархия запоминающих устройств компьютеров; назначение внешних
устройств.
Цель лекции:
- изучить назначение и основные характеристики запоминающих и внешних
устройств компьютеров.
Персональные компьютеры имеют четыре иерархических уровня памяти: уже упомянутая микропроцессорная память, основная
память, регистровая
кэш-память и внешняя
память.
Основная память предназначена для
хранения и оперативного обмена информацией с другими устройствами компьютера и
реализует следующие функции: прием информации от других устройств, запоминание
информации, выдача информации по запросу в другие устройства машины. Основная память содержит два вида запоминающих
устройств: постоянное запоминающее устройство (ПЗУ, ROM) и оперативное запоминающее
устройство (ОЗУ, RAM).
В
ПЗУ находятся программа управления работой процессора, программа запуска и останова компьютера, программы тестирования
устройств, программы управления дисплеем, клавиатурой, принтером, внешней
памятью, информация о том, где на диске находится операционная система. Данные в ПЗУ заносятся при изготовлении, она является энергонезависимой памятью, при отключении питания информация в нем
сохраняется. ОЗУ является энергозависимой
памятью, при выключении питания информация в нем стирается.
Главными достоинствами оперативной памяти являются ее высокое
быстродействие и возможность обращения к каждой ячейке памяти отдельно (прямой
адресный доступ к памяти). Все ячейки памяти объединены в группы по 8 бит (1
байт), каждая такая группа имеет адрес, по которому к ней можно обратиться.
Важной характеристикой
компьютера, которая влияет на скорость работы и работоспособность программ,
является объем памяти. В современных компьютерах объем оперативной памяти
обычно составляет 64-512 Мбайт.
Кроме ПЗУ и
ОЗУ на системной плате имеется и энергонезависимая полупостоянная CMOS-память, постоянно питающаяся от своего аккумулятора.
Для изменения параметров конфигурации компьютера в BIOS содержится
программа настройки конфигурации компьютера - SETUP.
Для ускорения доступа к
оперативной памяти используется специальная сверхбыстродействующая
кэш-память,
которая располагается как бы «между» микропроцессором и оперативной
памятью. Регистры кэш-памяти недоступны для пользователя. В кэш-памяти хранятся
данные, которые микропроцессор получил и будет использовать в ближайшие такты
своей работы. Быстрый доступ к этим данным позволяет сократить время выполнения
очередных команд программы.
Микропроцессоры, начиная
от МП 80486, имеют свою встроенную кэш-память. Микропроцессоры Pentium и Pentium
Pro имеют кэш-память отдельно для данных и отдельно для
команд. Для всех микропроцессоров может использоваться дополнительная
кэш-память, размещаемая на материнской плате вне микропроцессора, емкость
которой может достигать нескольких Мбайт.
Внешняя память относится к внешним устройствам компьютера и
используется для долговременного хранения любой информации, которая может
потребоваться для решения задач. В частности, во внешней памяти хранится все
программное обеспечение компьютера.
Устройства внешней памяти (внешние запоминающие устройства) весьма
разнообразны. Их классифицируют по виду носителя, по типу конструкции, по
принципу записи и считывания информации, по методу доступа и т. д. Наиболее
распространенными внешними запоминающими устройствами являются: накопители на жестких магнитных дисках
(НЖМД), накопители на гибких магнитных
дисках (НГМД), накопители на оптических дисках (CD-ROM). Реже в
качестве устройств внешней памяти персонального компьютера используются
запоминающие устройства на кассетной магнитной ленте - стримеры.
Назначение накопителей -
хранение больших объемов информации, запись и выдача хранимой информации по
запросу в оперативное запоминающее устройство. НЖМД и НГМД различаются лишь
конструктивно, объемами хранимой информации и временем поиска, записи и
считывания информации и относятся к машинным носителям информации с прямым
доступом.
Из оперативной памяти в
НЖМД и обратно информация передается байтами, а записывается на диск и
считывается с него побитно. Перед тем, как передать данные в оперативную
память, их нужно перекодировать, а т.к. на эту операцию требуется
дополнительное время, в ходе обработки данных быстро вращающийся диск успевает
повернуться на некоторый угол и данные размещаются на диске блоками. НЖМД
относят к блочным устройствам: нельзя прочитать (или записать) байт или
несколько байтов, а только блок данных, из которого впоследствии будут
извлекаться нужные биты, используемые в вычислениях. При вращении магнитная
головка, зафиксированная в определенном положении некоторое время, образует
окружность – дорожку (track), блоки данных на таких окружностях
– секторами (sectors). Все сектора
пронумерованы, в межсекторных промежутках размещается служебная информация, с
помощью которой можно находить искомый сектор. Группы дорожек (треков) одного
радиуса, расположенные на поверхностях магнитных дисков, образуют цилиндры (cylinders). Современные диски имеют по нескольку десятков тысяч
цилиндров. Выбор конкретной дорожки в цилиндре осуществляется указанием
порядкового номера головки (head)
чтения/записи данных, которая образует эту дорожку. Итак, адрес конкретного
блока данных указывается с помощью координат C-H-S – номеров цилиндра, головки и сектора.
Накопители на жестких
магнитных дисках получили название «винчестер».
Этот термин возник из жаргонного названия первой модели жесткого диска,
имевшего 30 дорожек по 30 секторов каждая, что случайно совпало с калибром
охотничьего ружья «винчестер». Емкость накопителя на жестком магнитном диске
измеряется в Мбайтах и Гбайтах.
В последнее время
появились новые накопители на магнитных дисках - ZIP-диске - переносные устройства емкостью 230-280 Мбайт.
Благодаря маленьким
размерам, большой емкости и надежности, широкое распространение получили
накопители на оптических дисках (CD-ROM). Оптические диски делятся на лазерно-оптические неперезаписываемые и
перезаписываемые диски и перезаписываемые магнитооптические диски. Кроме
основной своей характеристики - информационной
емкости, дисковые накопители характеризуются и двумя временными
показателями: временем доступа и
скоростью считывания подряд расположенных байтов.
Внешние (периферийные) устройства обеспечивают взаимодействие компьютера с пользователями, объектами управления и другими компьютерами. К внешним устройствам относятся: устройства ввода информации; устройства вывода информации; диалоговые средства
пользователя; средства связи и
теле-коммуникации. Внешние
устройства подключаются к компьютеру через специаль-ные разъемы - порты ввода-вывода.
Порты ввода-вывода бывают двух
типов: параллельные (обозначаемые LPT1-LPT4), используемые для подключения
принтеров; последовательные,
обозначаемые СОМ1-COM4, для подключения мыши, модема и т.д.
К устройствам
ввода информации относятся клавиатура, графические
планшеты (дигитайзеры), сканеры (читающие автоматы), устройства указания (графические манипуляторы) и сенсорные
экраны.
Клавиатуры по конструктивному исполнению делятся на два вида: пленочные
(мембранные) и механические (на пружинах, более долговечные). Для подключения
используется один из специальных разъемов: круглый 5-контактный АТ, круглый
6-контактный PS/2 или шина USB. Также существуют беспроводные клавиатуры, которые
работают на батарейках на расстоянии до
Устройства указания (мыши) по
конструктивному исполнению делятся на два вида: оптические и механические. Для
подключения используется один из специальных разъемов: COM, PS/2 или шина USB со специальным разъемом.
К устройствам вывода информации
относятся графопостроители (плоттеры) и принтеры. Различают матричные,
струйные и лазерные принтеры.
К диалоговым средствам
пользователя относятся видеотерминалы
(мониторы), устройства речевого
ввода-вывода информации, средства связи и телекоммуникации.
Видеотерминал состоит из видеомонитора
(дисплея) и видеоконтроллера
(видеоадаптера). Видеоконтроллеры входят в состав системного блока компьютера
(находятся на видеокарте, устанавливаемой в разъем материнской платы).
Мониторы отличаются друг от друга по
способу формирования изображения на экране, размерам, качеству изображения и
другим характеристикам. Наиболее распространенным для настольного ПК является
монитор на основе электронно-лучевой трубки (ЭЛТ), который обеспечивает
наивысшее качество изображения, сравнительно недорогие, однако небезопасен за
счет электромагнитного излучения.
Основными характеристиками являются:
- размер
точки изображения (0,25-
- максимальное
разрешение экрана (наиболее комфортное - 800х600 точек), которое обозначает
количество точек (пикселов) по горизонтали и по вертикали, отображаемое на
экране монитора;
- частота
регенерации (частота смены кадров, скорость вертикальной развертки, частота
вертикальной синхронизации);
- размер
экрана по диагонали, измеряемый в дюймах.
В настоящее время становится стандартом
цифровое управление монитором. При наличии цифрового управления монитором его
настройка осуществляется автономно с помощью пульта дистанционного управления
или программно, что обеспечивает более высокую точность настройки.
Мониторы на основе жидкокристаллических
экранов с активной матрицей (ЖК-мониторы) обладают следующими преимуществами по
сравнению с ЭЛТ-мониторами: они легче, потребляют вчетверо меньше энергии,
почти не требуют времени на «разогрев» после включения, отсутствует
электромагнитное поле, не мерцает изображение, нет нечеткого изображения из-за
плохой настройки монитора и искажения изображения на краях экрана. Их
недостатки: высокая цена, диапазон углов обзора ограничен, яркость и
разрешающая способность ниже, чем у ЭЛТ-мониторов.
Мониторы размером 20 и более дюймов могут
иметь плазменные экраны, которые, в отличие от ЖК-мониторов, обеспечивают
широкий диапазон углов обзора и такие же яркость и контрастность, как у
ЭЛТ-мониторов.
К устройствам речевого
ввода-вывода информации относятся различные микрофонные акустические системы,
синтезаторы звука, выполняющие преобразование цифровых кодов в буквы и слова,
воспроизводимые через динамики или звуковые колонки, подсоединенные к
компьютеру.
К средствам связи прежде всего относятся сетевые адаптеры. В
качестве сетевого адаптера чаще всего используются модемы
(модулятор-демодулятор).
Многие из названных выше
устройств относятся к условно выделенной группе - средствам мультимедиа. К средствам мультимедиа относятся устройства речевого ввода и вывода
информации, микрофоны и видеокамеры, акустические и видеовоспроизводящие
системы с усилителями, звуковыми колонками, большими видеоэкранами, звуковые и
видеоплаты, платы видеозахвата, снимающие изображение с видеомагнитофона или
видеокамеры и вводящие его в компьютер, сканеры, внешние запоминающие
устройства большой емкости на оптических дисках.
Дополнительную информацию по теме можно
получить в [1, 5-8, 35-43].
4 Лекция № 4. Системное программное обеспечение
Содержание лекции:
- системное программное
обеспечение; понятие операционных систем, их классификация; программные
оболочки; служебные программы.
Цель
лекции:
- изучить основные системные программы и их назначение.
Программное обеспечение - это совокупность программ, позволяющих осуществить на компьютере автоматизированную
обработку
информации. Согласно современным тенденциям программное обеспечение
классифицируется как системное
(общее) и прикладное (специальное).
К системному программному обеспечению относятся: операционные системы и их пользовательский
интерфейс; инструментальные программные
средства; системы технического и
сервисного обслуживания.
Операционная система (ОС) представляет собой совокупность программ,
выполняющих две основные функции: предоставление пользователю удобств виртуальной машины и повышение эффективности
использования компьютера при рациональном управлении его ресурсами. ОС скрывает от
пользователя особенности физического расположения информации на дисках и
осуществляет обработку прерываний, управление таймерами и оперативной памятью.
В результате пользователю предоставляется виртуальная машина, реализующая
работу на логическом уровне. К современным операционным системам
предъявляются следующие
требования: совместимость,
переносимость, надежность и отказоустойчивость, безопасность, расширяемость, производительность. В настоящее время существуют различные
классификации операционных систем:
а) по числу
одновременно выполняемых задач выделяют ОС однозадачные
(MS DOS, ранние версии PC DOS) и многозадачные
(OS/2, UNIX, Windows). Многозадачность бывает невытесняющая (NetWare, Windows3/95/98) и вытесняющая (Windows NT, OS/2, UNIX).
В первом случае активный процесс по окончании сам передает управление ОС для
выбора из очереди другого процесса. Во втором - решение о переключении процессора
с одного процесса на другой принимает ОС;
б) по числу
одновременно работающих пользователей ОС делятся на однопользовательские (MS DOS, WindowsЗх, ранние версии OS/2) и многопользовательские
(UNIX, WINDOWS NT). В многопользовательских системах присутствуют
средства защиты информации пользователей от несанкционированного доступа;
в) в сетевых ОС присутствуют средства
передачи данных между компьютерами по линиям связи и реализация протоколов
передачи данных;
г) по
аппаратной платформе: кроме ОС, ориентированных на определенный тип аппаратной
платформы, существуют мобильные ОС,
легко переносимые на разные типы компьютеров (UNIX). В таких ОС аппаратно-зависимые места
локализованы и при переносе системы переписываются. Аппаратно-независимая
часть реализуется на языке программирования высокого уровня, как правило, на
языке С, и перекомпилируется при переходе на другую платформу.
В
настоящий момент около 90%
компьютеров используют ОС Windows. Более широкий класс операционных систем ориентирован для
использования на серверах. К этому классу ОС относятся семейство UNIX, разработки
фирмы Microsoft (MS DOS и Windows), сетевые продукты Novell и корпорации IBM.
UNIX -
многопользовательская, многозадачная операционная система, которая включает
достаточно мощные средства защиты программ и файлов различных пользователей. ОС
UNIX является
машинонезависимой, что обеспечивает высокую мобильность и легкую переносимость
прикладных программ на компьютеры различной архитектуры. Важной особенностью
ОС семейства UNIX
являются ее модульность и обширный набор сервисных программ, которые позволяют
создать благоприятную операционную обстановку для пользователей-программистов
(то есть система особенно эффективна для специалистов - прикладных
программистов). Независимо от версии общими для UNIX чертами являются многопользовательский режим со средствами защиты данных от
несанкционированного доступа; реализация многозадачной
обработки в режиме разделения времени;
переносимость системы путем написания основной части на языке С. Недостатком системы UNIX является большая ресурсоемкость, которая
для небольших однопользовательских систем на базе персональных компьютеров
чаще всего является избыточной. В целом ОС семейства UNIX ориентированы
прежде всего на большие локальные (корпоративные) и глобальные сети, объединяющие работу тысяч пользователей. Большое
распространение UNIX
и ее версия LINUX
получили в сети Интернет, где важнейшее значение имеет машинонезависимость
операционной системы.
Операционная
система MS DOS широко использовалась для персональных компьютеров, построенных
на базе процессоров Intel
8088-80486. В настоящее время MS DOS практически не применяется для управления компьютерами.
Однако ее не следует считать полностью исчерпавшей свои возможности и
потерявшей актуальность. Низкие требования к аппаратным ресурсам оставляют DOS перспективной для практического
использования. Так, в
Операционные
системы Windows - это семейство операционных систем, включающих: Windows 3.1, Windows for Workgroups 3.11, которые назывались операционными оболочками (поскольку ОС DOS для них устанавливалась отдельно), Windows 9X, Windows NT, Windows 2000, Windows ME, Windows XP, Windows 2003.
Операционная
система Windows 95
характеризуется простотой инсталляции, невысоким уровнем защиты данных и
устойчивости к сбоям приложений, обладает интуитивно понятным интерфейсом,
поддерживает технологию plug-and-play, содержит встроенные средства для
сетевой работы.
Операционная
система Windows 98 является
развитием Windows 95. Эта версия тесно интегрирована с Web-браузером Internet Explorer и содержит большое количество драйверов к
старым и новым устройствам. Пользователи отмечают упрощенный процесс
инсталляции ОС, пониженные по сравнению с NT требования к мощности процессора, объему
памяти и дисковому пространству.
Одной из
разновидностей Windows является ОС Windows СЕ. Эта линия ОС предназначена для использования на портативных
компьютерах. Операционная система Windows СЕ представляет собой 32-разрядную
объектно-ориентированную многозадачную ОС, имеет встроенные функции
энергосбережения. Версия Windows СЕ 3.0 (2000) по своим возможностям приближается к системам
реального времени. Основная часть этой компактной ОС записана в перепрограммируемое
ПЗУ портативных компьютеров.
Операционная
система Windows NT 5.0 или Windows 2000 - полностью 32-разрядная ОС с
приоритетной многозадачностью, улучшенной реализацией работы с памятью и
изначально проектировалась со средствами обеспечения надежности, защиты и
управления. Windows 2000 выпускается в четырех вариантах: Windows 2000 Professional, Windows 2000
Server, Windows 2000 Advanced Server и Windows 2000 Data Center Server. Эти версии отличаются количеством входящих
в поставку служб и программ, степенью поддержки аппаратного обеспечения.
Операционная система OS/2 (Operating System/2) является многозадачной однопользовательской ОС,
односторонне программно совместимой с MS DOS (MS DOS → OS/2) и предназначенной для
работы с микропроцессорами 80386 и выше (IBM PC и PS/2). Важными особенностями OS/2
является наличие многооконного интерфейса пользователя; программных
интерфейсов для работы с системой баз данных; эффективных программных интерфейсов
для работы в локальных вычислительных сетях. К недостаткам OS/2 относится в
первую очередь сравнительно небольшой объем программных приложений,
наработанных к настоящему времени.
Операционная
система Windows XP обладает большими возможностями, усовершенствованными
программами и инструментальными средствами, которые включают улучшенные средства безопасности,
позволяющие проверять состояние таких важных элементов безопасности компьютера
как брандмауэр Windows,
автоматическое обновление и антивирусные программы, а также новые технологии,
действующие в фоновом режиме и обеспечивающие более эффективную и надежную
работу компьютера. Windows XP надежной и стабильной, что обеспечивает
высокую производительность и эффективность работы компьютера.
Программы, обеспечивающие интерфейс ОС, сохраняют форму общения (диалог)
пользователя с операционной системой, но изменяют язык общения (обычно язык команд преобразуется
в язык меню). Сервисные системы условно можно разделить на интерфейсные системы, оболочки операционных
систем и утилиты. Многие утилиты имеют развитый
диалоговый интерфейс с пользователем и приближаются по уровню общения к
оболочкам.
Инструментальные
программные средства включают в свой
состав средства написания программ - текстовые
редакторы; средства преобразования программ в вид, пригодный для выполнения
на компьютере - ассемблеры, компиляторы, интерпретаторы, загрузчики
и редакторы связей, средства контроля и отладки программ.
При загрузке ОС в память компьютера загружаются драйверы, а их имена указываются в специальном файле CONFIG.SYS. С помощью драйверов возможно подключение к компьютеру новых устройств или нестандартное использование имеющихся устройств.
С помощью диспетчеров файлов (файловых менеджеров) выполняется большинство операций, связанных с обслуживанием файловой структуры ОС: копирование, перемещение и переименование файлов, создание каталогов (папок), удаление файлов и каталогов, поиск файлов и навигация в файловой структуре. Базовые программные средства, предназначенные для этой цели, обычно входят в состав программ системного уровня и устанавливаются вместе с ОС. Но для удобства работы с компьютером устанавливаются дополнительные служебные программы:
а) средства сжатия данных – архиваторы;
б) средства просмотра и воспроизведения, предназначенные только для просмотра без редактирования документов разных типов;
в) средства диагностики, предназначенные для автоматизации процессов диагностики программного и аппаратного обеспечения и используемые для оптимизации работы компьютерной системы;
г) средства контроля (мониторинга), позволяющие следить за процессами в компьютерной системе. При этом возможны два подхода:
1) наблюдение в реальном режиме времени;
2) контроль за записью результатов в специальном протокольном файле;
д) мониторы установки, используемые для отслеживания состояния и изменения программной среды, протоколирования образования новых связей и восстановления связей, утраченных в результате удаления ранее установленных программ;
е) средства коммуникации (коммуникационные программы), выполняющие функции работы в сети, с электронной почтой, установки соединений с удаленными компьютерами, пересылки факсимильных сообщений;
ж) средства обеспечения компьютерной безопасности:
1) средства активной и пассивной защиты данных от повреждения;
2) средства защиты от несанкционированного доступа, просмотра и изменений данных, основанные на криптографии.
Дополнительную информацию по теме можно получить в [1, 2, 5, 9, 10, 35-43].
5 Лекция № 5. Прикладное программное обеспечение
Содержание лекции:
- прикладное программное
обеспечение; пакеты прикладных программ; издательские системы; системы
оптического распознавания текста; системы управления базами данных;
интеллектуальные и экспертные системы.
Цель
лекции:
- изучить распространенные
прикладные программы и их назначение.
Прикладное программное обеспечение предназначено для решения пользовательских задач. Ключевым понятием
здесь является пакет прикладных программ.
Различают следующие типы пакетов прикладных
программ: общего назначения, методо-ориентированные, проблемно-ориентированные.
К прикладному
программному обеспечению относятся сервисные
программные средства, которые служат для организации удобной рабочей среды
пользователя, а также для выполнения вспомогательных функций (информационные
менеджеры, переводчики и т. д.). В настоящее время существует
множество программных продуктов,
обеспечивающих информационные технологии автоматизации офиса. К ним относятся: текстовые процессоры, табличные процессоры, системы
управления базами данных, электронная
почта, компьютерные конференции, видеотекст, электронный календарь, а также
специализированные программы управленческой деятельности: ведение документов, контроль
исполнения приказов и
т. д. (например, пакет офисных приложений MS Office,
предлагаемый корпорацией Microsoft).
Основу большинства электронных изданий, как и печатных
изданий, составляет текстовый материал, который может подготавливаться в
текстовых редакторах или программных пакетах верстки и оформляться в
соответствии с требованиями, предъявляемыми к печатным изданиям. Поскольку
такие издания могут подготавливаться в различной программной среде, для
воспроизведения электронного документа необходима именно эта среда или другая,
но программно и информационно совместимая с ней. Фирма Adobe Systems предложила свой подход к решению проблемы программно-информационной
совместимости электронных изданий. В качестве стандартного текстового формата
выбран формат разметки текста PDF, т.к. практически в каждой программе текстовых редакторов
или пакетов верстки имеются трансляторы формата документа, созданного в
определенной программе в формат PDF.
Поэтому любой электронный документ можно представить в едином виде и
осуществить его просмотр в программе Adobe Acrobat.
В некоторых электронных документах
текстовый материал используется в качестве комментария к графическим или
анимационным элементам электронных изданий.
К таким изданиям относят гиперграфические
и мультимедийные издания.
Исходный текстовый материал электронного
издания может подготавли-ваться традиционными способами: с помощью
клавиатурного набора, скани-рования текстовых блоков исходного документа с
последующим распознаванием символов в среде соответствующих программ
распознавания текста, переноса на компьютер с помощью магнитных носителей,
передачи по сети и т. д.
Для автоматизации подготовки электронных
документов созданы специальные программы: Macromedia Dreamweaver,
Microsoft FrontPage, Adobe Page Mill, Claris Home Page, SoftQuad, HotMetal Pro, Symatec Visual Page, NetObject Fusion и
т.д.
Помимо текста в состав электронных
документов могут быть включены и другие элементы, например, полутоновые и
цветные иллюстрации, которые представляются в виде растровой или векторной
графики.
Растровые изображения (например, фотография) строятся по дискретным точкам – пикселям, количество которых зависит от
разрешающей способности монитора и видеоадаптера ПК. Растровые изображения
можно создавать и редактировать в программах растровой графики типа Adobe PhotoShop, Corel PhotoPaint, MS Paint и других.
Векторная
графика (например, художественные и
технические иллюстрации) описывает объекты с помощью математических выражений.
Векторные изображения не зависят от разрешения. Они требуют меньшего объема
памяти при хранении, чем растровые, и могут масштабироваться без потери
качества. Создавать и редактировать векторную графику можно в программах
векторной графики Corel Draw, Adobe Illustrator, FreeHand.
В гипертекстовых
HTML-документах обычно
используется растровая графика. PDF-документы
могут включать в себя оба типа графики. Кроме растровой и векторной графики в
электронных публикациях могут содержаться:
- анимационная графика (наиболее популярны
анимационные пакеты Macromedia Flash, Macromedia, Director Hyper Method, Unlead Gif Animator, 3D-Studio и другие);
- видеоинформация (комплексную обработку информации обеспечивают Adobe Premiere, Unlead Media Studio Pro и
другие);
- аудиоинформация (для обработки цифрового звука применяются Cool Editor, Sound Forge, Samplitude, Software Audio Workshop).
Наиболее распространенным способом
получения электронного изображения является сканирование.
Различают
ручные, листовые, планшетные, проекционные и барабанные сканеры. Наибольшее
распространение получили планшетные сканеры. Важнейшими характеристиками
сканера являются физическое разрешение и
глубина цвета.
В число лучших
систем оптического распознавания текста входят програм-мы FineReader и CuneiForm. Они имеют достаточно
простой русскоязычный интерфейс и поставляются с любым сканером, приобретенным
у официального дилера. Если же предстоит работать с текстами на иных языках,
кроме русского и основных европейских, то лучше использовать полные версии OCR-программ, поставляемых со
сканерами фирм Primax и Hewlett Packard.
Для подготовки же электронных изданий можно использовать любую доступную
специальную программу, например, Macromedia Dreamweaver, Microsoft FrontPage или Adobe PageMaker.
Задача распознавания информации состоит в
том, чтобы преобразовать отсканированное изображение в текст, сохранив при этом
оформление страницы. Прежде чем приступить к распознаванию текста, необходимо
установить основные параметры распознавания: язык распознавания, тип печати
распознанного текста и тип страницы. Редактор FineReader поддерживает распознавание как одноязычных, так и
многоязычных (например, англо-французских) документов. Для большинства текстов
тип печати определяется автоматически. Одна
из возможностей текстового редактора FineReader – это встроенная
проверка орфографии, которая позволяет находить неуверенно распознанные
слова, находить орфографические ошибки, добавлять неизвестные системе FineReader слова в словарь. Результаты
распознавания можно сохранить в файл, передать во внешнее приложение, не
сохраняя на диск, скопировать в буфер обмена или отправить по электронной
почте.
В настоящее время большое распространение
получили программные средства, обеспечивающие создание, использование и
управление базами данных. По принципу хранения данных все базы данных
разделяются на три основных типа: иерархические,
сетевые, реляционные. Для успешной работы с ними нужны программные средства,
которые обеспечивали бы доступ к необходимой информации, внесение каких-либо
изменений в базу данных и другие действия с данными. Для решения этой задачи
используют системы управления базами
данных (СУБД). Все СУБД делятся на две группы: локальные (dBase, FoxPro, MS Access) и сетевые (InterBase, Oracle, MS SQL Server).
Основные функции СУБД: определение данных
(описание структуры баз данных), обработка данных и управление данными.
Любая СУБД позволяет выполнять четыре
основные операции с данными:
- добавлять в таблицу одну или несколько
записей;
- удалять из таблицы одну или несколько
записей;
- обновлять значения некоторых полей в
одной или нескольких записях;
- находить записи, удовлетворяющие
заданному условию.
Под управлением данными обычно понимают
защиту данных от несанкци-онированного доступа, поддержку
многопользовательского режима работы с данными и обеспечение целостности и
согласованности данных. Защита от несанкционированного доступа обычно позволяет
каждому пользователю видеть и изменять только те данные, которые ему разрешено
видеть или менять. Средства, обеспечивающие многопользовательскую работу, не
позволяют нес-кольким пользователям одновременно изменять одни и те же данные.
Средства обеспечения целостности и согласованности данных не дают выполнять
такие изменения, после которых данные могут оказаться несогласованными.
Технология баз данных используется во
множестве приложений. Некоторые из них предназначены для единственного
пользователя с единственным компьютером,
другие используются рабочими группами через локальную
сеть, третьи служат сотням пользователей и содержат триллионы данных. В
последнее время технология баз данных применяется в сочетании
с Интернет-технологией для поддержки мультимедийных приложений в открытых и
закрытых сетях.
Microsoft
Access является настольной СУБД
реляционного типа, которая имеет все необходимые средства для выполнения
перечисленных выше функций СУБД. Достоинством Microsoft Access является то, что она имеет простой графический
интерфейс, который позволяет не только создавать собственную базу данных, но и
разрабатывать простые и сложные приложения.
Среди современных прикладных программ
особое место занимают интеллектуальные компьютерные системы.
Технология таких систем является одним из направлений новой области
исследования, которая получила наименование искусственного
интеллекта (Artificial Intelligence - AI). К области искусственного
интеллекта относится создание программ порождения и проверки гипотез. Разделить
процесс проверки гипотез на отдельные эксперименты - это искусство, которое
исследователь постигает как в результате специального обучения, так и на
собственном опыте. Основные усилия в этой области предпринимаются в направлении
эмуляции мышления человека.
Из общей концепции искусственного интеллекта
выросла теория экспертных систем.
Экспертная система может полностью взять на себя функции, выполнение которых
обычно требует привлечения опыта человека-специалиста, или играть роль
ассистента для человека, принимающего решение. Правильное распределение функций
между человеком и машиной является одним из ключевых условий высокой
эффективности внедрения экспертных систем. Исследования в этой области
сконцентрированы на разработке и внедрении компьютерных программ, способных
эмулировать те области деятельности человека, которые требуют мышления,
определенного мастерства и накопленного опыта. К ним относятся задачи принятия
решений, распознавания образов и понимания человеческого языка.
Экспертная система отличается от прочих
прикладных программ наличием двух признаков: моделирует не столько физическую
природу определенной проблемной области, сколько механизм мышления человека
применительно к решению задач проблемной области; система, помимо выполнения
вычислительных операций, формирует определенные соображения и выводы,
основываясь на тех знаниях, которыми она располагает. Знания в системе
представлены на некотором специальном языке и хранятся отдельно от собственно
программного кода, который и формирует выводы и соображения, называемый базой знаний. В качестве синонима
понятия «экспертная система» используется термин система, основанная на знаниях.
Итак, экспертная система содержит знания в
определенной предметной области, накопленные в результате практической
деятельности человека, и использует их для решения проблем, специфичных для
этой области, что отличает ее от прочих, «традиционных» систем. Процесс
создания экспертной системы называют инженерией
знаний (knowledge engineering).
Дополнительную информацию можно получить в [1, 2, 5, 11-18, 35-43].
6 Лекция № 6. Компьютерные сети, сетевые и
телекоммуникационные технологии
Содержание лекции:
- понятие компьютерных сетей; локальные и глобальные сети; топологии
сетей; сетевые операционные системы.
Цель
лекции:
- изучить аппаратные и
программные средства локальных и
глобальных сетей.
Появление персональных компьютеров потребовало нового подхода к
организации системы обработки данных, к созданию новых информационных
технологий. Возникла потребность перехода от использования отдельных
компьютеров в системах централизованной обработки данных к распределенной обработке данных в компьютерной
вычислительной сети. Абонентами сети могут быть отдельные
компьютеры,
компьютерные комплексы, терминалы, промышленные роботы, станки с числовым
программным управлением и т. д. В зависимости от территориального
расположения абонентов компьютерные сети делятся на глобальные, региональные и локальные. Объединение
глобальных, региональных и локальных компьютерных сетей позволяет создавать
многосетевые иерархии,
обеспечивающие мощные средства обработки огромных информационных массивов и
доступ к неограниченным информационным ресурсам.
В общем
случае компьютерная сеть представляется
совокупностью трех вложенных друг в друга подсистем: сети рабочих станций, сети
серверов и базовой сети передачи
данных.
Базовыми
требованиями, определяющими архитектуру компьютерных сетей, являются
следующие: открытость,
живучесть, адаптивность, безопасность информации. Указанные требования обеспечиваются
модульной организацией управления процессами в сети, реализуемой по многоуровневой
схеме. Число уровней и распределение функций между ними существенно влияет на
сложность программного обеспечения компьютеров, входящих в сеть, и на
эффективность сети. Формальной процедуры выбора числа уровней не существует.
В качестве
эталонной модели принята семиуровневая
схема: уровень 1 - физический, уровень 2 - канальный, уровень
3 - сетевой, уровень 4 – транспортный, 5 - сеансовый, 6 - представительный,
7 - прикладной. Уровни 1-3 организуют базовую сеть передачи
данных как систему, обеспечивающую надежную передачу данных между абонентами
сети. На уровне
5 по запросам процессов создаются порты для приема и передачи сообщений и организуются
соединения - логические каналы.
Порядок
реализации связей в сети регулируется протоколами.
Базовые
принципы организации компьютерной сети определяют ее основные характеристики: операционные возможности, производительность, время доставки сообщений и стоимость предоставляемых услуг.
Информационные системы, построенные на базе локальных вычислительных сетей, обеспечивают
решение следующих задач: хранение данных, обработка данных, организация доступа
пользователей к данным, передача данных и результатов их обработки пользователям.
Компьютерные сети реализуют распределенную обработку данных. Здесь обработка
данных распределяется между двумя объектами: клиентом и сервером.
Сервер обеспечивает хранение данных общего пользования и организует доступ к
этим данным. В процессе обработки данных клиент формирует запрос к серверу на выполнение
сложных процедур. Сервер выполняет запрос и результаты передает клиенту. Подобная модель
вычислительной сети получила название архитектуры
клиент-сервер.
Другой моделью вычислительной сети
является файл-сервер, запускающий
операционную систему и управляющий потоком данных, передаваемых по сети.
Отдельные рабочие станции и любые,
совместно используемые периферийные устройства (принтеры, сканеры, модемы и
т.д.) подсоединяются к файл-серверу. Каждая рабочая станция работает под
управлением собственной дисковой операционной системы, но, в отличие от
автономного персонального компьютера,
содержит плату сетевого интерфейса и физически соединена кабелями с
файл-сервером. Рабочая станция запускает оболочку
сети, которая позволяет использовать
файлы и программы, хранящиеся на файл-сервере, так же
легко, как и находящиеся на ее
собственных дисках. Чтобы включить рабочую станцию в состав сети, оболочка сетевой операционной системы
загружается в начало операционной
системы компьютера. Оболочка сохраняет большую
часть команд и функций операционной системы и добавляет локальной
системе больше функций, что придает ей гибкость.
По признаку распределения функций локальные компьютерные сети делятся
на одноранговые и двухранговые (иерархические сети или сети с
выделенным сервером). В одноранговой сети компьютер выступает и в роли клиента, и в роли сервера.
Одноранговое разделение ресурсов является вполне приемлемым для малых офисов с
5-10 пользователями, объединяя их в рабочую группу. Двухранговая сеть
организуется на основе сервера, на котором регистрируются пользователи сети.
Для современных компьютерных сетей типичной является смешанная сеть, объединяющая рабочие станции и серверы, причем
часть рабочих станций образует одноранговые сети, а другая часть принадлежит
двухранговым сетям.
Геометрическая
схема соединения (конфигурация физического подключения) узлов сети называется топологией сети. Существует большое
количество вариантов сетевых топологий, базовыми из которых являются шина, кольцо, звезда. Локальная сеть может
использовать одну из
перечисленных топологий. Это зависит от количества объединяемых
компьютеров, их взаимного расположения и других условий.
Проблемы
шинной топологии возникают в следующих случаях: при разрыве в любой точке шины;
при выходе из строя сетевого адаптера одного из компьютеров и передачи на шину
сигналов с помехами; при необходимости подключения к сети нового компьютера.
Недостатками кольцевой организации являются разрывы в любом месте кольца,
прекращающие работу всей сети; зависимость времени передачи сообщения временем
последовательного срабатывания каждого узла, находящегося между отправителем и
получателем; возможность непреднамеренного искажения информации из-за
прохождения данных через каждый узел. Комбинация базовых топологий (гибридная) обеспечивает получение широкого
спектра решений, аккумулирующих достоинства и недостатки базовых.
В различных сетях существуют различные
процедуры, описывающие методы доступа к сетевым каналам (протоколы передачи данных). Наибольшее распространение
получили конкретные реализации методов
доступа: Ethernet, Arcnet и Token-Ring.
Метод
доступа Ethernet,
разработанный фирмой Xerox в 1975
году, пользуется наибольшей популярностью, так как обеспечивает высокую
скорость передачи данных и не исключает возможности одновременной передачи сообщений двумя или
несколькими станциями. Для данного метода
доступа используется топология «общая шина».
Метод
доступа Arcnet, разработанный
фирмой DatapointCorp., получил
широкое распространение, благодаря тому, что оборудование Arcnet дешевле, чем оборудование Ethernet или Token-Ring.
Arcnet используется в локальных
сетях с топологией «звезда».
Метод доступа Token-Ring был
разработан фирмой IBM и рассчитан на
кольцевую топологию сети.
Кроме проблем создания
локальных вычислительных сетей, имеется также проблема расширения (объединения)
компьютерных сетей. Вычислительная сеть, созданная на определенном этапе
развития информационной системы, со временем может перестать удовлетворять
потребности всех пользователей. В то же время физические свойства сигналов,
каналов передачи данных и конструктивные особенности сетевых компонент
накладывают жесткие ограничения на количество узлов и геометрические размеры
сети. Для объединения локальных сетей применяются следующие устройства: повторитель, мост, маршрутизатор, шлюз.
Крупные локальные сети объединяются в
глобальные. Функционирование глобальных сетей поддерживают центры управления
(специальные компьютеры), которые служат только для административных целей,
ведут учет, предоставляют пользователям информацию относительно ресурсов сети,
проверяют работу сети. Пользователи общаются с другими абонентами сети
посредством специального коммуникационного программного обеспечения. В
настоящее время наиболее крупной глобальной сетью, охватывающей практически все
страны мира, считается Internet.
Internet обеспечивает обмен
информацией
между всеми компьютерами, которые входят в сети, подключенные к ней, и предоставляет в
распоряжение своих пользователей множество всевозможных ресурсов. Тип компьютера и
используемая им операционная система значения не имеют.
Для того чтобы информация передавалась между компьютерами независимо от
используемых линий связи, типа компьютера и программного обеспечения, разработаны специальные протоколы передачи данных. Они
работают по принципу разбиения данных на блоки определенного размера (пакеты),
которые последовательно отсылаются адресату. В Интернете используются два
основных протокола: межсетевой
протокол IP и протокол управления передачей TCP. Так как эти
протоколы взаимосвязаны, обычно говорят о протоколе TCP/IP.
Основными ячейками Internet являются локальные
вычислительные сети. Если некоторая локальная сеть подключена к Internet, то каждая рабочая
станция этой сети также может
подключаться к Internet. Компьютеры, самостоятельно подключаемые
к Internet, называются хост-компьютерами.
Каждый
подключенный к сети компьютер имеет свой адрес. К адресам станций предъявляются
специальные требования. Адрес должен иметь формат, позволяющий вести его
обработку автоматически, и должен нести информацию о своем владельце. С этой
целью для каждого компьютера устанавливаются два адреса: цифровой IP-адрес
и доменный адрес. Первый
из них более понятен компьютеру, второй — человеку. Оба эти адреса являются
равноправными.
Для упрощения
связи абонентов сети все ее адресное пространство разбито на отдельные области
– домены, которые в системе адресов
Internet представлены географическими регионами и имеют имя, состоящее из
двух букв. Существуют домены, разделенные по тематическим признакам, имеющие
трехбуквенное сокращенное название. Компьютерное имя включает как минимум два
уровня доменов, которые отделяются друг от друга точкой. Справа указывается
домен верхнего уровня, слева - поддомены общего домена.
Для обработки
пути поиска в доменах имеются специальные серверы
имен.
Использование
технологий Интернета необязательно реализуется в рамках всемирной
информационной сети. Технологии, применяемые в глобальной сети, пригодны и для
создания мощных корпоративных информационных систем и систем обеспечения
коллективной работы (IntraNet).
Компоненты
(протоколы,
программы, компьютеры-серверы), собранные вместе для обеспечения одной из услуг Internet, называются сервисами
(услугами, службами) сети. Одним из важнейших сервисов является электронная почта. Локальные системы
электронной почты характеризуются секретностью, низкой стоимостью и высокой
функциональностью. Существуют два основных вида локальных систем: централизованные системы и системы
на основе локальных сетей. Существует множество программных пакетов
электронной почты. К ним относятся Microsoft Outlook Express,
Microsoft Mail, Novell Group Wise и другие. Возможности электронной почты могут быть
использованы в Internet. При этом используется система адресов,
базирующаяся на доменном адресе компьютера, подключенного к Internet.
Дополнительную информацию по теме можно получить в [1, 3, 19-23,
35-43].
7
Лекция № 7. Основы защиты информации
Содержание
лекции:
- информационная безопасность; классификация
угроз безопасности; защита информации в локальных сетях; антивирусная защита;
архивация данных.
Цель лекции:
- изучить виды угроз безопасности сетей и
способы защиты от них.
В настоящее время информация является специальным
«товаром», при этом ее стоимость превосходит во много раз стоимость
компьютерной системы, в которой она находится. Поэтому возникает необходимость
в защите информации от несанкционированного
доступа (НСД), умышленного изменения, кражи, уничтожения. Каждая
информационная система (ИС) проводит
собственную политику безопасности.
Безопасность
информационной системы достигается
принятием мер по обеспечению конфиденциальности
и целостности обрабатываемой ею
информации, а также доступности и целостности компонентов и ресурсов системы.
Под доступом к
информации понимается ознакомление с информацией, ее обработка. Правила разграничения доступа к
информации служат для регламентации прав доступа пользователей к объектам
доступа.
Под угрозой
безопасности информационной системы понимаются возможные воздействия на ИС,
которые прямо или косвенно могут нанести ущерб ее безопасности.
Атака на информационную систему – это реализация угрозы
безопасности, которая заключается в поиске той или иной уязвимости системы. Системы, снабженные комплексами средств защиты, эффективно противостоят угрозам
безопасности и являются безопасными (защищенными).
Политика
безопасности – совокупность норм,
правил и практических рекомендаций, регламентирующих работу средств защиты ИС
от заданного множества угроз безопасности.
С точки зрения
информационной безопасности информация обладает следующими категориями: целостностью, аутентичностью, апеллируемостью
и конфиденциальностью. С позиций
безопасности информационные системы должны обладать следующими свойствами: надежность, точность, контроль доступа, контролируемость, контроль
идентификации, устойчивость к
умышленным сбоям.
По цели воздействия различают три основных типа угроз
безопасности ИС: угрозы нарушения конфиденциальности информации, угрозы
нарушения целостности информации, угрозы нарушения работоспособности системы
(отказы в обслуживании).
Угроза нарушения конфиденциальности имеет место всякий
раз, когда получен несанкционированный доступ к некоторой закрытой информации.
Целостность информации может быть нарушена умышленно или в результате
объективных воздействий со стороны окружающей среды. Отказы в обслуживании
направлены на создание таких ситуаций, когда определенные преднамеренные
действия снижают работоспособность или блокируют доступ к ресурсам системы.
Наиболее распространенным видом компьютерных нарушений
является несанкционированный доступ. Из
всего разнообразия способов и приемов НСД отметим следующие: перехват паролей,
«маскарад», незаконное использование привилегий.
Перехват паролей осуществляется специально
разработанными программами. Например, при попытке законного пользователя войти
в систему программа-перехватчик имитирует на экране дисплея ввод имени и пароля
пользователя, которые пересылаются владельцу программы-перехватчика, после чего
на экран выводится сообщение об ошибке и управление возвращается операционной
системе. Пользователь предполагает, что допустил ошибку и повторяет ввод.
Перехватчик может теперь использовать пароль.
«Маскарад» - выполнение каких-либо действий одним
пользователем от имени другого, обладающего полномочиями. Целью «маскарада»
является возможность приписать какие-то действия другому пользователю или
присвоить его привилегии. Например, вход в систему под именем другого с
перехватом пароля; передача сообщений в сети от имени другого пользователя.
«Маскарад» особенно опасен в банковских системах электронных платежей.
Незаконное использование привилегий возможно при
наличии ошибок в системе защиты или халатности администратора при назначении
привилегий.
Особо следует остановиться на угрозах, которым могут
подвергаться компьютерные сети. При пассивном вторжении (перехвате информации)
нарушитель только наблюдает за прохождением информации по каналу связи и может
выполнить анализ трафика (потока сообщений). При активном вторжении нарушитель
стремится подменить информацию, передаваемую в сообщении. В таблице 7.1
приведены некоторые пути реализации угроз безопасности компьютерных сетей.
Компьютерный
вирус – это программа, которая может
заражать другие программы, инфицируя их посредством включения в них своей
копии, которая сохраняет способность к дальнейшему размножению. Они способны к
саморазмножению и к модификации вычислительного процесса аналогично
паразитированию биологического вируса. Вирусы могут заражать системные файлы и
загружаются в память при каждом включении компьютера, и/или инфицируют
исполняемые файлы, чтобы остаться необнаруженными. Основными типами вирусов
являются: программные и загрузочные вирусы, макровирусы.
«Троянский
конь» представляет собой программу,
которая наряду с действиями, описанными в ее документации, выполняет некоторые
другие действия, ведущие к нарушению безопасности системы и деструктивным
результатам. Такие программы часто маскируются под полезные утилиты.
«Сетевой червь» - разновидность вируса, который распространяется по
глобальной сети. Первоначально они были разработаны для поиска в сети других
компьютеров со свободными ресурсами, чтобы получить возможность выполнить
распределенные вычисления. При правильном использовании технология червей может
быть полезной. Но это самый опасный вид вредоносных программ, так как объектом
их атаки может стать любой из компьютеров глобальной сети.
Таблица 7.1 - Пути реализации угроз безопасности
компьютерных сетей
Объекты воздействия |
Нарушение конфиденциальности информации |
Нарушение целостности информации |
Нарушение работоспособности системы |
1 Аппаратные средства |
НСД-подключение,
использование ресурсов, хищение носителей |
НСД-подключение,
использование ресурсов, модификация, изменение режимов |
НСД-изменение режимов,
выход из строя, разрушение. |
2 Програм-мное обеспечение |
НСД-копирование, хищение,
перехват |
НСД-внедрение вирусов,
«червей», «троянского коня» |
НСД-искажение, удаление,
подмена |
3 Данные |
НСД-копирование, хищение,
перехват |
НСД-искажение, модификация |
НСД-искажение, удаление,
подмена |
4 Персонал |
Разглашение, передача
сведений о защите, халатность |
«Маскарад», вербовка,
подкуп |
Уход с рабочего места,
физическое устранение |
Для защиты от вредных программ применяются следующие
меры: исключение НСД к исполняемым
файлам, тестирование приобретаемых программ, контроль целостности исполняемых
файлов и системных областей, создание замкнутой среды исполнения программ.
Одним из средств защиты информации является резервное копирование необходимых данных. Не менее важными средствами защиты информации являются антивирусные программы. Наиболее распространенные программы: антивирус Касперского, AVP сканер, DrWeb и другие. Программные средства антивирусной защиты предоставляют следующие возможности:
- создание образа жесткого диска на внешних носителях
(в случае выхода из строя данных в системных областях жесткого диска, этот диск
позволит восстановить большую часть данных);
- регулярное сканирование жестких дисков в
поисках вирусов (при сканировании
антивирусная программа ищет вирус путем сравнения кода программ с кодами
известных вирусов, хранящимися в базе данных);
- контроль за изменением размеров и других
атрибутов файлов (при изменении вирусами на этапе размножения параметров
зараженных файлов, антивирус может обнаружить их деятельность и предупредить
пользователя);
- контроль за обращениями к жесткому диску (поскольку
наиболее опасные операции, связанные с работой вирусов, обращены на модификацию
данных, записанных на жестком диске, антивирусные программы могут контролировать
обращения к нему и предупреждать пользователя о подозрительной активности).
Особенностью
большинства типов данных является определенная избыточность. При хранении
документов или их передаче избыточность можно уменьшить, что дает эффект
сжатия. Для сжатия файлов предназначены архиваторы.
В зависимости от
того, в каком объекте размещены данные, подвергаемые сжатию, различают: уплотнение файлов, уплотнение папок, уплотнение
дисков.
Методы сжатия с потерей информации применимы только для тех типов
данных, для которых формальная утрата части содержания не приводит к снижению
потребительских свойств. Это относится к мультимедийным данным. Характерными
форматами таких сжатий являются *.JPG для графических данных, *.MPG для видеоданных, *.MP3 для
звуковых данных. Если при сжатии данных происходит только изменение их
структуры, то из результирующего кода можно восстановить исходный массив. Такие
типы применяют для сжатия любых типов данных.
Характерными форматами сжатия без потери информации являются: *.GIF , *.TIF, *.PCX
для графических данных; *.AVI
для видеоданных; *.ZIP, *.ARJ, *.RAR, *.LHA, *.CAB для любых типов данных.
Основными форматами сжатия данных являются *.ZIP, *.ARJ, *.RAR.
Программные средства
для создания и обслуживания архивов отличаются большим объемом функциональных
возможностей. К базовым функциям, которые выполняют большинство архиваторов,
относятся: извлечение файлов из архивов; создание новых архивов; добавление
файлов в архив; создание самораспаковывающихся
архивов; создание распределенных архивов; восстановление поврежденных архивов; защита архивов от
просмотра и несанкционированной
модификации.
В компьютерных сетях, кроме обычных локальных атак,
осуществляемых в пределах одной системы, предпринимаются удаленные атаки, что
обусловлено распределенностью сетевых ресурсов и информации. Использование
глобальных сетей в коммерческих целях, а также при передаче информации
конфиденциального характера влечет за собой необходимость построения
эффективной системы защиты информации. Ряд задач по отражению наиболее
вероятных угроз для внутренних сетей способны решать межсетевые экраны. Большинство компонентов межсетевых экранов можно
отнести к одной из трех категорий: фильтрующие маршрутизаторы, шлюзы сетевого уровня, шлюзы прикладного уровня.
Следует помнить, что для сохранения и обеспечения
защиты информации необходимо постоянно обновлять антивирусные базы, выполнять резервное копирование и грамотно
применять политику безопасности.
Дополнительную
информацию по теме можно получить в [1, 23-26, 35-43].
8 Лекция № 8. Алгоритмизация. Основы
программирования. Современные программные средства
Содержание лекции:
- основные этапы решения
задач; понятие алгоритма; способы записи алгоритмов; базовые алгоритмические
структуры; языки программирования и их классификация; обзор современных
технологий программирования.
Цель
лекции:
- изучить виды алгоритмов и способы их записи,
этапы процесса разработки программ, ознакомиться с современными программными
средствами.
Человечество живет в мире алгоритмов и программ. Например,
физиологические процессы – это огромная, тщательно отлаженная и сложно
устроенная «библиотека» программ поведения организма. Основы алгоритмизации и
программирования фундаментальны и имеют общий характер, приближающий их к
основным законам математики.
Процесс решения задачи на компьютере состоит из нескольких этапов:
а) словесная постановка задачи (концептуальная модель);
б) математическая постановка задачи (математическая модель);
в) разработка алгоритма
решения задачи (алгоритмическая модель);
г) реализация алгоритма на языке
программирования (программная модель);
д) тестирование и отладка программы.
На первом этапе формулируется условие задачи, на втором этапе
определяются входные и выходные данные и их аналитическая взаимосвязь. Больше всего времени требуется на
тестирование и отладку программы. Это связано с тем, что на этом этапе
устраняются ошибки, допущенные на всех предыдущих этапах решения задачи. Остановимся подробнее на этапах разработки и
реализации алгоритма решения задачи.
Слово «алгоритм» происходит от имени математика IX
в. Аль Хорезми,
который сформулировал правила выполнения арифметических действий. Первоначально под
алгоритмом понимали только правила выполнения четырех арифметических действий
над числами. В дальнейшем это понятие стали использовать вообще для обозначения
последовательности действий, приводящих к решению любой поставленной
задачи.
Говоря об алгоритме вычислительного процесса, необходимо понимать, что
объектами, к которым применяется алгоритм, являются данные. Алгоритм решения
вычислительной задачи представляет собой совокупность правил преобразования
исходных данных в результат. Основными свойствами
алгоритма являются: детерминированность, результативность, массовость, дискретность.
Существует
несколько способов записи алгоритмов: словесный, формульно-словесный,
графический, язык операторных схем, алгоритмический язык.
Наибольшее
распространение благодаря своей наглядности получил графический способ записи
алгоритмов посредством блок-схем.
Перечень символов, их наименование, отображаемые ими функции, форма и размеры
определяются ГОСТами. Представление
алгоритма программы в виде блок-схемы имеет два недостатка: предполагает
слишком низкий уровень детализации, что часто скрывает суть сложных алгоритмов
и позволяет использовать неструктурные
способы передачи управления (goto), причем часто на схеме алгоритма они выглядят проще, чем
эквивалентные структурные.
Кроме схем,
для описания алгоритмов можно использовать псевдокоды,
Flow-формы и диаграммы
Насси-Шнейдермана. Все перечисленные способы, с одной стороны, базируются
на тех же основных структурах, а с другой стороны, допускают разные уровни
детализации.
Каждый символ
Flow-формы
соответствует управляющей структуре и изображается в виде прямоугольника. Для
демонстрации вложенности структур символ Flow-формы вписывается в соответствующую
область прямоугольника любого другого символа. Символы Flow-форм, соответствующие основным и
дополнительным управляющим конструкциям, приведены на рисунке А1.
Основное отличие
диаграмм Насси-Шнейдермана от Flow-форм заключается в том, что область
обозначения условий и вариантов ветвления изображают в виде треугольников
(рисунок А2). Такое обозначение обеспечивает большую наглядность представления
алгоритма.
Общим
недостатком Flow-форм
и диаграмм Насси-Шнейдермана является сложность построения изображений
символов, что усложняет практическое применение этих нотаций для описания
больших алгоритмов.
В отличие от
блок-схем псевдокоды не ограничивают степень детализации операций, но, не
являясь графическими, хуже отображают их вложенность.
Описать
неструктурный алгоритм с помощью псевдокодов, Flow-форм и
диаграмм Насси-Шнейдермана
невозможно, т. к. для неструктурной передачи управления в них отсутствуют
условные обозначения. Их использование изначально ориентирует проектировщика
только на структурные способы передачи управления, а потому требует
тщательного анализа алгоритма.
При всем
многообразии алгоритмов решения задач в них можно выделить три основных вида
вычислительных процессов: линейный, разветвленный и циклический, для реализации которых в программах используют
соответствующие базовые управляющие конструкции: следование, ветвление, цикл-пока.
Помимо
базовых, процедурные языки программирования высокого уровня используют еще три
конструкции (структуры), которые легко реализуются через базовые: выбор,
цикл-до, цикл
с заданным числом повторений.
Перечисленные
шесть конструкций были положены в основу структурного
программирования. Слово «структурное» в названии подчеркивает тот факт, что
при программировании использованы только перечисленные конструкции. Отсюда и
понятие «программирование без go to». Программы, написанные с использованием только
структурных операторов передачи управления, называют структурными, чтобы подчеркнуть их отличие от программ,
при реализации которых использовались низкоуровневые способы передачи
управления.
Разработанный
алгоритм реализуется в виде программных кодов (программы) на одном из языков программирования. Существующие
языки программирования можно разделить на следующие группы:
- универсальные языки высокого уровня;
- специализированные языки разработчика программного обеспечения;
- специализированные языки пользователя;
- языки низкого уровня.
В группе
универсальных языков высокого уровня в настоящий момент безусловным лидером
являются языки С и C++, различные версии которых имеют
целый ряд существенных достоинств: многоплатформенность; наличие операторов,
реализующих основные алгоритмические структуры; возможность программирования
на низком (системном) уровне с использованием адресов оперативной памяти;
огромные библиотеки подпрограмм и классов.
Поэтому эти языки являются основными для создания
операционных систем. Альтернативой С
и C++ в этой группе языков является Pascal, компиляторы которого в силу четкого синтаксиса обнаруживают
помимо синтаксических и большое количество семантических ошибок. Версия Object Pascal, используемая в среде Delphi,
сопровождается профессиональными библиотеками классов, упрощающими ведение
больших разработок, в том числе и требующих использования баз данных, что делает
Delphi достаточно эффективной средой для
создания приложений MS Windows. Кроме этих
языков, к группе универсальных принадлежат также Basic, Modula, Ada и некоторые другие, каждый из которых
имеет свои особенности и соответственно свою область применения.
Специализированные
языки разработчика используются при создании специального программного
обеспечения: языки баз данных (SQL), языки создания сетевых приложений (HTML, XML), языки создания систем искусственного
интеллекта и т. д. Эти языки изучаются в специальных курсах.
Специализированные
языки пользователя обычно являются частью профессиональных сред пользователя,
характеризуются узкой направленностью и разработчиками программного обеспечения
не используются (1C:Бухгалтерия).
Языки низкого
уровня (Assembler) позволяют осуществлять программирование
на уровне машинных команд. При этом получают оптимальные программы как с точки
зрения времени выполнения, так и с точки зрения объема необходимой памяти. Но
эти языки совершенно не пригодны для создания больших программ и тем более
программных систем. Языки низкого уровня не поддерживают принципов структурного
программирования. В настоящее время языки типа Ассемблера обычно используют при
написании сравнительно простых программ, взаимодействующих непосредственно с
техническими средствами (например, драйверов);
в виде вставок в программы на языках высокого уровня (например, для
ускорения преобразования данных в циклах с большим количеством повторений).
Рост сложности и размеров разрабатываемого программного обеспечения, а
также стремление
разграничить доступ к глобальным данным программы, чтобы уменьшить количество
ошибок, дали толчок к развитию технологии
модульного программирования. Эту технологию поддерживают современные
версии языков Pascal и С (C++), языки
Ада и Modula. Использование
модульного программирования существенно упростило разработку программного обеспечения
несколькими программистами. Модули без
изменений можно было использовать в других разработках, что повысило
производительность труда программистов.
Практика показала, что структурный подход в сочетании с модульным
программированием позволяет получать достаточно надежные программы, размер
которых не превышает 100000 операторов.
Недостатком модульного программирования является то, что ошибка в
интерфейсе при вызове подпрограммы выявляется только при выполнении программы. При увеличении
размера программы обычно возрастает сложность межмодульных интерфейсов, и с
некоторого момента предусмотреть взаимовлияние отдельных частей программы становится
практически невозможно.
Для разработки программного обеспечения большого объема было предложено использовать объектный подход. Объектная структура программы впервые
была использована в языке имитационного
моделирования сложных систем Simula, появившемся еще в 60-х годах XX в. Естественный для
языков моделирования способ представления программы получил развитие в другом
специализированном языке моделирования - языке Smalltalk (70-е годы XX
в.), а затем был использован в новых версиях универсальных языков
программирования, таких, как Pascal, C++, Modula, Java.
Основным достоинством объектно-ориентированного
программирования по сравнению с модульным программированием является
«более естественная» декомпозиция программного обеспечения, которая
существенно облегчает его разработку. Кроме этого, объектный подход предлагает
новые способы организации программ, основанные на механизмах инкапсуляции, наследования и полиморфизма. Эти механизмы
позволяют конструировать сложные объекты из сравнительно простых объектов. В
результате существенно увеличивается показатель повторного использования кодов и
появляется возможность создания библиотек классов для различных применений.
Бурное развитие технологий программирования, основанных на объектном подходе,
позволило решить многие проблемы. В результате были созданы среды, поддерживающие визуальное
программирование, например, Delphi, C++ Builder, Visual C++ и т. д. При использовании визуальной среды у программиста
появляется возможность проектировать некоторую часть (например, интерфейсы
будущей программы) с применением визуальных средств добавления и настройки
специальных библиотечных компонентов. Результатом визуального
проектирования является заготовка будущей программы, в которую уже внесены соответствующие коды.
Дополнительную информацию по теме можно получить в [2, 27-43].
Приложение А
Рисунок А1 - Условные обозначения Flow-форм для основных конструкций:
а - следование; б -
ветвление; в - выбор; г - цикл-пока;
д - цикл-до; е - счетный цикл
Рисунок А2 - Условные обозначения диаграмм Насси-Шнейдермана для основных конструкций:
а - следование; б -
ветвление; в - выбор; г - цикл-пока;
д - цикл-до
Список литературы
1. Информатика. Базовый курс.: Учебное
пособие для вузов под ред. Симоновича С.В. – СПб.: Питер, 2003.
2. Симонович С.В. и др. Специальная
информатика: Учебное пособие. - М.: АСТ-Пресс, 2000.
3. Попов В.Б. Основы информационных и
телекоммуникационных технологий. Программные средства информационных
технологий. – М.: Финансы и статистика, 2005.
4.
Инчин А.С. Работа на персональном компьютере. В 2-х частях. - Алматы, 2003.
5. Информатика/ Н.В. Макарова, Л.А. Матвеев,
В.Л. Бройдо и др. Под ред. Н.В. Макаровой. - 3-е перераб. изд. - М., 2003.
6.
Ломакин П. Иллюстрированная энциклопедия компьютерного «железа». – М.: Майор,
2002.
7. Таненбаум Э. Архитектура компьютера. –
СПб.: Питер, 2006.
8. Ватаманюк А. Железо ПК. - СПб.: Питер,
2005.
9. Балакаева Г. Операционные системы. –
Алматы: Print-S, 2004.
10. Симмонс К. Windows XP:
Самоучитель. – М.: ДМК, 2002.
11. Бондаренко С. Microsoft Office
2003 в теории и на практике. - М.: ООО Новое знание, 2004.
12. Мюррей Катрин. Microsoft Office 2003. Новые горизонты. - М.: Питер, 2004.
13. Безручко В.Т. Практикум по курсу
«Информатика». Работа в Windows, Word, Excel. - М.:
Финансы и статистика, 2003.
14. Новиков Г.А. и др. Работа с текстовым
процессором MS Word. – М.: Горячая линия – Телеком, 2005.
15. Маликова Л.В., Пылькин А.Н.
Практический курс по электронным таблицам MS Excel. – М.: Горячая линия – Телеком, 2004.
16. Гасов В.М. Методы и средства
подготовки электронных изданий. – М.: МГУП, 2001.
17. Джексон П. Введение в экспертные
системы.- СПб.: Вильямс, 2001.
18. Андрейчиков А.В. Интеллектуальные
информационные системы. – М.: Финансы и статистика, 2004.
19. Новиков Ю., Новиков Д. и другие.
Компьютеры, сети, Интернет. – СПб.: Питер, 2002.
20. Таненбаум Э. Компьютерные сети. -
СПб.: Питер, 2005.
21. Гаевский А. Основы работы в Интернете:
Самоучитель. - СПб.: БХВ - Петербург, 2003.
22. Иванов В. Интернет для начинающих. -
СПб.: Питер, 2005.
23. Романец Ю.В. и др. Защита информации в
компьютерных системах и сетях. – М., 2001.
24. Битеев Ш., Горковенко Е. и др. Защита информации
и информационная безопасность. – Алматы: Асем-Систем, 2005.
25. Козлов Д.А. и др. Энциклопедия
компьютерных вирусов. – М.: Солон-Р, 2001.
26. Попов В.Б. Основы информационных и
телекоммуникационных технологий. Основы информационной безопасности. – М.:
Финансы и статистика, 2005.
27. ГОСТ 19.701-90. ЕСПД. Схемы алгоритмов
и программ. Обозначения условные, графические. – М.: Издательство стандартов,
1990.
28.
Иванова Г.С. Технологии программирования. - М.: Изд-во МГТУ им. Баумана, 2005.
29. Аляев Ю.А., Козлов О.А. Алгоритмизация
и языки программирования Pascal, C++, Visual
Basic: Учебно-справочное пособие. – М.: Финансы и
статистика, 2004.
30. Культин Н.Б. С/С++ в задачах и примерах.
– СПб.: БХВ - Петербург, 2004.
31. Архангельский А.Я. Язык Pascal и основы программирования в Delphi.– М.: Бином-Пресс, 2004.
32. Архангельский А.Я. C++ Builder 6.
Справочное пособие. Книга 1. Язык С++. – М.: Бином-Пресс, 2002.
33. Мастекбаева Г.А., Сябина Н.В. Информатика. Язык Turbo Pascal. Часть 3. Методические указания
к выполнению лабораторных работ (для студентов всех специальностей). – Алматы:
АИЭС, 2005.
34. Сябина Н.В., Ешпанова М.Д. Информатика. Методические указания к
выполнению расчетно-графических работ (для студентов всех специальностей). –
Алматы: АИЭС, 2006.
35. Ваулина Е.Ю., Рычков В.Н. Термины современной информатики:
программирование, вычислительная техника, Интернет: Англо-русский,
русско-английский словарь. Более 60 000 слов, устойчивых словосочетаний и
сокращений. – М.: ЭКСМО, 2004.
36. Воройский Ф.С. Информатика. Новый систематизированный толковый словарь
– справочник. Вводный курс по информатике и вычислительной технике в терминах.
– М.: Либерея, 2001.
37. Веретенникова Е.Г. и др. Тесты по информатике. – М.: МарТ, 2003.
38. Масловский Е.К. Англо-русский словарь по вычислительным системам и
информационным технологиям: Около 55 000 терминов. – М.: РУССО, 2003.
39. Фридланд А.Я. и др. Информатика и компьютерные технологии: Основные
термины. Толковый словарь. – М.: Астрель; АСТ, 2003.
40. Толковый словарь сетевых терминов и аббревиатур. – М.: Вильямс, 2002.
41. http://www.rntb.nets.kz – сайт Республиканской научно-технической библиотеки
(РНТБ).
42. http://www.gpntb.ru – сайт
Государственной публичной научно-технической библиотеки России.
43. http://www.stratum.pstu.ac.ru/study/library –
виртуальная библиотека ПГТУ.
Сводный план
Лида Куандыковна
Ибраева
Наталья
Валерьевна Сябина
Лариса
Николаевна Рудакова
ИНФОРМАТИКА
Конспект лекций
(для студентов всех форм обучения и всех специальностей)
Редактор
Сыздыкова Ж.М.
Подписано
в печать __. __. __. Формат 60х84 1/ 16
Тираж 50 экз. Бумага
типографская №1
Объем
2,5 уч.-изд. л. Заказ
_____. Цена тг.
Копировально-множительное
бюро
Алматинского института энергетики и связи
050013, Алматы,
Байтурсынова, 126