редмет
: Информатика.
Преподаватель
: Киселёв Владимир Геннадиевич.
среда, 8 сентября 2004 г
.
Информатика
– это дисциплина, изучающая структуру и общие свойства информации, закономерности создания, преобразования, передачи и использования информации.
Происходит от лат. «Informatio» - разъяснение, осведомление, изложение.
Информация – это сведения об окружающем мире, которые снижают степень неопределённости знания о нём.
Информация представляется в виде сообщений.
Сообщение – передача информации в виде рисунков, текста, чертежей, звука, цвета, энергетических и нервных импульсов и т.д.
Термин «информация» следует отличать от термина «данные». Данные тоже представляются в виде сообщений.
Данные – только хранятся, но не используются. Данные превращаются в информацию если они снижают степень неопределённости знаний о чём либо, т.е. приносят пользу и имеют смысл.
Пример:
Напишем 10 шестизначных чисел и дадим товарищу. Для него это – данные. Теперь скажем ему, что это 10 телефонов фирм, где есть приличная работа. Тогда это станет информацией.
Снижение неопределённости знаний это первое свойство информации.
Информация всегда предполагает наличие источника и получателя. Это второе свойство информации.
Пути и процессы, которые обеспечивают передачу сообщений от источника к получателю, называются информационными коммуникациями.
В сфере обработки информации произошло несколько информационных революций.
Первая вызвана изобретением письменности, которая позволяет передавать информацию от поколения к поколению (примерно 3 тыс. лет до н.э.).
Вторая связана с изобретением книгопечатанья, которое позволяет многократно дублировать информацию (XVI век)
Третья обусловлена изобретением электрической передачи (телефон, телеграф, радио), которая позволяет мгновенно передавать информацию на большие расстояния (конец XIX века).
Четвёртая связана с созданием компьютеров, которые позволяют хранить большие объёмы информации и быстро их обрабатывать.
Последняя революция привела к созданию информационной индустрии, как производство технических и программных средств, информационных технологий для получения новых знаний.
Информационная технология (ИТ) – это описание, перечень этапов процесс получения информации нового качества на основе сбора, обработки и передачи данных.
В процессе развития общество проходит несколько стадий.
В индустриальном обществе более 50% трудоспособного населения занято в материальном производстве.
В постиндустриальном обществе более 50% трудоспособного населения занято в сфере услуг.
В информационном обществе более 50% трудоспособного населения занято производством, хранением, переработкой и реализацией информации.
Информационное общество существует в США, Японии и Западной Европе.
После информационного общества следует ноосферное, в котором большинство работающих будет занято интеллектуальной деятельностью, получением знаний.
Информатизация общества – организованный процесс создания оптимальных условий для удовлетворения информационных потребностей граждан и организаций на основе формирования и использования информационных ресурсов.
Информатизацию следует отличать от компьютеризации общества.
Информационные ресурсы, продукты и услуги.
Информационные ресурсы – документы и их массивы в информационных системах (библиотека, архив, фонд), т.е. документированные знания.
Информационные ресурсы являются стратегическими наряду с ресурсами материальными, природными, трудовыми, финансовыми, энергетическими.
Информационные ресурсы используются для создания информационных продуктов, как совокупностей данных, сформированных производителем с целью распространения.
Информационный продукт распространяется теми же способами, что и материальный, в частности с помощью услуг. Юридической основой информационной услуги должен быть договор между поставщиком и получателем.
Информационный рынок
– это система экономических, правовых и организационных отношений по торговле продуктами интеллектуального труда.
В отличии от торговли материальным продуктом здесь в качестве предмета обмена выступают информационные технологии и системы, (лицензии, патенты, товарные знаки, ноу-хау, инженерно-технические услуги, сведения и т.д.).
Для информационного продукта важной, отличительной особенностью является лёгкость его копирования, в связи с этим к нему применяется авторское право.
Информационный продукт на рынке рассматривается в двух аспектах.
- Как материальный продукт.
- Как интеллектуальный продукт.
Инфраструктура информационного рынка делится на 3 части:
- Техническая (аппаратная).
- Программная.
- Коммуникационная.
Термин «информатика» возник во Франции в 60-х годах XX века. Он образован от двух слов: информация и автоматика.
В англоязычных странах термину информатика соответствует термин «computer science».
среда, 15 сентября 2004 г.
Предметом информатики является разработка методов и средств, преобразование информации и разработка информационных технологий.
Задачи информатики:
- Исследование информационных процессов.
- Разработка информационной техники и технологий.
- решение информационных задач в общественной жизни.
Информатику в узком смысле можно разделить на три части:
- Технические средства (Hardware)
- Информационные (промышленные) средства (Software)
- Алгоритмические средства (Brainware)
В свою очередь информатика в целом и каждая её часть рассматривается с трёх позиций:
- Фундаментальная наука.
- Отрасль народного хозяйства.
- Прикладная дисциплина.
Структура информатики показана на рис.1.1.
Экономическая информация – это совокупность сведений о процессах производства, распределения и потребления материальных благ.
Управление экономическими объектами всегда связано с преобразованием экономической информации, для которой характерны следующие особенности:
1. Объёмность.
2. Относительно простая обработка.
3. Цикличность.
4. представление в виде текста и чисел.
Важной характеристикой информации является её адекватность.
Адекватность информации – степень соответствия информации реальному объекту окружающего мира.
Различается три вида и три меры адекватности:
- Синтаксическая (структурная)
- Семантическая (смысловая)
- Прагматическая (пользы)
Синтаксическая адекватность отражает формальные, структурные характеристики информации без связи с её смыслом и пользой.
Синтаксическая информация = данные.
Семантическая адекватность отражает смысловое содержание и обобщение информации.
Прагматическая адекватность отражает степень соответствия информации объекту. Она служит основой для принятия решений.
Единицы измерения и примеры трёх видов адекватности показаны в таблице 2.1.
Мера адекватности
|
Единица измерения
|
Примеры
|
1. Синтаксическая
a. Кибернетика
b. Информатика
|
a. Степень уменьшения неопределённости.
b. Единицы представления информации
|
a. Вероятность события
b. бит, байт …
|
2. Семантическая
|
Совокупность сведений пользователя или системы (тезаурус)
экономические показатели
|
База данных, пакет программ
Рентабельность, затраты, производительность
|
3. Программная
|
Ценность использования
|
Прибыль, скорость обработки.
|
Под информационным объектом понимается любой предмет, процесс, явление, событие окружающего мира, отражённое в информации пользователя.
Реквизит – логически неделимый признак, который описывает одно свойство объекта. Реквизит = атрибут, характеристика.
Различают реквизиты-признаки и реквизиты-основания.
Реквизиты-признаки характеризуют качественные свойства объекта (наименование товара, фамилия, вид операции).
Реквизиты-основания характеризуют количественные свойства (сумма, итог, стоимость).
Классификация – система распределения информационных объектов по группам.
При классификации некоторые реквизиты выбираются как признаки классификации (признаки деления).
Различают три системы классификации:
1. Иерархическая.
2. Фасетная.
3. Дескрипторная.
При иерархической классификации признаки деления упорядочиваются по важности, тогда объекты группируются в классы 1,2,3… уровней.
При фасетной классификации признаки деления не упорядочиваются по важности. Совокупность значений первого признака – фасет.
При дескрипторной классификации выделяется совокупность ключевых слов, дескрипторов.
Три вида связи между дескрипторами:
- Синонимические
- Родовидовые, отражающие иерархию слов.
- Ассоциативные, отражающие общие свойства.
Кодированием называется замена значения признака на условный код.
Кодирование используется для двух целей:
- Сокращение объёма информации.
- Сокрытие информации.
Различают классификационное и регистрационное кодирование.
При классификационном заменяется значение признаков деления, при регистрационном объекты нумеруются.
Управленческая информация может быть описана по пяти признакам:
- Место возникновения.
- Стабильность.
- Стадия обработки.
- Способ отображения
- Функция управления.
(Рис.2.2.)
среда, 29 сентября 2004 г.
Место возникновения: входная
– поступающая в фирму, выходная
– поступающая из фирмы, внутренняя
– возникающая внутри фирмы, внешняя
– поступающая в фирму.
Стабильность: переменная
– отражает фактические показатели хозяйственной деятельности, постоянная
– включает справочную, нормативную и плановую информацию.
Стадия обработки: первичная
– возникает на начальной стадии, вторичная
– получается после обработки, промежуточная
– используется для дальнейшей обработки, результатная
– для отчётов и выработки решений.
Функция управления: учётная – информация о параметрах объекта, за прошлый период (бухгалтерский учёт, статистика, материальный учёт), оперативная – информация о параметрах в текущий момент времени, плановая – информация о параметрах объекта на будущий период (план производства, ожидаемый спрос), справочная – почти не меняется со временем.
Система – это совокупность разнородных элементов, предназначенная для достижения единой цели.
Цель – это критерий, для которого достигается наилучшее его значение.
Понятие «наилучшего» эквивалентно понятиям «наибольшего» или «наименьшего», поэтому для цели всегда можно найти количественную оценку, например целью экономического объекта является максимум прибыли.
От цели нужно отличать понятие «функции».
Функция предполагает достижение заданного значения или диапазона, функция может не выражаться числом.
Например: «станок работает» - это функция; «станок работает с максимальной производительностью» - это цель.
Признаками системы являются следующие:
1. Элементы системы взаимосвязаны и взаимодействуют друг с другом и с окружающей средой.
2. Каждый элемент системы может рассматриваться как самостоятельная система. В этом случае функция элемента превращается в цель системы.
3. Система, как целое выполняет определённую задачу, которая не может быть сведена к сумме функций её элементов.
4. Элементы при взаимодействии могут изменять своё содержание и внутреннее строение.
Цель ЭИС – эффективный сбор, хранение, обработка и выдача экономической информации.
Одна ЭИС отличается от другой по виду экономической информации.
Примером ЭИС служит бухгалтерия предприятия. Она состоит из разнородных элементов: персонала, помещений, компьютеров, правил и инструкций.
Подсистема – это часть системы, выделенная по какому-то признаку.
Подсистемы ИС, (в том числе и ЭИС) называются «обеспечениями».
ИС состоит из следующих обеспечений:
- Информационное обеспечение.
- Техническое.
- Программное.
- Математическое.
- Правовое.
- Организационное.
- Лингвистическое.
Информационное – система классификации и кодирования информации (система документации, схема информационных потоков, методология построения, организация хранения).
Техническое – комплекс аппаратуры, инструктивные материалы, обслуживающий персонал.
Программное – совокупность программных средств по управлению техникой и персоналом. Делится на: общесистемное и прикладное ПО.
Математическое – набор математических методов, моделей и алгоритмов, используемых в ЭИС.
Правовое – совокупность правовых норм, которые определяют создание, юридический статус и функционирование ЭИС, и регламентирует порядок получения, преобразования и использования информации.
Организационное – комплекс методов и средств, которые определяют взаимодействие работников с техникой и между собой в процессе эксплуатации ЭИС.
Лингвистическое – система языковых средств, которые используются для модификации и эксплуатации ЭИС, а также правил взаимодействия между техникой и персоналом (диалоговый интерфейс).
Нужно отметить, что границы между обеспечениями определены не жёстко. Некоторые элементы ЭИС можно относить к разным подсистемам.
Например: алгоритмы можно относить не к математическому, а к программному обеспечению. Должностные инструкции можно относить не к правовому, а к информационному или организационному обеспечению.
В соответствии с используемой для создания и передачи информации технической базой в развитии ЭИС и ЭИТ насчитывается пять этапов:
1. До середины XIX в. Ручная информационная технология.
Перо и бумага.
Почта и курьеры.
2. До начала XX в. Механическая технология.
Пишущая машинка.
Телеграф.
3. До 60х годов XX в. Электрическая технология.
Большие ламповые ЭВМ.
Телефоны и факсы.
4. До 80х годов XX в. Электронные технологии.
Транзисторные ЭВМ.
Автоматизированные системы управления.
5. С 80х годов XX в. Компьютерные технологии.
Персональный компьютер, периферия.
Компьютерные сети.
По решаемым задачам ЭИТ делится на следующие виды:
- Обработка данных
- Управление
- Принятие решений
- Экспертные системы
- Автоматизация офиса
– это технология применяется для хорошо структурированных данных и стабильных алгоритмов обработки. Она применяется на уровне операционной и бухгалтерской деятельности, управления персонала низшего звена.
Особенности технологии обработки данных:
- Законодательством фирме предписано хранить информацию о своей хозяйственной деятельности.
- Хорошо структурированные данные.
- Стандартные процедуры обработки данных.
- Стабильность структур данных и алгоритмов.
- Основной объём работ выполняется в автоматическом режиме.
- Изолированность от других служб.
- Акцент на хронологию событий.
среда, 6 октября 2004 г.
Основные компоненты ЭИТ обработки данных показаны на рисунке 3.1.
Для обработки данных используются следующие стандартные операции:
1. Фильтр – выборка данных по какому-либо логическому условию. Например выборка сотрудников у которых зарплата выше средней.
2. Сортировка – упорядочение данных по возрастанию какого-либо критерия. Например выдача списка сотрудников по алфавиту.
3. Группировка – объединение данных в группы по значениям какого-либо критерия. Например группировка списка сотрудников по подразделениям.
4. Обобщение – получение суммирующих, итоговых данных по группе. Например получение «ИТОГО» по ведомостям зарплаты.
5. Вычисление – получение новых данных с помощью формул и алгоритмов.
С точки зрения кибернетики любой процесс управления сводится к взаимодействию управляемого объекта и системы управления. рис. 3.2.
Кибернетика – наука об управлении.
Система управления получает информацию о состоянии управляемого объекта, соотносит её с критерием управления, и вырабатывает управляющее воздействие.
Управляемым объектом например может быть : станок, цех, коллектив; критерием управления может быть план производства.
Управляющее воздействие – прямая связь, а состояние управляемого объекта – обратная связь.
Реализация прямой и обратной связи составляет основное содержание управленческих служб.
В основном используется технология, основанная на принципе отклонения, который заключается в выполнении четырёх этапов.
1. Планирование будущих характеристик работы.
2. Сбор и обработка данных.
3. Выявление отклонений плана и факта.
4. Принятие решений и выработка действий.
Для сокращения объёмов анализируемой информации применяется её обобщение (агрегирование). Обобщенные данные представляются в виде отчётов:
1. Суммирующих, где приведены итоги по группам данных.
2. Сравнительных, где приведены однородные данные, но из разных источников.
3. Чрезвычайных, где приведены ненормальные показатели.
Схема технологии управления – рис.3.3.
|
Информация из системы обработки данных
|
|
|
Модель – упрощенное, формальное описание реального объекта.
Главной особенностью технологии поддержки принятия решений, является замена реального объекта управления его моделью.
Другие особенности данной технологии:
- Ориентация на решение плохо формализованных задач.
- Использование математических методов и моделей.
- Диалоговое взаимодействие компьютера и человека.
- Частая координация возможных решений.
Схема технологии показана на рис. 3.4.
Модель имеет неизменную часть (закон модели) и переменную часть (параметры), которые изменяются в зависимости от поступающих данных.
Модели в данной технологии подразделяются на:
- Оперативные.
- Тактические.
- Стратегические.
Оперативные модели используются низшим звеном для планирования на дни и недели. Они например включают в себя календарное производственное планирование, ведение кредитных расчетов, оперативные модели обычно хорошо формализованы и применяются часто.
Тактические модели используются для планирования на месяцы. Они включают в себя, например финансовое планирование, схема компоновки предприятия, распределение ресурсов, труда и фондов.
Стратегические модели имеют горизонт планирования – годы. Используются высшим звеном управления, например, для установления цели предприятия, определения будущих ресурсов, прогноза поведения конкурентов.
+Экспертные системы трансформируют опыт экспертов в какой-то области знаний в форму эвристических (опытных) правил.
Правило состоит из двух частей: условие и действие, и записывается в следующей форме: «Если Условие то Действие».
Отличие от технологии принятия решений состоит в следующем:
- Технология принятия решений опирается на знания пользователя. Экспертная система опирается на знания, которые пользователю могут быть не известны.
- Экспертная система может пояснять свои решения.
- Использован7ие нового вида информации – знаний.
Основными компонентами экспертных систем являются:
· База знаний
· Интерпретатор
· Модуль создания системы
Рис. 3.5.
База знаний содержит факты окружающего мира и логическую связь фактов в форме правил.
Интерпретатор обрабатывает знания, правила и команды.
Модуль создания системы служит для построения иерархии правил.
среда, 13 октября 2004 г.
Компоненты автоматизации офиса:
- Компьютерные средства: текстовый и табличный процессоры, электронная почта, электронная конференция.
- Не компьютерные средства: ксерокс, факс.
Автоматизация офиса не заменяет существующей системы управления и делопроизводства, а дополняет и ускоряет её.
ЭВМ – это комплекс технологических средств, предназначенных для автоматической обработки данных.
ЭВМ = computer = вычислитель.
Первоначально эти устройства предназначались для операций над числами, в настоящее время ЭВМ в основном используются для операций над текстом, логикой и графикой.
- Принцип действия.
- Этапы развития.
- Назначение.
- Функциональные возможности.
По принципу действия ЭВМ делятся на три класса:
- Цифровые (ЦВМ)
- Аналоговые (АВМ)
- Гибридные (ГВМ)
Критерием деления является форма представления информации. При аналоговой форме значение характеристики во времени представлено величиной электрического напряжения U (рис. 4.1.а). При цифровой форме значение характеристики кодируется последовательностью импульсов в моменты тактовой частоты. (рис. 4.1.б).
U U
значение АВМ отличаются высокой скоростью и низкой ценой, неустойчивой работой и низкой точностью. При изменении напряжения значение характеристики в АВМ будет иеняться.
В ЦВМ падение напряжения слабо влияет на код характеристики.
Основы построения ЦВМ были заложены в 1946 г. фон Нейманом.
Принципы фон Неймана:
- Вся информация представляется в двоичной форме.
- Программа хранится в памяти компьютера, и может быть туда записана.
- программы могут обрабатываться также как числа.
- Иерархическая организация памяти.
- Арифметическое устройство конструируется на основе схемы сложения.
- Параллельная обработка нескольких разрядов двоичной информации.
- Иерархическая система машинных действий от базисных команд до составных процедур.
В настоящее время АВМ почти не используются.
Цифровая форма хранения информации сейчас используется в цифровых фотоаппаратах, телевизорах и видеокамерах.
Цифровой принцип ещё называют импульсным, а аналоговый – непрерывным.
Этапы создания ЭВМ связаны с изменением элементной базы, которое в свою очередь сопровождалось уменьшением её размеров, и как следствие – увеличение быстродействия и снижения цены.
По этапам создания ЭВМ делятся на шесть поколений:
- 50-е годы XX в. Электронные вакуумные лампы.
- 60-е годы. Полупроводниковые транзисторы.
- 70-е годы. Полупроводниковые интегральные схемы (1000 транзисторов на схему)
- 80-е годы. Большие интегральные схемы (1000000 транзисторов на схему)
- 90-е годы. Многопроцессорные ЭВМ, обрабатывающие параллельно несколько потоков информации.
- Оптоэлектронные ЭВМ. (ещё не существуют, но разрабатываются)
В настоящее время используются [4] и [5].
По назначению ЭВМ делятся на три группы:
- Универсальные.
- Проблемно-ориентированные.
- Специализированные.
[1] предназначены для решения широкого круга задач: экономических, инженерных, математических.
[2] решают задачи по управлению техническими объектами (сборочные конвейеры, автомобили, ракеты, самолёты, станки с числовым программным управлением)
[3] решают строго-определённые задачи (калькуляторы, записные книжки)
По функциональным возможностям ЭВМ делятся на:
- Сверхбольшие.
- Большие
- Малые
- Мини ЭВМ
- Сверхмалые (Микро ЭВМ)
Функциональные возможности ЭВМ определяются следующими техническими характеристиками:
- Быстродействие, измеряемая усреднённым числом миллионов операций за секунду (MIPS).
- Разрядность обрабатываемых чисел.
- Ёмкость и быстродействие основной памяти (Mb/sec.)
- Ёмкость и скорость доступа к внешним запоминающим устройствам.
- Пропускная способность узлов ЭВМ и устройств сопряжения.
Супер-ЭВМ обладает большой памятью и характеризуется большим числом параллельно-работающих процессоров (до 100 штук), они используются для управления большими распределёнными компьютерными сетями и для сложных научных расчётов.
Большие ЭВМ исторически появились первыми. Их элементная база прошла путь от электронных ламп до больших интегральных схем. Большие ЭВМ используются для решения научно-технических задач, для работы с большими базами данных, для управления компьютерными сетями.
В семидесятых годах XX века появились мини-ЭВМ.
Мини-ЭВМ содержат только 1 процессор.
Достоинства мини-ЭВМ: модульная архитектура, которая позволяла легко наращивать мощность ЭВМ и подключать дополнительные устройства; высокое отношение производительность/цена; повышенная точность вычислений.
Основные сферы применения ЭВМ:
- управление технологическими процессами.
- Автоматизированное проектирование.
- Моделирование объектов.
- Научные расчёты.
В настоящее время мини ЭВМ не используются. Их достоинства и сферы применения перешли к микро ЭВМ.
Микро ЭВМ – это ЭВМ на базе микропроцессора. Имеется два направления использования микро ЭВМ:
- Управление техническими объектами и процессами.
- Персональные компьютеры.
Персональный компьютер (ПВМ) – это ЭВМ на базе микропроцессора, которое предоставляет в единичное пользование все свои вычислительные ресурсы.
В 1969г. Японская фирма заказала у фирмы Intel 12 логических схем. Инженеры Intel вместо 12 схем создали одну. Эта схема решала все 12 задач, более того в ней была предусмотрена программа изменения её функций. Таким образом, эта схема могла в зависимости от программы выполнять неограниченное число функций. Эта схема была названа – микропроцессором.
Процессор – это устройство, которое способно принимать и выполнять программу.
На базе микропроцессора фирмы Intel был создан комплект ALTAIR, он был снабжен разъемами, к которым должны были подключаться внешние устройства.
ПК впервые был создан в 1976г. двумя студентами Гарвардского университета.
В 1981г. фирма IBM наконец-то вышла на рынок персональных компьютеров.
Группе разработчиков разрешили использовать разработки других фирм.
Был принят принцип открытой архитектуры, который заключался в том, что принимаются стандарты на правила приёма и передачи информации, а также стандарты на электрические разъемы, а разработку внешних устройств поручить другим фирмам.
ПК задумывался как устройство универсальное и общедоступное. Поэтому ПК обладает следующими особенностями:
· малый размер
· малая цена (100 – 10000)
· высокая надёжность (5000 часов беспрерывной работы)
· индивидуальное взаимодействие с компьютером без посредников
· программная совместимость с миллионами других персональных компьютеров
· гибкость архитектуры, позволяющая создавать конфигурацию под нужные требования
· возможность эксплуатации без особых требований к окружающей среде
· способность объединяться в компьютерные сети.
Кроме семейства IBM PC существует семейство DEC, представителями которого являются ПК «макинтау». По конструктивным особенностям ПК делятся на стационарные (настольные) и переносные. Переносные делятся на:
· портативные (Nomadic)
· наколенные (Laptop)
· блокноты (Notebook)
· наладонные (Palmtop)
· записные книжки (Organizer)
Дадим представление о структуре и функциях аппаратной части ПК
Довольно долго при создании компьютеров для управления устройствами использовался принцип «звезды», в котором все устройства подключались к устройству управления (У.У.) и У.У. координировало их работу.
Для создания ПК использовался принцип «общей шины», в которой все устройства, в том числе и устройство управления, подключились к одному устройству – общей шине.
Общая шина содержит стандартные разъемы (слоты), соединительные провода и схему управления. Схема управления может самостоятельно обрабатывать многие сигналы, снимая при этом часть нагрузки с устройства управления и ускоряя работу компьютера в целом. Структура ПК показана на рисунке:
НЖМД – накопитель на жестком магнитном диске; жесткий диск; винчестер.
Адаптер – устройство, преобразующее сигналы другого устройства в сигналы системной шины и наоборот.
НГМД – накопитель на гибких магнитных дисках, флоппи дисковод.
Таймер (часы)
Микропроцессор – это центральное устройство ПК предназначенное для управления всеми другими устройствами. В состав микропроцессора входят:
- устройство управления (У.У.)
- арифметико-логическое устройство (АЛУ)
- микропроцессорная память
- сопроцессор
- интерфейсная система
Устройство управления (У.У.) формируют и подают во все блоки компьютера, в другие части микропроцессора в нужные моменты времени сигналы управления.
АЛУ выполняет все арифметические и логические операции над целыми числами и символами.
Микропроцессорная память служит для кратковременного хранения информации при выполнении одной или нескольких машинных команд. Скорость доступа к ней в десятки раз выше, чем к основной памяти (кэш память [«кэш» – с франц. – клад, тайник]).
Сопроцессор выполняет арифметические операции над числами с плавающей точкой.
Интерфейсная система реализует сопряжение с другими устройствами. Она включает в себя:
- сопряжение частей микропроцессора
- буферное запоминающее устройство (регистры)
- схемы управления портами ввода/вывода
- схемы управления системной шиной
Координация работы частей микропроцессора и скорость работы задается генератором тактовых импульсов. Сейчас созданы генераторы, которые выдают 3,5 млрд. импульсов в секунду.
Системная (общая) шина включает в себя:
- шину данных, передающую содержание информации
- шину адреса, передающую адреса основной памяти и портов
- шину команд, передающую сигналы управления
- шину питания
Системная шина управляется микропроцессором и схемой управления шиной.
Большинство внешних устройств подключается к системной шине с помощью своих схем управления – адаптеров, контролёров. Важно отметить, что биты данных адреса и команды передаются по шине параллельно по нескольким проводам по 8, 16, 32, 64 бита за один такт. Это повышает скорость передачи.
Разрядность шины – это количество параллельно, одновременно передаваемых сигналов за один такт.
Основная память служит для хранения и обмена информации между устройствами.
Основная память состоит из постоянно запоминающего устройства (ПЗУ) и оперативно запоминающего устройства (ОЗУ).
ПЗУ служит для хранения неизменной информации. Информация в ПЗУ сохраняется при выключении компьютера. Изменение информации в ПЗУ сильно затруднено. Имеет малый объём.
ОЗУ предназначено для хранения изменяемой во время работы компьютера информации. Информация в ОЗУ исчезает при выключении компьютера. По сравнению с ПЗУ имеет большой объём.
Для ПК выпускается 3 вида клавиатуры: 84-клавишная, 101 и 104-клавишная.
Клавиатура содержит процессор клавиатуры, при нажатии на клавишу процессор определяет координаты клавиши и вырабатывает код. Процессор способен определять длительность нажатия и одновременное нажатие нескольких клавиш.
среда, 27 октября 2004 г
.
Состоит из дисплея (монитора) и видеоадаптера (графическая плата, видеоплата).
Для изображения информации используется растровый принцип, т.е. изображение формируется из горизонтальных и вертикальных рядов точек. В дисплее с электронно-лучевой трубкой три электронных луча пробегают по трём множествам точек на экране, которые светятся красным, зелёным и синим цветами (RGB). От мощности луча зависит яркость свечения. Смесь трёх цветов разной интенсивности даёт палитру цветов. Например, три луча одинаковой мощности дают оттенки серого. Лучи пробегают экран 70 и более раз в секунду (частота регенерации).
В дисплее на жидких кристаллах (LSD) в каждой точке экрана расположены по три окошка, отвечающих за RGB цвета. К окошкам подходят проводники, при подаче напряжения окошки либо светятся (активная матрица), либо теряют прозрачность. Разрешающая способность видеосистемы характеризует степень детальности изображения на экране.
Первой характеристикой разрешающей способности служит количество вертикальных и горизонтальных рядов точек. Для этой характеристики имеется стандартный ряд: 640 X 480, 800 X 600, 1024 X 768, 1152 X 864, 1280 X 720, 1280 X 768, 1280 X 960, 1280 X 1024.
Отношение ширины к высоте равно 4 X 3.
Второй характеристикой служит степень градации цвета в каждом троеточии: от 2х до 16 млн. цветов.
Максимальная разрешающая способность зависит как от дисплея, так и от видеоадаптера.
В видеоадаптере находится видеопамять. Объём видеопамяти ограничивает разрешающую способность. Например, для хранения картинки (800 X 600 точек) с 256 цветами необходимо 480 Кб видеопамяти.
Функция видеоадаптера состоит в получении информации, записи её в видеопамять и регулярной посылке на дисплей содержания видеопамяти. Отдельной проблемой является отображение кинофильмов: здесь требуется большой объём данных (480 Кб на кадр) и быстрая обработка (24 кадра в секунду). Для обработки кинофильмов используется сжатие файлов и имеется 2 алгоритма:
- JPEG (хранится каждый кадр, при недостаточной обработке качество изображения улучшается)
- MPEG (хранятся различия между кадрами)
Предназначены для вывода информации на бумагу.
3 вида принтеров: матричный, струйный, лазерный.
В матричном вертикальный ряд металлических стержней двигается и ударяет по бумаге, отпечатывая ряды точек через ленту с краской.
Струйные работает также как и матричные, только вместо стержней используется распыление краски через отверстия.
Печать на лазерном принтере состоит из 4 этапов. Сначала лазерным лучом изображение наносится на барабан, затем к местам прохождения луча прилипает краска. Краска при прокатывании барабана переносится на бумагу. В конце путём нагрева краска закрепляется.
Процесс печати на матричном принтере имеет низкую цену.
Струйные принтеры дешевы сами по себе.
Лазерная печать самая качественная.
Матричные принтеры сильно шумят, печать на струйном принтере достаточно дорогая, лазерные принтеры дорого стоят.
Микропроцессор является центром ПК, он проводит всю обработку информации.
Типы микропроцессоров различаются разрядностью шин.
Разрядность – количество одновременно передаваемых сигналов. Когда говорят о разрядности микропроцессора, то имеют в виду разрядность шины данных.
Разрядность шинных команд – одинакова для всех типов микропроцессора.
Первым микропроцессором для ПК (IBM PC) была схема «8086» фирмы INTEL. У него была 16-ти разрядная внутренняя шина данных и 16-ти разрядная внешняя.
Шина адреса имела 20 разрядов, что позволяло адресовать 220
= 1024 x 1024 = 1 Мб памяти (1978 год)
Следующим был выпущен микропроцессор «8088» с 8-ми разрядной внешней шиной данных для использования дешевых 8-ми разрядных устройств (1979 год). В микропроцессоре «80286» была увеличена разрядность шины адреса до 24.
В микропроцессоре «80386» впервые появилась 32-х разрядные шины адреса и данных. Микропроцессор содержал команды деления памяти на сегменты, что позволяло параллельно решать несколько задач. Для этого микропроцессора началась разработка операционной системы Windows (1985 год).
Следующим (1989 год) был микропроцессор «80486» он содержал кэш-память и сопроцессор. В остальном он не отличался от «80386»
В 1993 году появился микропроцессор «80586». Шина данных была увеличена до 64 разряда, шина адреса – 32 разряда. Для этого микропроцессора фирма INTEL наконец-то зарегистрировала торговую марку Pentium™.
Микропроцессор Pentium имел 2 одинаковых секции и мог в одном такте выполнять по 2 команды.
В процессоре имелся буфер метод перехода, который предсказывал ветвления в программах. Тем самым выполнение программы могло вестись параллельно.
Для изготовления применялась «0,35-МКм технология», то есть расстояние между транзисторами в процессоре равнялось 0,35 МКм.
Микропроцессор Pentium Pro (1995 год) имел 3 одинаковых секции и мог выполнять по 3 команды за такт. Шина адреса – 36, шина данных – 64.
Pentium Pro начал шестое поколение микропроцессоров INTEL.
Микропроцессор NN exe (1996 год) содержал команды работы с кино и звуком. Ранее эти команды выполнялись с помощью программ.
Микропроцессор Pentium II является объединением Pentium Pro и Pentium NN exe. P II оказался дорогим, и поэтому были выпущены более дешевые микропроцессоры Celeron. У них была резко уменьшена кэш-память.
Микропроцессор Pentium III имел команды обработки нескольких потоков данных. Он быстрее работает над числами с плавающей точкой, в частности он может одновременно обрабатывать 4 пары действительных чисел.
В 2000 году появились микропроцессоры Pentium IV, или началось седьмое поколение микропроцессоров. Они точнее предсказывали переходы в программах. Технические новшества позволяли увеличить тактовую частоту.
Одним из способов увеличения производительности микропроцессора является использование Risk технологий (вычисление по множеству укороченных (программ) команд).
Эта технология заключается в использовании только простых и коротких, одно-тактовых команд. Сложные команды комбинируются из простых.
Набор простых команд лучше обрабатываются параллельно. Реализация Risk-технологий для ПК привела к микропроцессору Titanium. Выпуском микропроцессоров в мире занимается несколько фирм, из которых подавляющую долю рынка занимают 2 фирмы: Intel и AMD.
Выбирать ПК необходимо по следующим персональным характеристикам.
- Производительность. Она измеряется в следующих единицах:
· MIPS – миллион операций в секунду с целыми числами.
· MFLOPS – миллион операций за секунду с плавающей точкой.
Производительность в основном определяется:
· тактовой частотой
· параллельным выполнением команды
· пропускной способностью системной шины
- Разрядность микропроцессора.
- Минимальная емкость оперативной памяти.
За счёт использования оперативной памяти многие программы обращаются к внешним устройствам. Увеличение оперативной памяти ускоряет работу компьютера.
- Емкость жесткого диска
Тенденция развития программного обеспечения показывает увеличение объемов самих программ и объемов необходимых данных.
- Объем кэш-памяти
За счет использования кэш-памяти процессор реже обращается к оперативной памяти.
- Тип дисплея и видеоадаптера.
Для профессиональной работы с графикой, просмотра кинофильмов требуется дорогой дисплей и видеоадаптер с большой памятью.
Система счисления – это способ наименования и изображения чисел с помощью символов, имеющих количественное значение цифр.
Системы счисления бывают позиционными и непозиционными.
В позиционной системе счисления количество представлено отдельной цифрой, зависит от позиции цифры записи числа.
В непозиционной количество представлено отдельной цифрой, не зависит от позиции цифры записи числа.
Пример позиционной системы счисления – арабская, непозиционной – римская.
Основанием позиционной системы называется количество цифр в ней.
В Р-ричной сс Р-цифр.
Значение цифры изменяется от 0 до Р-1. В позиционной системе число может быть записано в форме с фиксированной точкой.
am
am-1
,…,a1
00
x a-1
a-2
,…,a-c
(6.1)
Запись 6.1 в Р-ричной системе означает величину следующего ряда.
am
P + am-1
Pm-1
+ … + a1
P1
+ a0
P0
+ a-1
P-1
+ a-2
P-2
+ a-c
P-c
(6.2)
Например в десятичной системе можно записать 123.4 = 1*102
+ 2*101
+ 3*100
+ 4*10-1
Положение цифр в числе называется разрядом. Максимально целое число, которое можно записать в m-разряде равно:
Nmax
= Pm
– 1 (6.3)
В N разрядах можно записать Pm
штук.
Например: В 3 разрядах десятичной системе можно записать 1000 разных чисел.
В 8 разрядах двоичной системы можно записать 28
= 256 разных чисел.
В ЭВМ используется двоичная система счисления, это связано с тем, что самым надежным устройством хранения информации является устройство, которое имеет только 2 устойчивых состояния (включено/выключено, +/-, 1/0, да/нет).
Одно из состояний принимают за 0, другое за единицу.
среда, 3 ноября 2004 г
.
Арабские цифры
0 ۰
1 ۱
2 ۲
3 ۳
4 ۴
5 ۵
6 ۶
7 ۷
8 ۸
9 ۹
Байт – это 8 бит.
Для измерения объёмов информации в ЭВМ используются следующие единицы (табл. 5.2.)
Единицы измерения
|
Байт
|
Слово, параграф
|
Двойное слово
|
Расширенное слово
|
Кб
|
Мб
|
Гига-байт
|
Тера-байт
|
Пета-байт
|
Количество байт
|
1
|
2
|
4
|
8
|
1024
|
10242
|
10243
|
10244
|
10245
|
Двоичные целые числа размещаются в слове и в двоичном слове по схеме рис.6.1.
Знак числа
|
Величина числа
|
№ разряда
|
15
|
14
|
13
|
12
|
11
|
10
|
9
|
8
|
7
|
6
|
5
|
4
|
3
|
2
|
1
|
0
|
Пример 1
|
1
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
Пример 2
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
0
|
0
|
1
|
Числа с плавающей точкой хранятся в расширенном слове по схеме рис.6.2. Знак числа, знак порядка и мантисса хранятся в разных частях слова.
Знак числа
|
Знак порядка
|
Порядок
|
Мантисса
|
№ разряда
|
31
|
30
|
29
|
28
|
27
|
26
|
25
|
24
|
23
|
22
|
21
|
20
|
,,,
|
0
|
Пример 1
|
1
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
0
|
0
|
0
|
0
|
,,,
|
0
|
Пример 2
|
0
|
0
|
0
|
0
|
1
|
0
|
0
|
1
|
0
|
0
|
1
|
0
|
,,,
|
0
|
Двоично-десятичная форма чисел занимает переменное число байт и имеет 2 формата: упакованный и распакованный. В упакованном формате в одном байте хранится 2 десятичные цифры, в распакованном – 1 цифра. Распакованный формат быстрее обрабатывается. При хранении текстовой информации каждый символ текста кодируется целым числом. Для кодирования 28
= 256 разных символов, 8 двоичных разрядов. Отсюда появились понятия байта и байтовой организации памяти.
Кодовая таблица – соответствие между кодом символа и его изображением.
В текстовой информации каждый символ занимает 1 байт.
Все байты в ЭВМ пронумерованы. Номер байта называется адресом.
При записи и считывании информации возникает необходимость хранения адреса. При хранении адреса в двух байтах можно получить доступ к 216
= 64 Кб; При хранении адреса в 20 битах можно получить доступ к 220
= 4 Гб.
Двоичное представление информации в ЭВМ позволяет применять при построении устройств АЛУ. Этот аппарат оперирует с элементами, которые могут принимать только 2 значения (0 \ 1, да \ нет, true \ false)
Логическое значение – значение 0 или 1, да или нет и т.д.
Логическая переменная – переменная, способная принимать логическое значение.
Математическая логика может обрабатывать логические высказывания.
Высказывание – любое предложение, о котором можно судить либо истинно оно, либо ложно. При этом действует закон «исключённого третьего»: Каждое высказывание или истинно, или ложно, и не может быть одновременно истинно и ложно.
Высказывания обозначаются буквами a, b, c…
Пример:
a=”Я на лекции”, b=”идёт дождь”
принимается, что высказывание a и b могут быть только истинными или ложными, третьего – нет.
среда, 17 ноября 2004 г.
Введены операции над высказываниями, правила составления и преобразования выражений. Имеется 3 логических операции:
- Логическое отрицание; «не», инверсия.
- Логическое сложение, «или», V+, дизъюнкция.
- Логическое умножение, «и», Д*, конъюнкция.
Правила вычисления результатов логических операций даются таблицами истинности (рис.6.5).
не или и
Справедливы следующие логические законы:
- Сочетательный.
- Переместительный
- Распределительный a(b+c) = ab +bc
- Отрицательный –(-а) = а ; -(ab) = -a + (-b) ; -(a+b) = -a*(-b).
- Тождественный a*a=a ; a*0=0 ; a*1=1
Логическая функция – это алгебраическое выражение, содержащее логические переменные, логические операции и скобки.
Логическая функция принимает только логические значения.
Иногда логическая функция задаётся своими значениями при всех возможных значениях аргументов.
Для построения выражения такой функции можно применить следующую теорему:
Теорема о разложении на конституэнты.
Если ¦(0), ¦(1), j(0,0), j(0,1), j(1,0), j(1,1) – значения функций ¦ и j при указанных значениях аргументов, то справедливы следующие разложения:
¦(a) = ¦(0) * ùa + ¦(1) * a
j(a,b) = j(0,0) * ùa * ùb + j(0,1) * ùa * b + j(1,0) * a * ùb + j(1,1) * a * b
Логический синтез вычислительных схем
Цифровой компьютер построен из трёх типов элементарных устройств, которые способны выполнять 3 логические операции (рис 6.5)
Любое логическое выражение может быть представлено с помощью электронной схемы, например: ¦(a,b)= a*b+ù (a+b)
Если функция задана своими значениями, то построению электронной схемы помогает Теорема о разложении на конституэнты. Пример: Пусть дана функция, в виде своих значений. Согласно теоремы ¦ (a) = ¦(0)* ùa + ¦ (1) * a = 1 * ùa + 0*a = @ Соответствующая схема (рис 6.7)
Схема содержит 4 устройства. (и стоит $4) Применим логические законы. @ = ùa +0 = ùa Соответствующая схема (рис. 6.7)
Компьютерные сети - это совокупность компьютеров и каналов связи, которая предоставляет каждому пользователю общие ресурсы
Отдельные компьютеры при соединении между собой образуют новое качество по управлению объектами и по образованию информации.
Первые компьютерные сети создавались для реализации процессов производства, вскоре стали использоваться для управленческой деятельности. Назначение компьютерных сетей определяется двумя функциями:
- Обеспечение совместного использования аппаратных и программных ресурсов.
2. Обеспечение совместного доступа к ресурсам данных.
Компьютерные сети нужно отличать от Многомашинного Вычислительного Комплекса (МВК). МВК - это группа установленных рядом и соединенных ЭВМ, которые выполняют единый информационно-вычислительный процесс. Для компьютерной сети единого процесса или единой задачи не формулируется. Для создания компьютерной сети необходимо специальное сетевое, аппаратное и программное обеспечение. Для обмена информацией в компьютерной сети используются протоколы. Протокол - это стандарт совместимости передаваемой по сети информации. различают стандарты совместимости аппаратуры (аппаратные протоколы) и стандарты совместимости программ и данных (программные протоколы).
По территориальному признаку компьютерные сети разделяются на 3 класса:
o Глобальные сети (GAN)
- Региональные сети (RAN)
- Локальные сети (LAN - Local Network Area)
среда, 24 ноября 2004 г.
Глобальные сети имеют размер тысячи км. Региональная – десятки и сотни км. Локальная – до 2х км.
Для разных классов сетей используют разные аппаратные и программные протоколы.
Локальные сети на электрическом уровне соединяют компьютеры между собой с помощью кабелей и сетевых плат. На логическом уровне ЛВС представляет собой совокупность двух видов компьютеров:
1. Сервер
2. Рабочая станция.
Сервер – компьютер, представляющий свои ресурсы пользователям.
Рабочая станция – компьютер, через который пользователь получает ресурсы сети.
Сеть без единого устройства хранения и обработки информации называется одноранговой. В ней все компоненты равноправны. К достоинствам одноранговой сети относится низкая стоимость и высокая надёжность.
В сети с выделенным сервером 1 компьютер выполняет функции хранения и обработки информации и функции управления сетью. Достоинства: высокое быстродействие, надежная защита информации, простота управления.
Топология – это способы соединения элементов в системе. При построении локальных сетей используют 3 основные топологии:
1. Линейная шина.
2. Звезда.
3. Кольцо.
Сеть типа [1] (рис.7.1.) наиболее проста и экономична. Данные от передающего узла распределяются по общему кабелю во все стороны, во все узлы. Однако принимает их, только тот узел которому они предназначены.
Поломка одного узла не нарушает работы сети. Для линейной шины большой протяженности требуется высококачественный кабель.
Тип [2] базируется на компьютере центрального узла к которому подключаются остальные (рис. 7.2.)
Каждый периферийный узел имеет отдельную линию связи в центральный узел.
Топология [2] сильно упрощает взаимодействия в сети.
Работоспособность такой сети целиком определяется центральным узлом.
Требует много кабеля.
Тип [3] (рис. 7.3.) предусматривает соединение выхода одного кольца со входом другого.
Каждый промежуточный узел принимает сообщения предыдущих ему узлов и предаёт сигналы дальше.
Усиление сигнала позволяет использовать любые типы кабелей. Выход из строя любого узла разрушит работу сети.
Аппаратные средства LAN управляются с помощью специального сетевого программного обеспечения.
Для сетей LAN используются телефонное соединение и модем.
Модем – «модулятор – демодулятор», устройство, которое образует высокочастотные сигналы компьютера в низкочастотные сигналы телефона, и обратно.
Глобальные сети охватывают пространство в сотни и тысячи км. Базовой ячейкой глобальной сети является отдельный компьютер или локальная сеть.
В финансовой сфере в качестве глобальной компьютерной сети используется SWIFT – универсальная мировая система электронных международных расчетов.
Услугами SWIFT пользуются около 4000 клиентов в разных странах мира (в 100 странах)
Для развития внешней торговли и международной организации труда SWIFT помогает ускорить прохождение платежей между банками.
Услугами SWIFT пользуются не только банки, но и брокерские фирмы, фондовые биржи, депозитарии, инвестиционные компании.
Небольшие финансовые компании могут воспользоваться услугами банков-клиентов SWIFT. Использование GAN по сравнению с другими средствами коммуникации позволяет следующие:
· становление связи с банками и финансовыми структурами (по сравнению с другими средствами) практически в любой точке мира.
· Повышение защиты и секретности передаваемых сообщений.
· Выполнение международных расчетов по принципу «день в день».
· Единый стандарт сообщений.
· Автоматизация процесса, сокращение доли ручных операций.
· Высокая скорость передачи.
· Надежность работы за счет дублирования.
Основу сети SWIFT составляют 3 коммуникационных центра, которые находятся в Нидерландах, Бельгии, США, а также региональные центры, к которым подключены клиенты.
Архитектура сети состоит из 4 уровней:
1) Терминалы пользователя, которые являются точками доступа клиентов.
2) Региональный сервер, который управляет протоколом передачи сообщений, проверяет правильность входящих документов, передает клиентам подтверждение о приеме и передаче сообщений.
3) Маршрутизированный сервер, который управляет передачей сообщений между региональными серверами, хранит информацию об их передаче, обрабатывает системные сообщения, ведет системный архив.
4) Сервер управления системой. Для высокого уровня защиты информации представляются более высокие требования к процедуре подключения терминала.
Дополнительными мерами по защите информации служит разграничение прав пользователей и резервное копирование информации.
Эта сеть носит открытый характер и не предъявляет особых требований к аппаратному и программному обеспечению пользователя. Сеть не обеспечивает секретности и достоверности передаваемых данных. В силу этого крупные финансовые институты, не используют Internet для своих отношений.
Общим свойством всего Internet является использование протокола передачи данных под названием TCP/IP
В 2000 году Internet имел 250 млн. пользователей в 150 странах, из них 95 млн. в США и Канаде, 30 млн. в Европе, 2 млн. в России.
Internet является общественной организацией, нет собственника Internet в целом, который извлекает прибыль. Финансируется Internet в основном государством.
Частные лица и фирмы, которые арендуют каналы связи Internet, называются провайдерами.
Предпосылкой создания Internet была идея военных о создании информационной системы, которая обладала бы двумя свойствами:
1. обеспечение взаимодействия пользователей по принципу «каждый с каждым»
2. сохранение работоспособности системы при частичном её повреждении.
Первый вариант сети был реализован в 1969 году под названием Arranet.
В этом проекте были заложены 3 основы Internet’a:
1. система кодирования информации
2. распределенный характер сети (нет главного)
3. протокол приема и передачи информации (TCP/IP)
В дальнейшем появилась 4-ая основа Internet’a – система гипертекста, построение документа, при котором в тексте содержатся ссылки на другие документы. Система ссылок соединяет мировую паутину документов.
В 1998 году в США была запущена новая сеть под названием «Internet-2» или «быстрый Internet». В этой сети скорость передачи данных была увеличена в 1000 раз. Доступ в Internet осуществляется либо с отдельного компьютера, либо из локальной сети с помощью телефонных каналов, выделенных линий, спутниковой или радиосвязи. При использовании телефонной сети необходим модем.
Для связи с LAN, которая использует TCP/IP, используют отдельные компьютеры, которые называются мосты.
Отдельные компьютеры и LAN, подключенные к Internet называют узлами.
Программные средства передвижения по узлам Internet’a называются браузер. Примерами браузеров являются: Internet Explorer, Opera, Netscape Navigator.
Для указания доступа к документам в Internet разработаны: длинная система имен (DSN) и универсальный показатель ресурсов (URL).
URL состоит из латинских букв и цифр, символов ( ) . - _ ~ и не может содержать пробелов.
Общий формат (адрес в Internet) записи указателя ресурсов:
[Схема доступа]://[имя машины].[имя домена]/[имя файла]
Схема доступа: http – формат языка разметки гипертекста.
ftp – файловый сервер.
Имя машины:
Имя домена состоит из нескольких слов, разделенных точками – доменов. Домены иерархически упорядочены – младший домен – слева, старший – справа.
Для старших доменов приняты некоторые соглашения:
edu – образование.
gov – правительственные учреждения.
mil – военные учреждения.
net – провайдеры Internet.
orp – общественные организации.
com – коммерческие организации.
Имеются стандарты на географические старшие домены:
ru – Россия.
uk – Великобритания.
uc – Украина.
su – Советский Союз.
Распределением доменов занимается специальная служба в Internet. Списки доменов рассылаются на специальные компьютерные сети – маршрутизаторы, которые определяют маршруты движения данных по Internet. Каждый узел в Internet имеет уникальный IP-адрес, который дается на постоянное пользование или на время сеанса.
IP-адрес состоит из 4 байт, каждое число хранится от 0 до 255, левый байт самый старший 92.131.33.22.
Соответствие IP-адресов и имен доменов хранится на маршрутизаторах в провайдере. Internet предоставляет следующие информационные услуги:
1) электронная почта (E-mail)
2) передача файлов (ftp)
3) информация на основе гипертекста (www)
4) поток информации по ключевым словам (rambler)
Сеть типа Internet является частной сетью, которая использует внутри протокол TCP/IP.
Международной организацией по стандартизации (ISO) рекомендуется системы компьютерной связи рассматривать на 7-ми разных уровнях:
1. прикладной
2. представительный
3. сеансовый
4. транспортный
5. сетевой
6. канальный
7. физический
Уровни иерархически упорядочены.
Реальная компьютерная связь происходит только на физическом уровне, между остальными уровнями имеются только виртуальные соединения, которые реализуются с помощью программ драйверов. Каждому уровню соответствует свой протокол. Эти положения называются моделью открытых систем (ОСТ
)
МОС признана стандартом для разработки протоколов компьютерной связи. Согласно МОС передача сообщения от источника к получателю происходит по схеме (рис. 7.4)
Физическое соединение
Виртуальное соединение
1. На прикладном уровне с помощью существующих средств пользователь создает документ для сообщения.
2. На представительном уровне операционная система фиксирует положение документа и обеспечивает взаимодействие со следующим уровнем. Уровень гарантирует представление данных в формате, принятом в данной операционной системе.
3. На сеансовом уровне компьютер пользователя взаимодействует с сетью. Протоколы этого уровня проверяют права пользователя на выход в сеть. Сеансовый уровень начинает, поддерживает и завершает сеанс связи.
4. На транспортном уровне документ преобразуется в ту форму, в которой положено передавать данные по сети, например, сообщение делится на куски стандартного размера – пакеты, которые и будут передаваться. Прохождение по сети нескольких пакетов происходит быстрее, чем прохождение суммарного сообщения. Из-за ошибок передачи неправильно переданное сообщение запрашивается вновь.
5. Сетевой уровень определяет маршрут движения пакетов по сети. Каждый пакет сообщений снабжается адресами источника и получателя и передается по сети независимо от других пакетов.
6. Канальный уровень обнаруживает ошибки передачи, реализует механизм восстановления ошибочных данных. В компьютере канальный уровень обеспечивают сетевая карта и модем.
7. Реальная передача данных происходит на физическом уровне. Здесь проводится управление аппаратурой передачи данных и каналами связи. Средства физического уровня лежат за пределами компьютера.
На компьютере получателя информации происходит обратный процесс преобразования данных от двоичных символов физического уровня до изображения.
Протоколы трех низших уровней проработаны достаточно подробно, другие протоколы стандартизированы в меньшей степени, протоколы прикладного и представительного уровней, по сути, реализуются в прикладных программах и в операционной системе.
ОС – это совокупность программных средств, которые обеспечивают взаимодействие аппаратуры компьютера, прикладных программ и пользователя.
Любая ОС состоит из 4-х частей, предназначенных для выполнения следующих четырех функций:
1) управление всей аппаратурой компьютера.
2) управление выполнением программ.
3) управление взаимодействием с пользователем.
4) организация хранения информации на временных носителях (файловая система).
На ПК типа IBM/PC можно установить операционные системы CP/M, MS DOS, UNIX, Windows.
ОС CP/M – не используется.
MS DOS – почти исчезла.
UNIX – пользуется не большим, но стабильным процентом пользователей.
Windows – широко применяется.
WINDOWS’95,98,NT,МЕ,2000,ХР.
Необходимо заметить, что только операционная система способна общаться с устройствами компьютеров.
Другие программы для обращения к устройствам используют ОС.
Название Windows происходит от английского «окна»
Окно
– это прямоугольная область на экране, в которой отображается программа, документ или сообщение.
Окон на экране может быть много, и они могут накладываться друг на друга. Окна позволяют ввести третье измерение на экране, в дополнение к горизонтали и вертикали. Окна позволяют на одной и той же площади экрана разместить больше доступной информации. Экономия места на экране привела к графическому режиму работы ОС.
Графический режим
– режим, при котором программа и ОС имеют доступ к каждой точке на экране.
При текстовом
режиме ОС имеет доступ к знакоместу на экране. Каждое знакоместо имеет одинаковые размеры и занимает много точек на экране.
В ОС Windows прикладная программа называется приложением
, а правила взаимодействия программы и пользователя называется интерфейсом
.
ОС Windows версии 1 и 2 появились и быстро исчезли. 3 представляла собой графическую оболочку над ОС MS DOS. С устройствами работала MS DOS.
4 версию Windows назвали Windows 95, её улучшенная версия Windows 98.
Параллельно разрабатывалась Windows NT для организаций. Объединение направлений привело к созданию 5-ой версии Windows 2000. Её домашняя версия называется Windows Millennium. 6-ая версия называется Windows XP. Сейчас внедряется Windows 2003.
В ОС Windows заложены следующие концепции:
1. графический интерфейс пользователя.
2. многозадачный режим работы.
3. управление ресурсами компьютера.
4. объектный подход.
5. работа в сети.
6. мультимедиа.
Первое, что видят пользователи Windows - это Рабочий стол, Панель задач и значки.
Рабочий стол – окно ОС Windows.
Рабочий стол занимает весь экран дисплея, закрытие рабочего стола заканчивает работу в ОС Windows.
Вдоль одной из границ экрана расположена Панель задач, на которой находится кнопка «Пуск» для вызова главного меню.
Значки с подписями на рабочем столе соответствуют программам, документам, папкам, устройствам.
Многозадачность
– это способность системы выполнять одновременно несколько приложений.
Можно одновременно делать расчеты, печатать документ и играть в игру.
Для каждого приложения выделяется своя доля времени процессора. У пользователя создается иллюзия одновременного решения задач.
Различают два вида многозадачности: кооперативная и преемптивная.
В кооперативной
многозадачности каждому приложению назначается приоритет. Задачи малого приоритета решаются во время простоя задачи большого приоритета (ожидание нажатия клавиши, чтение – запись на диск и др.). Задача большого приоритета может забрать себе все время процессора. Задача самостоятельно решает, когда отдать процессор другой задаче.
В преемптивной
многозадачности каждая задача получает фиксированный квант времени процессора. Окончание кванта всегда приводит к попытке передать управление другой задаче. Задачи решаются по очереди, являются преемниками друг друга. Ответственность за передачу процессора несет ОС.
Приложения Windows способны порождать процессы. Процесс
– последовательность действий, которые могут выполняться независимо от других процессов. Например, можно открыть несколько документов. За каждым окном документа будет закреплен процесс. Поток
– это часть процесса, который может выполняться независимо от других потоков. Деление процесса на потоки функция самого приложения, а порядок предоставления потокам процессорного времени осуществляется операционной системой.
Процесс состоит из потоков, в крайнем случае, из одного. Многозадачность Windows основана на способности ОС обрабатывать много потоков.
Сетевая ОС может еще успешнее справляться с многозадачностью, если поддерживает многопроцессорную обработку. Тогда процессы будут фактически выполняться одновременно, каждый на своем процессоре.
Есть две разновидности многопроцессорной обработки: асимметричная и симметричная. При асимметричной
обработке один или несколько процессоров обслуживают только операционную систему, а остальные заняты только приложениями. При симметричной
обработке любой процесс может быть поручен любому свободному процессору. Симметричная обработка более предпочтительна, т.к. в целом отказоустойчива и более равномерно распределяет нагрузку..
Ресурсы
компьютера = основные ресурсы + устройства.
Основные
ресурсы – это процессор, основная память и программы.
Устройства
– дисплей, клавиатура, мышь, винчестер и др.
Без любого из устройств компьютер может работать, а без любого основного ресурса компьютер не работоспособен.
ОС Windows использует основные ресурсы как разделяемые
, т.е. предоставляет их в одновременное пользование нескольким приложениям.
Процессор разделяется с помощью режима многозадачности.
Программы и память разделяются при запуске программ дважды, трижды и т.д. При этом в памяти хранится одна копия программы, а для данных организуются 2,3 и т.д. областей.
Устройства компьютера тоже используются как разделяемые.
Режим разделения зависит от устройства. Например, дисплей разделяется с помощью окон, принтер разделяется с помощью очереди печати.
ОС Windows относится к 32-разрядным ОС, т.е. она для хранения адреса памяти использует 32 бита. Это позволяет ОС Windows напрямую обращаться к 232
байт = 4 Гигабайт основной памяти.
Виртуальная машина
– часть разделяемых ресурсов, предоставленных одной задаче. ОС Windows организует для каждого приложения свою виртуальную машину. Каждое приложение «уверено», что оно решается на отдельном компьютере.
Драйвер
– программа, которая управляет потоками данных к устройству и от устройства.
В Windows для интеграции программных и аппаратных средств используется технология Plug &
Play
(Вставь и играй / Включи и работай). Эта технология состоит в обеспечении следующих функций:
1. Распознавание устройств для их установки и настройки.
2. Уведомление и настройка драйверов устройств, ОС и интерфейса.
3. -объединение драйверов устройств, системных компонентов и интерфейса;
Изменение аппаратного состава отслеживается автоматически при включении компьютера и во время его работы.
Сейчас почти все устройства изготовляются с учетом технологии Plug & Play.
Под объектом
понимается абстрактный тип данных, который кроме самих данных содержит функции по их обработке. Объектом может быть окно, рисунок и др.
Объект способен замечать внешние события: нажатия клавиш и кнопок, открытие/закрытие окна и др. – и как-то на них реагировать.
ОС Windows и её приложения строятся из объектов. Имеется 3 способа обмена объектами между приложениями:
1. Статическое копирование.
2. Внедрение.
3. Связывание.
При статическом копировании переносятся только данные объекта, функции обработки не переносятся. Объект отображается и может быть отпечатан, но не может быть отредактирован. Объект не способен замечать внешних событий.
Основное отличие между внедрением состоит в способе хранения данных. При внедрении
в приложение-приемник включается копия объекта. Внедренный объект становится частью приемника. Связь с источником разрывается.
При связывании
объект остается в источнике. В приемник посылается информация о местонахождении объекта и его свойствах. Все изменения объекта делаются источником.
Изменения с помощью связи сразу видны в приемнике. Для обмена объектами имеется 3 технологии:
1. буфер обмена
2. динамический обмен данными (DDE)
3. связывание и внедрение объекта (OLE)
Использование связи предпочтительнее по двум причинам:
a) приемник почти не увеличивается в объеме.
b) Один объект можно связать с несколькими приемниками.
Иногда называют Приемник = клиент, Источник = сервер.
Работа нескольких компьютеров в сети обеспечивает 2 преимущества:
1. совместное использование аппаратных ресурсов: принтеров, жестких дисков, факс-модема и др.
2. совместное использование информационных и программных ресурсов.
В домашнюю версию ОС Windows встроена поддержка одноранговой сети до 10 станций. Для большего числа станций нужно использовать профессиональную версию. Имеются встроенные средства по регистрации и паролированию пользователей. При неверной регистрации пользователь отключается от сети и работает индивидуально.
Мультимедиа- кино и звук.
Основные особенности ОС Windows в мультимедиа:
· простота подключения устройств в мультимедиа (Plug & Play)
· продуманная архитектура цифрового кино и звука.
· технология дисплейных драйверов, которая позволяет стандартные графические операции выполнять на видеоадаптере без вмешательства центрального процессора.
Основными элементами интерфейса Windows являются: окно, меню, папка, Панель задач, Панель управления.
Типовая структура окна W ( рис. Окна). Через верхний левый угол появляется меню окна. Там есть команды свернуть, закрыть, и др. Значок «что это»позволяет получить помощь по элементу управления в данном окне.
Модальное
окно – окно, которое нельзя покинуть, не закрыв его. Между немодальными окнами можно свободно перемещаться с помощью мыши и клавиатуры.
Различают окна с многодокументным и одно документным интерфейсом.
Многодокументные
окна (MDI) – содержат все вызванные окна внутри себя. Закрытие MDI окна закрывает все вызванные окна.
Однодокументные
окна – (SDI) – могут выпускать вызванное окно за свои пределы.
. MDI SDI
Выделяется специальное окно сообщений, которое содержит значок, сообщение и до 4-х кнопок. Как правило, окно сообщений модальное.
Меню
– это набор элементов управления, сгруппированных горизонтально или вертикально. Элементы управления меню называются пунктами
. При нажатии на пункт выполняется какая-то команда. Горизонтальные группы пунктов называются линейками, а вертикальные группы – выпадающими меню. Примером выпадающего меню является Главное меню.
Пункт меню состоит из 4 частей: рисунок, подсказка, значок, горячая клавиша.
Рисунок и подсказка поясняют выполняемую команду.
Значок треугольника (4) говорит о том, что из пункта появится выпадающее меню. Значок многоточие (…) говорит о том, что из пункта появится диалоговое окно, в котором пользователь должен будет задать параметры команды и подтвердить/отменить выполнение команды. Отсутствие значков (4) и (…)говорит о немедленном выполнении команды.
Один из символов подсказки может быть подчеркнут. Это клавиша быстрого доступа. При нажатии клавиши «Alt + подчеркнутый символ» пункт меню выполняется, если он виден на экране.
Справа от подсказки может присутствовать горячая клавиша
. При её нажатии на клавиатуре пункт меню выполняется, даже если его не видно на экране.
Панель задач расположена вдоль одной из границ экрана. Она содержит: кнопку «Пуск» Главного меню, свернутые окна, значки резидентных программ, системные часы.
Резидентные
программы постоянно находятся в памяти компьютера и доступны. Запускаются при включении компьютера и закрываются при выключении.
Через папку Мой Компьютер можно добраться до любого файла, папки и устройства и изменить их свойства. Папка-Корзина содержит ранее удаленные файлы, которые можно восстановить. Корзина занимает место на диске. Переполнение и очистка корзины приводит к невозможности восстановления файлов.
Панель управления используется для:
1) изменения режимов работы ОС и интерфейса
2) установки и снятия программного и аппаратного обеспечения
3) настройки параметров устройств.
4) управлением заданиями на печать.
Текстовый процессор
- программное средство, предназначенное для создания и обработки электронных текстовых документов.
Имеются две группы текстовых процессоров. Первая группа работает только с текстами, вторая может работать и с графикой. Текст и графика отличаются своими мельчайшими единицами. Самая маленькая единица текста - символ ,самая маленькая единица графики - точка и линия.
Типичные элементы окна текстового процессора показаны на рис.окна.
Курсор вставки показывает место, куда попадают символы с клавиатуры. Строка состояния содержит общие параметры документа: имя файла, номер текущей, кол-во страниц, индикаторы режимов работы.
Текстовый процессор производит обработку как минимум одного документа.
Документ содержит текст и графику. Текст и графика существенно отличаются по командам их обработки.
Минимальной, неделимой единицей текста является символ. Каждый символ в ЭВМ хранится в одном или двух байтах. Символ имеет код, размер, шрифт и начертание.
Код
- целое число от 0 до 255 или до 65384. Код показывает положение символа в таблице кодировки или в таблице шрифта.
Размер
символа, а именно его высота, измеряется в пунктах. Пункт равен 1\72 часть дюйма или примерно 0.35 миллиметра.
Шрифт
– правила изображения символа на экране и на бумаге. Шрифт еще называют фонтом. Шрифты типа TrueType (ТТ, O) одинаково изображаются на экране и на бумаге. Шрифты не типа TrueType попадаются редко. Это, например: шрифты MS Sans Serif, Fixedsys. В пропорциональном шрифте ширина символов разная и зависит от написания символа. Например: ширина единицы (1) меньше, чем ширина буквы Ш. В непропорциональном шрифте ширина всех символов одинаковая. Это, например: шрифты Courier.
Начертание
- признаки обычный, полужирный, подчеркнутый, курсив и другие.
Среди символов выделяются пробельные
символы:
пробел, табуляция и Enter и несколько других.
Слово
- непрерывная последовательность непробельных символов.
Абзац
в электронном документе – последовательность слов, которая заканчивается символом Enter.
Раздел
– последовательность абзацев, которая отличается параметрами внешнего вида страниц. Совокупность разделов образует электронный документ. Часто документ состоит только из одного раздела.
Форматирование
– это правила, параметры и процедуры внешнего вида документа.
Операции и параметры форматирования включает в себя: разбивку текста на строки и страницы, отступы и интервалы между строками и абзацами, шрифты и начертания, выравнивание текста по кроям.
Большинство операций форматирования в текстовом процессоре выполнятся в автоматическом режиме. При изменении параметров форматирования текст автоматически перераспределяется по строкам и страницам.
Форматирование принципиально по-разному применяется к символам, абзацам, разделам и документу в целом. То, что можно для символов, невозможно для абзацев и наоборот. Например, абзацы можно выравнивать, а символы нельзя. Для символов можно задать шрифт, для абзацев нельзя. Поэтому команды форматирования в текстовом процессоре можно разделить на категории по объекту применения. Содержание электронного документа состоит из двух частей. Можно сказать, что
Документ = Текст + Форматирование
Иерархия понятий в структуре электронного документа показана на рисунке 9.2:
Документ раздел абзацы слова символ.
Редактирование
документа включает в себя кроме форматирования еще исправление содержания текста.
Рассмотрим минимальный и расширенный наборы типовых операций по обработке текстов в текстовом процессоре.
Рассмотрим минимальный набор типовых операций, которые возможны в текстовом процессоре над документом, абзацем, фрагментом текста, словом, символом.
С документом в целом проводятся следующие операции текстового набора:
- Создание (формирование файла документа и задание ему уникального местоположения и имени)
- Открытие (загрузка существующего файла в текстовый процессор).
- Сохранение
- Удаление
- Печать
Разделы есть не во всех текстовых процессорах и операции с параметрами страниц не входят в минимальный набор.
С абзацем проводятся следующие операции:
1) Установка границ
Устанавливаются левая, правая, верхняя, нижняя границы абзаца.
2) Отступы и интервалы
Устанавливаются расстояния от предыдущего и следующего абзацев, межстрочный интервал, красная строка.
3) Выравнивание (выключка)
Различают 4 вида горизонтального выравнивания: влево, вправо, по центру, по ширине, - и три вида вертикального: вверх, вниз, по высоте.
4) Перенос
Возможны три способа переноса текста на следующую строку: по словам, по слогам, по символам.
5) Позиции табуляции
Устанавливаются горизонтальные позиции по строке, куда попадает следующий символ после очередного символа табуляции. Удобны для построения столбцов и таблиц текста.
Фрагмент
– непрерывная часть текста. Фрагменты не входят в структуру электронного документа. Они используются для целей создания и форматирования текста.
Существует 3 вида фрагментов: строчный, прямоугольный, линейный (рис 9.2).
С фрагментом проводятся операции: выделение, копирование, перемещение, удаление, печать, форматирование.
Для слова существует специальная операция выделения.
Параметрами форматирования символов являются: шрифт, размер, начертание, цвет, разреженность, приподнятость, кернинг, анимация. При вводе символов имеются 2 режима: вставки и поверху (замены).
К расширенному набору типовых операций текстового процессора относятся:
1) поиск и замена
2) проверка правописания
3) параметры страниц
4) стили
5) шаблоны
6) макросы
7) таблицы.
9.2.2.1 Поиск и замена
В этой операции ищется одна последовательность символов и затем она заменяется на другую последовательность. Обе последовательности задаются пользователями и могут быть разной длины. Если вторая последовательность нулевой длины, то операция замены реализует удаление символов.
Имеются режимы:
1) одноразовый и глобальный
2) автоматической и ручной замены
3) чувствительности к строчным и прописным символам
4) направления поиска: вверх, вниз, по всему документу
5) учета форматирования.
9.2.2.2 Проверка правописания
Проверка правописания выполняется специальной программой. Проверяются орфография, синтаксис, склонение, спряжение, пунктуация, стиль. Основой проверки служат словарь и набор правил. Словарь может изменяться пользователем. Набор правил фиксирован. С помощью правил проверяются плохой стиль документа (как не
надо говорить и писать): много придаточных предложений, повтор одинаковых слов, много подряд идущих согласных или гласных, разные падежи в перечислениях и т.п.
9.2.2.3 Параметры страниц
Параметры страниц относятся к параметрам форматирования разделов.
Различают логическую и физическую страницы.
Логическая страница
– прямоугольное пространство, включающее текст и графику документа.
Физическая страница
= Логическая страница + Поля.
Пользователь назначает два размера физической страницы и размеры четырех полей. В верхней и нижней частях каждой страницы располагаются нижний и верхний колонтитулы
. Они могут содержать вспомогательную информацию: номер страницы, фиксированный текст, сноски. Параметры страницы одинаковы для всех страниц одного раздела.
К параметрам страниц также относятся:
- Ориентация листа (книжная или альбомная)
- Расстояния по вертикали до колонтитулов
- Источник бумаги
- Колонки
- Границы страницы (очерчивается логическая страница)
- Вид сносок
- Порядок печати страниц
Раздел может начинаться посередине страницы. В этом случае размеры листа и полей в соседних разделах должны быть одинаковы.
9.2.2.4 Стили
Стиль
– это набор правил и параметров по форматированию символов и абзацев.
Существуют стиль символа и стиль абзаца. В стиль абзаца входит какой-нибудь стиль символа.
Нужно отличать понятие стиля, данное здесь, от понятия стиля документа, упомянутого в пункте 9.2.2.1. Это совершенно разные понятия.
Каждому стилю дается имя, например: Обычный, Заголовок1, Заголовок2. Стиль содержит параметры форматирования: имя шрифта, начертания, размер, интервалы, отступы строк и абзацев, выравнивание, нумерацию списков, позиции табуляции и др. Каждый символ и абзац обладает каким-то стилем. Если пользователь не называет стиля, то используется стиль, заданный по умолчанию. Параметры стиля сохраняются вместе с документом. Поэтому одноименные стили в разных документах могут иметь разные параметры форматирования.
Главное свойство стиля
: при изменении параметров стиля автоматически изменяется текст открытого документа, относящийся к данному стилю.
9.2.2.5 Шаблоны
Шаблон
- набор правил и средств по форматированию документа в целом и его разделов.
Каждый шаблон имеет уникальное имя, например: Нормальный, Стандартный отчет.
В шаблоне содержится пример содержимого, параметры страниц, стили, настройки меню и панелей инструментов, автотекст, макросы.
Каждый электронный документ создан на основе какого-то шаблона. При изменении шаблона новые свойства приобретут только вновь создаваемые на основе этого шаблона документы. На созданные ранее документы изменения в шаблоне не влияют.
9.2.2.6 Макросы
Макрос
– последовательность команд текстового процессора, записанная ранее под общим именем.
Главное свойство макроса
: после вызова макроса, записанная в нем последовательность команд будет в точности воспроизведена. С помощью макросов автоматизируются типовые этапы подготовки электронного документа. Макросы создаются и записываются 2-я способами (бывают 2 вида макросов):
- запись последовательности нажатия кнопок и клавиш;
- написание программы на внутреннем алгоритмическом языке.
9.2.2.7 Таблицы.
Таблица
- это информация организованная с помощью строк и столбцов. Пересечение сточек и столбцов – ячейка. Таблицы встречаются часто в документах. Поэтому в текстовом процессоре имеются специальные средства по работе с таблицами.
Существуют особые параметры форматирования: таблицы в целом строк, столбцов, ячеек.
Подготовка документа состоит из двух этапов:
- создание документа
- форматирование документа.
Рассмотрим основные принципы подготовки документа, которые с одной стороны, делают его понятным читателю, с другой, ускоряют его подготовку.
При создании документов необходимо придерживаться следующих принципов. Принципы носят характер советов. Их эффективность проявляется при большом количестве документов.
- Используйте режим просмотра перед печатью.
Перед печатью необходимо посмотреть на экране дисплея документ в том виде, в каком он будет выглядеть на бумаге. Это позволит организовать документ, не допуская перепечатки.
- Учитесь быстро печатать.
Главное ограничение подготовки документа - это скорость ввода текста с клавиатуры. Учитесь печатать «вслепую».
- Сначала пишите, потом редактируйте.
Создавая документ, не исправляйте ошибок. Исправления рекомендуется делать потом, когда ошибки исправлены автоматически или явно указаны.
- Удаляйте с осторожностью.
Не удаляйте текст большими кусками. Работайте в режиме вставки, а не замены.
- Сохраняйте чаще.
Перебои с электропитанием, зависание программ, настроение, могут свести на нет многие часы вашей работы. Пользуйтесь режимом автосохранения 1 раз в 20-30мин. Хорошей привычкой является ручное сохранение.
- Храните копии важных документов.
Создавайте резервные копии файлов на дискетах и на других носителях. Особо важные документы храните на бумаге.
- Используйте небольшие файлы.
Большие файлы обрабатываются нелинейно дольше. Ущерб от потери маленького файла мал.
- Создайте себе удобства.
В удобной позе уменьшаются трудовые затраты и меньше вероятность ошибок и непредсказуемых действий.
- Делайте передышки.
Короткие перерывы по пять минут в час помогут вам и вашим глазам не устать от работы.
Предполагается, что текст документа создан и необходимо его форматировать, изменить внешний вид. Давние традиции книгопечатания сформулировали следующие принципы:
- Не пишите убористо.
Оставляйте в тексте достаточно пустого места. Хороший актер отличается не монологом, а паузой. Не пренебрегайте полями по краям листа. Затраты на бумагу меньше, чем затраты на понимание документа.
- Документ единое целое.
Организуйте фрагменты документа так, чтобы он выглядел единым целым, занимая при этом минимальную площадь страницы.
- Не используйте длинных строк, предложений, абзацев.
Длинные фрагменты утомляют читателя.
- Принцип баланса.
Визуальный вес левой и правой частей страницы должен быть, примерно одинаковым
- Принцип выделения.
Выделяйте заголовки крупным рубленым шрифтом. Не выделяйте длинных фрагментов. Используйте серый фон и выделение рамкой.
Электронная таблица
– информация в компьютере, которая организована с помощью строк и столбцов.
Табличный процессор
- программное средство, предназначенное для создания и обработки электронных таблиц.
Рассмотрим принципы и операции, общие для большинства табличных процессоров.
История развития табличного процессора берет свое начало с 1979 года, когда 2 студента Гарвардского университета Дэн Бринклин и Боб Франкстон занимались скучными вычислениями в бухгалтерских книгах. Им пришла мысль автоматизировать процесс вычислений с помощью компьютера. Так была создана первая версия табличного процессора под названием VisiCalc. Затем появился значительно усовершенствованный процессор SuperCalc.
В 1982 году на рынке программных средств появился табличный процессор Lotus1-2-3. Lotus 1-2-3 был первым табличным процессор, который объединил в себе кроме операций с таблицами (~1), еще и мощную графику (~2) и работу с базами данных (~3). Продукт пользовался громадной популярностью и компания Lotus за первый год продала его на 50 млн. $. Успех Lotus привел к жесткой конкуренции и быстрому появлению табличных процессоров VPPlanner, First и QuatroPro.
В 1987 году компания Microsoft
выпустила первую версию табличного процессора Excel
. Основной упор в процессоре Excel
был сделан на простоту общения с пользователем. Для этого используются:
- система меню;
- повсеместные, но стандартные приемы работы с мышью;
- широкий спектр панелей инструментов;
- использование шаблонов при построении сложных объектов.
Интерфейс
- это правила взаимодействия компьютера и пользователя. В более узком смысле под интерфейсом понимаются визуальные средства взаимодействия: окна, панели кнопки и т.п.
Электронная таблица состоит из строк и столбцов. Каждая строка пронумерована цифрами 1, 2, 3, …, каждый столбец пронумерован буквами А, В, С,…,Z, АА, АВ,…,AZ, BA, BB,… .
Ячейка
– пересечение строк и столбцов. Адрес – совокупность номера строки и номера столбца, на пересечении которых находится ячейка.
Ссылка
– способ указания адреса ячейки. Самой простой ссылкой служит явное указание адреса ячейки, например: А1, АB28. Есть и другие виды ссылок, например: C1R1, C28R28.
Ячейка может быть пустой или может содержать одно данное какого-либо типа: текст, дата, число, формула.
Блок
– несколько ячеек, объединенных по какому-либо признаку.
Большинство команд табличного процессора могут применяться не только к одной ячейке, но и к блоку. Любая команда табличного процессора требует указания блока, в отношении которого она применяется. Блок может включать в себя:
- прямоугольник с несколькими строками и столбцами,
- всю строку или столбец,
- произвольную, разрозненную группу ячеек,
Ссылка на блок задается указанием:
- первой и последней ячейки прямоугольника через двоеточие, например: (А1: С3),
- первой и последней строки или столбца через двоеточие, например: (1: 3), (А: С),
- перечислением ячеек и прямоугольников через точку с запятой, например: (A1;В2;В4:D6)
- указанием ранее заданного имени блока, например: Прибыль по месяцам.
Блок может состоять из 1 ячейки.
Одна электронная таблица располагается на одном рабочем листе. Кроме таблицы в листе могут располагаться диаграммы и макросы. Несколько рабочих листов составляют рабочую книгу. Каждая рабочая книга открывается в отдельном окне и сохраняется в отдельном файле. Ячейка, рабочий лист, рабочая книга, в которой находится курсор, называются текущими
(активными).
Табличный процессор может обрабатывать несколько рабочих книг и позволяет устанавливать между ними связи.
Типичные элементы окна табличного процессора показаны на рис.10.1. Условно окно разделяется на 2 части: рабочее поле и поле управления.
Поле управления включает: главное меню, строку состояния, линейки прокрутки, панели инструментов, строку формул, строку подсказки. Расположение этих областей на экране может быть произвольным и зависит от табличного процессора.
Главное меню содержит пункты основных режимов. Из этих пунктов появляются перечени команд данного режима. Классическими являются режимы: Файл, Правка, Вид, Сервис, Окно.
Строка состояния (статусная строка) содержит сведения о текущем режиме, имени файла, строке и столбце таблицы.
Главное меню
Панели инструментов Столбец
Строка формул
А В С АА D
Строка 1 Ячейка В1
2
3 Блок
Рабочее поле
Ñ
Статусная строка Линейки
Строка подсказок прокрутки Рис.3.1. Окно табличного процессора.
|
Панель инструментов содержит ряд кнопок с картинками, которые предназначены для быстрого вызова команд и окон. Панели инструментов еще называются пиктографическими меню.
Строка формул отображает адрес текущей ячейки и вводимые в нее данные. Через строку формул можно вводить данные в текущую ячейку.
Особенность строки формул в том, что в ней отображается не только значение, но и формула, по которой это значение подсчитано.
Строка подсказки сообщает сведения о проверенном или предполагаемом действии процессора.
Рабочее поле - это пространство электронной таблицы, состоящее из ячеек и их значений, названий строк и столбцов.
Рассмотрим, что и в каком виде может храниться в ячейках электронной таблицы.
В каждую ячейку пользователь может ввести данное одного из следующих пяти типов:
· текст,
· число,
· дата,
· формула,
· функция.
Для разных типов данных возможны разные операции преобразования. Например, числа можно складывать, а даты нельзя. Даты можно вычитать друг из друга, а тексты нельзя. Из текстов можно вырезать символы, а из формул нельзя. Формулы требуют исходных данных определенных типов и дают определенный тип результата. Функцию и формулу можно объединить в один тип.
Тип вводимого данного определяется либо автоматически по содержанию вводимой первый раз в ячейку информации, либо по формату, заданному пользователем для ячейки. Автоматическая проверка и определение типа происходит в следующем порядке: функция, формула, дата, число, текст.
Функция
представляет собой программу с уникальным именем и со списком параметров в круглых скобках через запятую. Перед именем функции ставится знак (=) «равно».
Функции разделены по категориям: текстовые, даты и времени, статистические, финансовые и другие.
Пример: =СУММ(А1:В2; С5). Сумма ячеек А1, А2, В1, В2, С5.
Формула
содержит операции, производимые над заданными ячейками. Отличительным признаком формулы является знак (=) «равно» в первой позиции.
Видимое содержимое ячейки может быть результатом вычисления по формуле, которая может быть не видна в ячейке. В строке формул формула видна всегда. Функцию можно считать частным случаем формулы.
При изменении значений в ячейках с исходными данными формулы, которые ссылаются на эти ячейки, пересчитываются автоматически. Исходными данными для формул могут быть ячейки с формулами.
Пример: =С13 – С19.
Дата
содержит день, месяц, год и разделитель даты.
Для дат существует две арифметические операции:
1. сложение и вычитание с целыми числами (пересчет даты),
2. вычитание дат (длительность периода).
В компьютере даты хранятся как номер дня от 1-го января 1900 года или от другого.
Пример: если сложить дату 01 марта с числом 70, то получится дата 09 мая..
Число
включает в себя цифры, знаки +/- , десятичную точку (запятую), признак порядка Е.
Пример:18000, 1.8Е4.
Текст
– включает в себя произвольный набор символов. К тексту будет отнесена информация, которая не подходит к предыдущим четырем типам. Для явного указания, что это текст используется специальный первый символ: кавычки или пробел.
Пример: ФнФ, ‘12345.
Для придания внешнего вида данным в ячейках применяется их форматирование.
Форматирование
– правила, параметры и процедуры внешнего вида данных в ячейках.
Формат
– запись правил форматирования.
Форматирование не изменяет содержания данных. Оно изменяет только их внешнее представление. Для разных ячеек можно применять разное форматирование. В тексте можно по-разному форматировать символы. В строке формул данное почти не форматируется.
Для числовых данных используются следующие форматы:
· Основной формат. За основной принимается наиболее используемый, по мнению разработчика, формат.
· Фиксированный формат. Устанавливается определенное число цифр после десятичной точки. Например, для формата с двумя знаками после точки ввод «12345» обеспечит число «123.45».
· Процентный формат. Обеспечивает представление чисел в форме процентов. Например, ввод «0.123» обеспечит видимое представление «12,3%».
· Денежный формат. Разделяет тысячи пробелом или другим символом и добавляет знак денежной единицы.
· Научный формат. Представляет число с плавающей точкой в виде «мантисса плюс порядок». Например, ввод «1234» дает число «0,1234Е+4».
Если ширина ячейки недостаточна для предоставления числового данного или даты, то в ячейке появляются символы * или #.
Кроме данных в каждой ячейке электронной таблицы хранится вспомогательная информация. Структура информации ячейки можно представить по пяти уровням (рис 10.2).
Рис. 10.2. Уровни ячейки
1-й уровень содержит видимое на экране изображение, т.е. отформатированный текст или результат вычисления формулы.
2-й уровень содержит форматы ячейки (формат чисел, шрифты, выключатель (включатель) признак показывать или нет ячейку, вид рамки, защита ячейки).
З-й уровень содержит формулу, которая может состоять из текста, числа или встроенных функций.
4-й уровень содержит имя ячейки. Это имя может использоваться в формулах других ячеек, при этом обеспечивается абсолютная адресация данной ячейки.
5-й уровень содержит примечания данной ячейки (произвольный текст). Если ячейка содержит примечание, то в правом верхнем углу появляется красный квадратик (точка)
Если копировать формулу из одной ячейки в другую, то в новой ячейке мы увидим другую формулу. Знаки операций сохранятся, но адреса ячеек исходных данных могут измениться. Изменение формулы при ее копировании и перемещении происходит по определенному правилу.
Для указания адресов ячеек в электронных таблицах используются относительные и абсолютные ссылки.
Абсолютная ссылка
– это не изменяющийся при копировании и перемещении формулы адрес ячейки с исходными данными.
Для указания абсолютной ссылки используется знак доллара ($) перед номером строки и\или столбца. Он означает, что при копировании и перемещении формулы соответствующий номер строки и/или столбца не изменится.
Пример: $А$24 - полная абсолютная ссылка. $A24, A$24 - частичные абсолютные ссылки.
Относительная ссылка
- это изменяющийся при копировании и перемещении формулы адрес ячейки с исходными данными.
Признаком относительной ссылки является отсутствие знака доллара $. Разница между абсолютной и относительной ссылками появляется только при копировании и перемещении формулы с этой ссылкой.
Изменение формулы при ее копировании и перемещении происходит по следующему правилу.
При копировании и перемещении формулы относительные адреса ячеек с ее исходными данными изменяются так, чтобы сохранить положение ячеек с исходными данными относительно новой ячейки с формулой.
Правило иллюстрируется на следующих примерах, где формула копируется из ячейки В2 в ячейку С2..
А
|
В
|
С
|
А
|
С
|
1
|
|
1
|
|
2
|
=А1+В3
|
2
|
=В1+С3
|
3
|
3
|
Рис.10.2. Правило относительной ориентации.
|
А
|
В
|
С
|
А
|
В
|
С
|
1
|
1
|
2
|
=
$А1+В3
|
2
|
=
$A1+С3
|
3
|
3
|
|
Рис.10.3. Правило относительной ориентации.
|
Под технологией
понимается определенная последовательность действий, приводящая к решению поставленной задачи.
Хотя работа в каждом табличном процессоре имеет свои особенности, можно сформулировать обобщенную, усредненную технологию. По этой технологии работа с таблицей состоит из 4-х этапов:
- формирование таблицы,
- исследование таблицы,
- графическое представление,
- печать.
Каждый из этапов в свою очередь может состоять из частей. Обобщенная технология представлена на рис.
На этапе 1 выбирается расположение таблицы, вводятся заголовки, исходные данные и формулы.
На этапе 2 данные исследуются с помощью математических моделей одновременной работы с несколькими таблицами, методов работы с базами данных.
Математическая модель
– упрощенное, формальное описание части окружающего мира.
Математические модели на основе имеющихся данных позволяют получить новую информацию.
Задача типа «Что будет, если»
дает возможность узнать значения выходных данных при известных значениях входных данных. Задача типа «Как сделать, чтобы»
является обратной и позволяет подобрать исходные данные, которые обеспечивают заданный уровень выходных данных.
Анализ чувствительности
– получение скоростей изменения (производных) зависимых данных при изменении независимых данных.
Оптимизация
– выбор наилучшего решения из множества возможных решений. Понятие наилучшего предполагает использование некоторого критерия, целевой функции, для которой достигнуто наибольшее или наименьшее значение.
Иногда электронные таблицы составляются разными сотрудниками в разных подразделениях фирмы. В таких условиях появляется необходимость объединения таблиц в единую информационную структуру.
База данных
более широкое понятие, чем электронная таблица. В табличном процессоре реализуются некоторые операции баз данных: поиск, сортировка, фильтр.
На этапе 3 данные представляются в виде диаграмм и графиков.
На этапе 4 полученные результаты выводятся на печать.
Разработка любой электронной таблицы начинается с постановки цели и постановок задач. Постановка цели
- это ответ на вопрос «зачем». Зачем таблица? Для чего данные? Цель таблицы обычно записывается в ее заголовке, например: «Бюджетный отчет прошлого года».
Постановка задачи
– это ответы на вопросы: что и как? Задачи содержат и дают средства для достижения цели (построить диаграмму, составить прогноз).
Часто информация о деятельности фирмы представлена в нескольких таблицах. Для объединения нескольких таблиц в единую структуру существует три механизма:
- межтабличные связи;
- консолидация таблиц;
- объединение файлов.
Связи между таблицами организуются с помощью внешних ссылок
, которые кроме адреса ячейки содержат имя листа и имя файла, данные из которых используются.
Например: [Продажи]Выксунский!С4.
Таблица, внутри которой находятся внешние ссылки, называется основной
. Таблица, на которую ссылки указывают, называется дополнительной
. Вначале должны быть загружены дополнительные таблицы, а затем основные таблицы.
Режим консолидации содержит команды для объединения таблиц и частей. Таблицы могут располагаться на разных листах и в разных файлах. Например, в одну таблицу можно свести таблицы от разных фирм.
Объединение файлов формирует одну таблицу из нескольких исходных. Команда объединения имеет три формы:
- копирование
- суммирование
- вычитание
Перед объединением подготавливается шаблон результирующей таблицы. При копировании данные из исходных таблиц переносятся без изменений, при суммировании – складываются (итоги), при вычитании – вычитаются (приросты).
Макрос
– последовательность команд табличного процессора, записанная ранее под общим названием.
Макросы автоматизируют часто повторяющиеся этапы подготовки таблицы. Создание макроса состоит из 4-х этапов:
- определение цели макроса, например, объединение данных от разных магазинов.
- определение последовательности команд по достижению цели. Команды задаются или нажатием клавиш и кнопок или записью операторов внутреннего алгоритмического языка.
- набор с клавиатуры,
- присвоение макросу имени и горячей клавиши.
Для облегчения 2-го и 3-го этапов в табличном процессоре имеется средство макрорекордер, который позволяет сразу видеть результаты нажатий клавиш.
База данных
(БД) – поименованная совокупность данных вместе со способом их организации (структурирования).
Система управления базой данных (СУБД)
– программное средство, предназначенное для создания, хранения и обработки БД.
К числу СУБД относятся такие программные средства как: Oracle, Access, FoxPro, Clarion, SQL Server, Sybase, Informix, Paradox, Interbase, Pervasive и другие.
Банк данных
= БД+СУБД.
Предметная область
– часть окружающего мира, информация о которой хранится в БД.
В разных БД хранится данные о разных предметных областях и наоборот.
Все СУБД, в той или иной степени, обладают следующими пятью свойствами:
- Сепаратность доступа.
Сепаратность (раздельность) понимается в двух аспектах:
а) сепаратность по пользователям, с БД могут работать несколько пользователей одновременно и независимо;
б) сепаратность по данным, каждый пользователь работает не со всей, а только с частью БД.
- Целостность данных.
Данные в БД не должны противоречить друг другу. Целостность еще называют непротиворечивостью данных. Например, в БД не должно быть информации о продвижении по службе сотрудника, данных о котором в БД не представлено. Итог, записанный в приходном ордере, должен быть равен сумме по строкам соответствующей ведомости.
3.
Секретность.
С помощью шифров и паролей ограничен доступ к модулям СУБД и частям БД.
- Синхронизация.
Запросы к данным должны быть упорядочены во времени. Например, запросы на изменение подразделения сотрудника при его переводе должны происходить в определенном порядке.
- Защита от отказов.
С помощью избыточности данных и их дублирования после сбоев аппаратуры, программ и пользователя данные не теряются и восстанавливаются.
Комитет CODASYL (COnference DAta SYstems Languages), Организация пользователей IBM, Ассоциация вычислительных машин (ACM) сформулировали следующие требования к организации баз данных.
- Установление многосторонних связей
Метод организации данных должен обеспечивать получение требуемого варианта данных из существующей структуры данных и их связей.
- Производительность
БД должна обеспечивать требуемую пропускную способность запросов и требуемое время отклика.
- Минимальные затраты
Выбираются методы организации, которые минимизируют требования к внешней памяти.
- Минимальная избыточность
Целью организации БД должно быть уменьшение избыточных данных и контроль за теми противоречиями, которые вызываются их наличием.
- Возможности поиска
Пользователь БД может обращаться к ней со множеством запросов некоторого типа.
- Целостность
Хранение данных, их обновление, процедуры изменения должны быть такими, чтобы при сбоях и ошибках данные восстанавливались без потерь.
- Безопасность и секретность
Под безопасностью данных понимают защиту данных от случайного или преднамеренного доступа к ним лиц, не имеющих на это право, от неавторизованной модификации данных или их уничтожения.
Секретность определяют как право отдельных лиц или организаций определять, когда, как и какое количество информации может быть передано другим лицам или организациям.
- Связь с прошлым
Новое программное обеспечение должно быть совместимо с существующими программами. Проблема связи с прошлым, однако, не должна сдерживать развития БД.
- Связь с будущим
БД должна быть запланирована таким образом, чтобы ее изменения не требовали изменения прикладных программ.
- Простота использования
Интерфейс СУБД должен предполагать, что конечный пользователь не имеет необходимых знаний по теории баз данных.
По технологии обработки БД делятся на централизованные и распределенные.
Централизованная
БД хранится в одной ЭВМ.
Распределенная
БД хранится на нескольких ЭВМ.
По способу доступа к данным БД разделяется на БД с локальным и удаленным доступом.
При локальном доступе
запрос к данным поступает с того же компьютера, где данные хранятся. При удаленном доступе
запрос к данным производится с другого компьютера. Удаленный доступ еще называют сетевым.
Компьютер, на котором данные хранятся, называется сервером
. Компьютер, с которого данные запрашиваются, называется рабочей станцией
.
Чаще всего применяются централизованные базы данных с удаленным доступом. Для таких систем разработаны две технологии:
1. файл сервер
2. клиент сервер.
При технологии «файл сервер
» данные в основном обрабатываются на рабочих станциях, для чего станции запрашивают у сервера необходимые файлы данных.
Сервер только хранит данные и может быть не мощным. Недостатком технологии файл-сервер является большой объем переносимой информации по сети (трафик). Например, для получения списка сотрудников отдела станция запрашивает и получает по сети список сотрудников всей организации. Схема технологии представлена на рис 11.1.
Сервер Сервер хранение
обработка
Файлы БД Извлеченные данные
Рабочие станции Рабочие станции
Рис.4.1.Технология «Файл-сервер». Рис.4.2.Технология «Клиент-сервер»
|
При технологии «клиент-сервер
» рабочая станция посылает на сервер текст запроса к данным. Обработку запроса производит сервер, после обработки данные посылаются на рабочую станцию. В большинстве операций обработки (фильтр, обобщение) объем данных сокращается. Поэтому сокращается объем переносимой по сети информации (трафик) сокращается.
При технологии клиент-сервер нужен мощный сервер. Однако нагрузка на сеть гораздо меньше, чем при технологии файл-сервер.
Развитием технологии «клиент-сервер» является технология «тонкий клиент
». В этой технологии на сервере проводятся не только стандартные операции обработки данных (сортировка, фильтр, обобщение, поддержка целостности), но и все другие операции обработки. Рабочая станция служит только для приема команд пользователя и для отображения результатов и совершенно не обрабатывает данных. Станции даже могут не иметь жестких дисков.
Объектами хранения в текстовых
БД являются тексты. Под текстом понимаются неструктурированные данные, состоящие из слов. Основной целью текстовой БД является хранение, поиск и выдача документов, соответствующих запросу пользователя. Такие документы называются релевантными
.
По степени универсальности различают:
- Специализированные СУБД,
- СУБД общего назначения.
Специализированные СУБД ориентированы на какую-либо предметную область и для другой области неприменимы. К таким СУБД, например, можно отнести программы бухгалтерии, банковские системы, расчет смет.
СУБД общего назначения охватывают широкий класс задач. Они обладают языковыми средствами настройки на конкретную область и являются, по сути, инструментальным средством для создания специализированных СУБД.
Из СУБД общего назначения выделяются хранилища данных. Они предназначены только для хранения данных, обеспечения сепаратности, целостности, секретности, синхронизации и защиты от отказов. Они не содержат средств для создания интерфейса пользователя.
Под сущностью
понимается предмет, явление, процесс, событие окружающего мира, например склад, выдача зарплаты, приходная накладная. Сущность описывается некоторыми характеристиками.
Атрибут
– логически неделимый параметр, характеристика, свойство сущности, способный принимать значение (быть чему то равным).
Объект данных
– описание представителя некоторой сущности реального мира, в виде логически связанных атрибутов. Объект данных хранится в БД.
Следующие два положения принимаются в теории БД как аксиома отличия:
«Значениями атрибутов один объект данных отличается от другого. Не может быть двух объектов данных, у которых попарно равны значения всех атрибутов.»
Объекты данных могут объединяться в наборы объектов по некоторому общему признаку. Этот общий признак обычно выносится в название набора объектов, например, Начисления, Платежи.
В описании объекта данных нужно выделить 2 составляющие: структуру и экземпляр.
Структура
– перечень атрибутов объекта и характеристики атрибутов.
Экземпляр
– совокупность значений атрибутов.
Структура изменяется крайне редко. Экземпляр подвержен изменениям.
При хранении в ЭВМ базе данных соответствует группа файлов и папок, набору объектов соответствует файл. Каждому объекту соответствует запись в файле. Каждому атрибуту соответствует поле записи.
Для описания атрибута используются следующие характеристики:
1. имя, например, nContract, cStudent;
2. тип, например, символьный, числовой;
3. длина, например, 15 байт;
4. точность, для числовых данных.
5. описание, комментарий;
6. формат изображения на экране и бумаге;
7. подсказка;
8. формат ввода;
9. начальное значение;
10. диапазон значений.
Ключ
– это средство упорядочивания объектов в наборе. Ключ содержит ключевое выражение,
составляемое из атрибутов объектов. По возрастанию значения ключевого выражения объекты предъявляются для просмотра и обработки.
Для одного набора можно задать несколько ключей. Например, для набора Работники можно задать ключ по алфавиту фамилий, работники будут предъявляться по алфавиту.
Ключ называется первичным
, если по одному значению его выражения из набора выделяется 0 или 1 объект. Например, для набора работников ключ «По табельному номеру» первичный, так как по одному значению табельного номера выделяется или ни одного, или только один работник.
Ключ называется вторичным
, если по одному значению его выражения из набора выделяются 0 и более объектов. Например, ключ для набора работников ключ «По алфавиту фамилий» вторичен, так как среди работников могут быть однофамильцы.
По аксиоме отличия у каждого набора существует первичный ключ. В крайнем случае в его выражение включает все атрибуты объекта в наборе.
Хорошей практикой служит введение для объекта данных искусственного атрибута «Порядковый № в наборе», который автоматически присваивается и уникален. Ключ по такому атрибуту называется суррогатным
.
Заметим, что понятия первичного и вторичного ключа не зависят от количества и значений объектов в наборе. Первичные и вторичные ключи бывают для пустых наборов.
Пусть имеется n наборов объектов Е1
, Е2,
… , Еn
.
Связью
называется множество последовательностей объектов (еi
1
, еi
2,
…, еi
n
), где еi
1
Î Е1,
еi
2
Î Е2, …,
еi
n
Î Еn.
С помощью связей наборы объектов объединяются в единую информационную структуру.
Между двумя наборами объектов (n=2) различают три типа связей:
1. один к одному ( 1:1 );
2. один ко многим ( 1:М );
3. много ко многим ( М:N ).
Связь между двумя наборами Е1
и Е2
относится к типу «один к одному»,
если для каждого объекта из первого набора можно указать 0 или
1
объект из второго набора и для каждого объекта из второго набора можно указать 0 или 1
объект из первого набора.
Примерами связей типа 1:1 служат связи между:
· студентами и зачетными книжками,
· между государствами и валютами,
· между офицерами и табельным оружием,
· между гражданами и заграничными паспортами. У каждого студента или нет зачетной книжки, или есть только одна.
Для каждой зачетки или студент не указан, или имеется только один.
Связь между двумя наборами Е1
и Е2
относится к типу «один ко многим»
, если для каждого объекта из первого набора можно указать 0 или
более
объектов из второго набора и для каждого объекта из второго набора можно указать 0 или 1
объект из первого набора.
Примерами связей 1:М служат связи между
· банками и вкладами,
· вкладами и взносами,
· между группами и студентами,
· между отделами и сотрудниками,
· между ведомостями и строками ведомостей,
· между клиентами и заявками.
В каждом банке или нет вкладов (банк еще не открылся) или может быть много вкладов. Для каждого вклада или банк не указан, или есть только один.
Связь между двумя наборами Е1
и Е2
относится к типу «многие ко многим»
, если для каждого объекта из первого набора можно указать 0 или
более
объектов из второго набора и для каждого объекта из второго набора можно указать 0 или более
объектов из первого набора.
Примерами связей M:N служат связи между
· продуктами и странами,
· между студентами и дисциплинами,
· между сотрудниками и проектами,
· между заявками и товарами,
· между магазинами и покупателями.
Каждый продукт может поставляться из многих стран и не поставляться вовсе. Каждая страна может поставлять много продуктов и не поставлять никаких.
Графически связи изображаются стрелками (рис.4.5).
В реальных СУБД реализуется только один тип связи – один ко многим.
Связь 1:1 получается из связи 1:М путем ее ограничения.
Для реализации связи М:N вводится новый набор объектов и используются две связи 1:М.
Например, связь между странами и продуктами типа M:N получается с помощью набора данных «поставки» (рис.4.6).
M : N
Страны Продукты
1 : М
1 : М
Поставки
Рис.4.6. Реализация связи M : N.
|
связь М:1 это связь 1:М.
Модель данных
– это совокупность трех групп логических правил:
- описание структуры данных,
- правила целостности и непротиворечивости данных,
- операции манипулирования с данными.
Существует три вида моделей данных: иерархическая, сетевая, реляционная.
В иерархической
модели база данных представляется в виде иерархически упорядоченных структур – деревьев (диаграммы Бахмана).
Каждая вершина дерева означает объект данных, каждая дуга означает связь между объектами. Все вершины графа – дерева распределены по уровням. Каждая вершина низшего уровня связана только с одной вершиной из верхнего уровня. Связей внутри уровня и через уровень не существует. На самом верхнем уровне существует только одна вершина - корень дерева.
корень
2-й уровень
Пример, описание ННГУ в иерархической модели выглядит так 2 уровень.
Корень дерева Вуз
Уровень 1. Университет вершины
Уровень 2. Финансовый ф-т Мехмат
связи
Уровень 3. Группа 1311
Уровень 4. Иванов И.И.
Рис. 4.3. Иерархическая модель
Ниже перечислены преимущества иерархической модели.
· Простота модели. Иерархия базы данных напоминает структуру компании или генеалогическое дерево.
· Использование отношений предок/потомок. СУБД позволяет легко представлять отношения подчиненности, например: «А является частью В» или «А владеет В».
· Быстродействие. В СУБД отношения предок/потомок реализованы в виде физических указателей из одной записи на другую, вследствие чего перемещение по базе данных происходило быстро.
Групповое отношение
- иерархическое отношение между записями двух типов. Родительская запись называется исходной записью, а дочерние записи – подчиненными.
Для групповых отношений в иерархической модели обеспечивается автоматический режим включения
и фиксированное членство.
Это означает, что для запоминания любой некорневой записи в БД должна существовать ее родительская запись. При удалении родительской записи автоматически удаляются все подчиненные.
Недостатки иерархических БД:
· Каждый объект данных может участвовать только в одной иерархии объектов. Поэтому, если объект должен присутствовать в нескольких иерархиях, то его приходится дублировать.
Например, данные о сотруднике должны участвовать в иерархии подчиненности отделам и в подчиненности контрактам в качестве исполнителей (такие записи называют парными). В иерархической модели не предусмотрена поддержка соответствия между парными записями.
· . Иерархическая модель реализует отношение между исходной и дочерней записью по схеме l:N, то есть одной родительской записи может соответствовать любое число дочерних. Допустим теперь, что исполнитель может принимать участие более чем в одном контракте (т.е. возникает связь типа M:N). В этом случае в базу данных необходимо ввести еще одно групповое отношение, в котором Исполнитель будет являться исходной записью, а контракт – дочерней. Таким образом, мы опять вынуждены дублировать информацию.
· Изменение структуры данных требует перестройки всей системы указателей на записи.
Чтобы получить доступ к данным, содержащимся в базе данных, СУБД может:
· найти конкретный объект (Финансовый факультет) по его номеру;
· перейти «вниз» к первому потомку (Группа 13101);
· перейти «вверх» к предку (Университет);
· перейти «в сторону» к другому потомку (Мехмат).
Таким образом, для чтения данных из иерархической базы данных требуется перемещаться по записям, за один раз переходя на одну запись вверх, вниз или в сторону.
Поддерживается только целостность связей между владельцами и членами группового отношения (никакой потомок не может существовать без предка).
Типичным представителем иерархической модели является СУБД Information Management System (IМS) фирмы IBM. Первая версия появилась в 1968 г.
В сетевой
модели БД изображается в виде графа произвольной структуры (рис 11.4.).
Основные различия двух моделей состоят в том, что в сетевой модели запись может быть членом более чем одного
группового отношения.
Согласно сетевой модели каждое групповое отношение именуется и проводится различие между его типом и экземпляром. Тип группового отношения задается его именем и определяет свойства, общие для всех экземпляров данного типа. Экземпляр группового отношения представляется записью-владельцем и множеством (возможно пустым) подчиненных записей. При этом имеется следующее ограничение: экземпляр записи не может быть членом двух экземпляров групповых отношений одного типа (т.е. сотрудник, например, не может работать в двух отделах).
Каждый экземпляр группового отношения характеризуется следующими признаками:
1. способ упорядочения подчиненных
записей:
- произвольный,
- хронологический /очередь/,
- обратный хронологический /стек/,
- сортированный.
Если запись объявлена подчиненной в нескольких групповых отношениях, то в каждом из них может быть назначен свой способ упорядочивания.
2. режим включения подчиненных
записей:
- автоматический - невозможно занести в БД запись без владельца;
- ручной - позволяет запомнить в БД подчиненную запись и не включать ее немедленно в экземпляр группового отношения. Эта операция позже инициируется пользователем.
3. режим
исключения
Принято выделять три класса членства подчиненных записей в групповых отношениях:
1. Фиксированное.
Подчиненная запись жестко связана с записью владельцем и ее можно исключить из группового отношения, только удалив. При удалении записи-владельца все подчиненные записи автоматически тоже удаляются.
2. Обязательное.
Допускается переключение подчиненной записи на другого владельца, но невозможно ее существование без владельца. Для удаления записи-владельца необходимо, чтобы она не имела подчиненных записей с обязательным членством. Таким отношением связаны записи "СОТРУДНИК" и "ОТДЕЛ". Если отдел расформировывается, все его сотрудники должны быть либо переведены в другие отделы, либо уволены.
3. Необязательное.
Можно исключить запись из группового отношения, но сохранить ее в базе данных, не прикрепляя к другому владельцу. При удалении записи-владельца ее подчиненные записи - необязательные члены сохраняются в базе, не участвуя более в групповом отношении такого типа. Примером такого группового отношения может служить "ВЫПОЛНЯEТ" между "СОТРУДНИКИ" и "КОНТРАКТ", поскольку в организации могут существовать работники, чья деятельность не связана с выполнением каких-либо договорных обязательств перед заказчиками.
Как и в иерархической модели обеспечивается только поддержание целостности по ссылкам (владелец отношения - член отношения).
Сетевые базы данных обладали рядом преимуществ:
· Гибкость. Множественные отношения предок/потомок позволяли хранить данные, структура которых была сложнее простой иерархии.
· Стандартизация. Появление стандарта CODASYL обеспечили популярность сетевой модели.
· Быстродействие. Вопреки своей большой сложности, сетевые базы данных достигли быстродействия, сравнимого с быстродействием иерархических баз данных. Множества были представлены указателями на физические записи данных.
Конечно, у сетевых баз данных были недостатки. Как и иерархические базы данных, сетевые базы данных были очень жесткими. Наборы отношений и структуру записей приходилось задавать наперед. Изменение структуры базы данных обычно означало перестройку всей базы данных.
Как иерархическая, так и сетевая база данных были инструментами программистов. Чтобы получить ответ на вопрос типа: «Какой товар наиболее часто заказывает компания Паровые машины?», программисту приходилось писать программу для навигации по базе данных. Реализация пользовательских запросов часто затягивалась на недели и месяцы, и к моменту появления программы информация, которую она предоставляла, часто оказывалась бесполезной.
Типичным представителем является Integrated Database Management System (IDMS) компании C
и
llinet
Software, Inc.
Практически все существующие СУБД в наше время используют реляционную модель данных.
Реляционная модель
ориентирована на представление данных в виде двумерных таблиц.
Множество атрибутов объекта данных образует кортеж
.
Отношением
(relation) называется множество кортежей, обладающее следующими свойствами:
* все кортежи однородны, т.е. имеют одинаковое количество и характеристики атрибутов;
* атрибуты в кортежах неупорядочены;
* кортежи в отношении неупорядочены;
Если проигнорировать последние 2 свойства, то отношение можно изображать в виде двумерной таблицы, в которой строки соответствуют кортежам, а столбцы - атрибутам. В таблице строки и столбцы все-таки упорядочены – есть первый и следующий, последний.
Понятие «отношение» позволяет отделить проблему хранения данных от проблемы их упорядочения. Проблема упорядочения решается с помощью особого средства – ключей. Также становится несущественным физический порядок хранения объектов данных на внешних носителях информации. Новые данные добавляются в конец файла или на место удаленных данных внутри файла.
Одни и те же данные могут группироваться в отношения различным образом.
Отношение представляет собой некую связь между объектами данных.
Дадим несколько понятий, используемых в теории БД.
Недействительное значение
– значение, соответствующее отсутствию данных.
Они используются для обозначения того факта, что атрибуту ничего не присвоено, по причине того, что отсутствует, потеряно, неизвестно, недоступно или неприменимо значение. Часто обозначается как NULL. Отличается от строк нулевой длины, строки пробельных символов, от нуля и любого другого числа.
Транзакция
– групповое изменение данных.
Транзакция имеет начало и окончание, между которыми обозначены операции обработки данных. Операции выполняются, но изменения данных не попадают в БД, пока не произойдет нормального окончания транзакции. При ненормальном окончании происходит возвращение БД к тому состоянию, в котором она была до начала транзакции (откат БД). Лозунг транзакции: «Все или ничего». Транзакции введены для защиты от сбоев и для ситуаций, когда частичное изменение данных бессмысленно.
Например, изменение фамилии работника должно произойти или для всех его платежей, или ни для одного. Ситуация частичного изменения здесь недопустима.
Другой пример. Перечисление денег внутри банка состоит из двух операций: снятие денег с одного счета и зачисление их на другой счет. Представим себе, что после первой операции произошел сбой. Тогда деньги будут сняты со счета, но не появятся на другом счете. Это нарушит баланс между расходами и доходами. Поэтому операции должны быть или выполнены обе, или не выполнена ни одна.
Представление
– искусственная временная таблица, созданная из одной или нескольких таблиц БД.
Представления позволяют создавать таблицы, которых нет в БД. После создания представления с ним можно работать как с обычной таблицей.
Блокировка
– запрет на доступ и модификацию записи или таблицы.
Используется для того, чтобы другой пользователь не мог прочитать и модифицировать запись или таблицу в то время, когда Вы ими пользуетесь. Имеют смысл только в многопользовательской СУБД.
Обновление
– обобщенное название для трех операций: добавления, изменения и удаления записи.
Тэд Кодд в 1969 году сформулировал двенадцать правил, которым должна соответствовать настоящая реляционная база данных. (табл 11.1). Они являются полуофициальным определением понятия «реляционная база данных».
Таблица 11. 1.
1. Правило информации
|
Вся информация в базе данных должна быть представлена только одним способом - в виде значений, содержащихся в таблицах.
|
2. Правило гарантированного доступа
|
Доступ ко всем и каждому элементу данных (атомарному значению) гарантированно обеспечивается путем использования комбинации имени таблицы, имени столбца и значения первичного ключа.
|
3. Правило поддержки недействительных значений
.
|
В настоящей реляционной базе данных должна быть реализована поддержка недействительных значений, которые отличаются от строки символов нулевой длины, строки пробельных символов, от нуля или любого другого числа и используются для представления отсутствующих данных независимо от типа этих данных.
|
4. Правило динамического каталога
.
|
Описание структуры базы данных на логическом уровне должно быть представлено в том же виде, что и основные данные, чтобы пользователи, обладающие соответствующими правами, могли работать с ним с помощью того же реляционного языка, который они применяют для работы с основными данными.
|
5. Правило исчерпывающего подъязыка данных
.
|
Реляционная система может поддерживать различные языки и режимы взаимодействия с пользователем. Однако должен существовать, по крайней мере один язык, который в полной мере поддерживает следующие элементы:
- определение данных;
- определение представлений;
- обработку данных (интерактивную и программную);
- условия целостности;
- идентификация прав доступа;
- границы транзакций (начало, завершение и отмена).
|
6. Правило обновления представлений
|
Все представления, которые теоретически можно обновить, должны быть доступны для обновления.
|
7. Правило добавления, изменения и удаления
.
|
Возможность работать с отношением как с целым должна существовать не только при чтении данных, но и при добавлении, изменении и удалении данных.
|
8.
Правило независимости физических данных
|
Прикладные программы для работы с данными должны на логическом уровне оставаться нетронутыми при любых изменениях способов хранения данных или методов доступа к ним.
|
9.
Правило независимости логических данных.
|
Прикладные программы для работы с данными должны на логическом уровне оставаться нетронутыми при внесении в базовые таблицы любых изменений, которые теоретически позволяют сохранить нетронутыми содержащиеся в этих таблицах данные.
|
10.
Правило независимости условий целостности.
|
Должна существовать возможность определять условия целостности специфически для конкретной реляционной базы данных, на подъязыке реляционной базы данных и хранить их в самой базе данных, а не в прикладной программе.
|
11.
Правило независимости распространения.
|
Реляционная СУБД не должна зависеть от потребностей конкретного клиента.
|
12.
Правило единственности
|
Если в реляционной системе есть низкоуровневый язык (обрабатывающий одну запись за один раз), то должна отсутствовать возможность использования его для того, чтобы обойти правила и условия целостности, выраженные на реляционном языке высокого уровня (обрабатывающем несколько записей за один раз).
|
Правило 1 гласит, что вся информация в реляционных базах данных представляется значениями в таблицах. Все данные представляются в табличном формате - другого способа просмотреть информацию в базе данных не существует. Набор связанных таблиц образует базу данных. Таблицы в реляционной базе разделены, но полностью равноправны. Между ними не существует никакой иерархии.
Правило 2 указывает на роль первичных ключей при поиске информации в базе данных. Имя таблицы позволяет найти требуемую таблицу, имя столбца позволяет найти требуемый столбец, а значение первичного ключ позволяет найти строку, содержащую искомый элемент данных.
Правило 3 требует, чтобы отсутствующие данные можно было представить с помощью недействительных значений (NULL). Существенно, что использование нулей инициирует переход с двухзначной логики (да/нет) на трехзначную (да/нет/может быть).
Правило 4 гласит, что реляционная база данных должна сама себя описывать. В реляционной базе данных существует два типа таблиц - пользовательские таблицы и системные таблицы. Пользовательские таблицы содержат информацию. Системные таблицы описывают структуру самой базы данных, однако доступ к ним можно получить так же, как и к любым другим таблицам.
Правило 5 требует, чтобы СУБД использовала язык реляционной базы данных, например SQL, хотя явно SQL в правиле не упомянут. Такой язык должен поддерживать все основные функции СУБД - создание базы данных, чтение и ввод данных, реализацию защиты базы данных и т. д.
Правило 6 касается представлений, которые являются виртуальными таблицами. Виртуальные таблицы, в отличие от «настоящих» таблиц, физически не хранятся в базе данных. В то же время необходимо осознавать, что виртуальные таблицы это не копия некоторых данных, помещаемая в другую таблицу. Когда вы изменяете данные в виртуальной таблице, то тем самым изменяете данные в базовых таблицах. В идеальной реляционной системе с виртуальными таблицами можно оперировать, как и с любыми другими таблицами. Это одно из правил, которые сложнее всего реализовать на практике.
Правило 7 акцентирует внимание на том, что базы данных по своей природе ориентированы на множества. Оно требует, чтобы операции добавления, изменения и удаления можно было выполнять над множествами строк. Это правило запрещает реализации, в которых поддерживаются операции только над одной строкой.
Правило 8 и 9 означают отделение пользователя и прикладной программы от низкоуровневой реализации базы данных. Они утверждают, что конкретные способы реализации хранения или доступа, используемые в СУБД, и даже изменения структуры таблиц базы данных не должны влиять на возможность пользователя работать с данными. Реляционная модель обеспечивает независимость данных на двух уровнях - физическом и логическом. Физическая независимость данных означает с точки зрения пользователя, что представление данных абсолютно не зависит от способа их физического хранения. Логическая независимость означает, что изменение взаимосвязей между таблицами и строками, их структура не влияют на правильное функционирование программ и текущих запросов.
Правило 10 гласит, что язык базы данных должен поддерживать ограничения на вводимые данные и на действия, которые могут быть выполнены над данными. Целостность - очень сложный и серьезный вопрос при управлении реляционными базами данных. Несогласованность или противоречивость данных может возникать вследствие сбоя системы - проблемы с аппаратным обеспечением, ошибки в программном обеспечении или логической ошибки в приложениях. Реляционные системы управления базами данных защищают данные от такого типа несогласованности, гарантируя, что команда либо будет исполнена до конца, либо будет полностью отменена.
Другой тип целостности, называемый объектной целостностью, связан с корректным проектированием базы данных. Объектная целостность требует, чтобы ни один первичный ключ не имел нулевого значения.
Третий тип целостности, называемой ссылочной целостностью, означает непротиворечивость между частями информации, повторяющимися в разных таблицах. Например, если вы изменяете неправильно введенный номер карточки страхового полиса в одной таблице, другие таблицы, содержащие эту же информацию, продолжают ссылаться на старый номер, поэтому необходимо обновить и эти таблицы. Чрезвычайно важно, чтобы при изменении информации в одном месте, она соответственно изменялась и во всех других местах. Кроме того, по определению Кодда, ограничения на целостность должны:
- Определяться на языке высокого уровня, используемом системой для всех других целей;
- Храниться в базе данных, а не в программных приложениях.
Эти возможности в том или ином виде реализованы в большинстве СУБД.
Правило 11 гласит, что язык базы данных должен обеспечивать возможность работы с распределенными данными, расположенными на других компьютерных системах.
И, наконец, правило 12 предотвращает использование других возможностей для работы с базой данных, помимо языка базы данных, поскольку это может нарушить ее целостность.
Двенадцать правил Кодда считаются определением реляционной СУБД. Однако можно сформулировать и более простое определение:
Реляционной
называется база данных, в которой все данные, доступные пользователю, организованны в виде таблиц, а все операции над данными сводятся к операциям над этими таблицами.
Под целостностью связей
понимается соответствие данных в нескольких наборах объектов друг другу. Не соответствующие друг другу данные противоречат предметной области БД, т.е. окружающему миру.
Нарушение соответствия данных, целостности связей может произойти только при операциях изменения данных.
Рассмотрим правила поддержки целостности связей между двумя наборами объектов, которые применяются при операциях добавления, изменения и удаления объектов из наборов. Считается, что связь между двумя наборами относится к типу «один ко многим». Один из наборов содержит родительские объекты, другой – дочерние. Эти правила называются стандартной целостностью
. Основное требование стандартной целостности состоит в наличии для дочерних объектов ссылок на родительский объект. Всего правил десять: 2 правила при добавлении, 4 правила при изменении, 4 правила при удалении. Выбор правил зависит от предметной области.
- Добавление объекта
При добавлении дочернего объекта возможны 2 правила:
1) Запрет
Запрещено добавлять дочерний объект, если для него не указан родительский объект. Например, запрещено добавлять нового сотрудника, если для него не указано подразделение.
2) Игнорировать
Разрешено добавлять дочерний объект без указания для него родительского объекта. Например, разрешается добавлять новый первичный документ, не указывая для него сводного документа.
- Изменение объекта
Подразумеваются изменения, которые касаются ссылок в дочерних объектах. При изменении родительского или дочернего объекта возможен выбор одного из 4-х правил.
1) Запрет
Запрещено изменять в дочернем объекте ссылку на родительский объект так, что она указывает на несуществующий родительский объект.
Например, запрещено указывать для сотрудника несуществующее подразделение.
2) Каскад
При изменении родительского объекта каскадно изменяются ссылки на него во всех дочерних объектах, если изменения родительского объекта касаются таких ссылок.
Например, при изменении внутреннего номера подразделения этот номер автоматически изменяется в соответствующем атрибуте для всех сотрудников подразделения.
3) Очистить
При изменении родительского объекта, которые касаются ссылок на него, ссылки на него во всех дочерних объектах заполняются значением 0, NULL или пустой строкой.
4) Игнорировать
При изменении родительского объекта, которые касаются ссылок на него, ссылки на него во всех дочерних объектах остаются без изменений, указывая теперь на несуществующий родительский объект.
- Удаление объекта
При удалении родительского объекта возможен выбор одного из 4-х правил.
1) Запрет
Запрещено удалять родительский объект, если у него имеются дочерние объекты. Можно удалять только родительские объекты, у которых нет дочерних.
Например, нельзя удалить все данные о подразделении, в котором числятся сотрудники. Необходимо предварительно сотрудников или удалить, или перевести в другие подразделения.
2) Каскад
При удалении родительского объекта каскадно удаляются все его дочерние объекты.
Например, при удалении сотрудника удаляются все сведения об его продвижениях по службе и обо всех выплатах ему.
3) Очистить
При удалении родительского объекта ссылки на него во всех дочерних объектах заполняются значением 0, NULL или пустой строкой.
Например, при удалении сводного документа ссылки на него во всех его первичных документах заполняются пустым значением. Это будет служить признаком, что первичные документы не участвуют ни в каких сводных документах.
4) Игнорировать
При удалении родительского объекта ссылки на него во всех дочерних объектах остаются без изменений, указывая теперь на несуществующий родительский объект.
Перечисленные правила стандартной целостности стали классическими и поддерживаются во всех СУБД общего назначения.
Возможны некоторые коллизии правил, когда правила для нескольких связей вступают в противоречие друг тс другом. Например
Существуют другие, пока нестандартные правила целостности связей, которые обсуждаются ниже.
· Агрегирование
. Родительский объект содержит обобщение информации из всех его дочерних объектов.
Например, поле «Итого» расходной ведомости должно содержать сумму выдач по строкам ведомости. Например, поле «Номер комнаты» для проживающего в общежитии должно содержать номер комнаты из переселения, последнего по дате.
· Удаление последнего
. Если удаляется единственный дочерний объект, то удаляется и родитель.
Например, при удалении единственного заказа одного из клиентов, желательно удалить и соответствующую запись в списке клиентов. При добавлении объекта применяется аналогичное правило. Например, при вводе первого заказа для нового клиента автоматически добавляется клиент и о нем запрашивается информация.
· Ограниченное добавление.
Разрешается добавлять записи, удовлетворяющие определенному условию.
Например, иногда нежелательно обслуживать клиентов из определенных областей. В списке регионов такие области отмечены признаком.
Программа
- упорядоченная последовательность команд компьютера для решения задачи.
Программное обеспечение
(software) - совокупность программ и необходимых для их эксплуатации документов, предназначенных для решения задач на компьютере.
Программы предназначены для машинной реализации задач. Термины задача и приложение имеют очень широкое употребление в контексте информатики и программного обеспечения.
Термины задача
и приложение
имеют очень широкое употребление в контексте информатики и программного обеспечения.
Задача
- проблема, подлежащая решению.
Приложение
- программная реализация на компьютере решения задачи.
Таким образом, задача означает проблему, подлежащую реализации с помощью средств информационных технологий, а приложение - реализованное на компьютере решение задачи. Приложение, является синонимом слова программа.
Термин задача употребляется также в сфере программирования, особенно в режиме мультипрограммирования и мультипроцессорной обработки, как единица работы вычислительной системы, требующая выделения вычислительных ресурсов: процессорного времени, основной памяти и т.п. В данной главе этот термин употребляется в смысле первого определения.
С позиций программного обеспечения будем различать два класса задач - технологические и функциональные.
Технологические
задачи ставятся и решаются при организации технологического процесса обработки информации на компьютере. Технологические задачи являются основой для разработки сервисных средств программного обеспечения в виде утилит, сервисных программ, библиотек процедур и др., применяемых для обеспечения работоспособности компьютера, разработки других программ или обработки данных функциональных задач.
Функциональные
задачи требуют решения при реализации функций управления в рамках информационных систем предметных областей. Например, управление деятельностью торгового предприятия, планирование выпуска продукции, управление перевозкой грузов и т.п.
Процесс создания программ можно представить как последовательность действий рис 12.1, Рис. 12.1. Схема процесса создания программ
Рассмотрим эти этапы
Постановка задачи
- это точная формулировка решения задачи на компьютере с описанием входной и выходной информации.
Постановка задачи связана с конкретизацией основных параметров ее реализации, определением источников и структурой входной и выходной информации.
К основным характеристикам постановки задачи относятся:
- цель или назначение задачи, ее место и связи с другими задачами;
- условия решения задачи с использованием средств вычислительной техники;
- функции обработки входной информации;
- требования к периодичности решения задачи;
- ограничения по срокам и точности выходной информации;
- состав и форма представления выходной информации;
- источники входной информации для решения задачи;
- пользователи задачи.
Алгоритм
- система правил, определяющая процесс преобразования допустимых исходных данных в желаемый результат за конечное число шагов. Алгоритм должен обладать рядом свойств:
- дискретность
- разбиение алгоритма на более простые этапы, выполнение которых компьютером или человеком не вызывает затруднений;
- определенность
- однозначность выполнения каждого отдельного этапа;
- выполнимость
- конечность действий алгоритма решения задач, позволяющая достичь желаемый результат при допустимых исходных данных за конечное число шагов;
- массовость
- пригодность алгоритма для решения определенного класса задач.
Программирование
- теоретическая и практическая деятельность, связанная с созданием программ.
Основная категория специалистов, занятых разработкой программ, - это программисты
. Программисты неоднородны по уровню квалификации, а также по характеру своей деятельности. Наиболее часто программисты делятся на системных и прикладных.
Системн
ый программист
занимается разработкой, эксплуатацией и сопровождением системного
программного обеспечения, поддерживающего работоспособность компьютера и создающего среду для выполнения программ, обеспечивающих реализацию функциональных задач.
При
кладн
ой программист
осуществляет разработку и отладку программ для решения функциональных задач.
В условиях создания больших по масштабам и функциям обработки программ появляется новая квалификация - программист
- ана
лити
к,
который анализирует и проектирует комплекс взаимосвязанных программ для реализации функций предметной области.
В процессе создания программ на начальной стадии работ участвуют и специалисты- постановщики задач
.
При работе в группе организационно выделяются следующие программисты.
Главный программист
– осуществляет системный анализ задачи, разбивает ее на части, синтезирует программный продукт.
Библиотекарь
– ведет документацию программного продукта, утверждает изменения и версии продукта.
Кодировщик
– создает и отлаживает тексты программ на алгоритмических языках.
Тестер
– планирует испытания и проверяет работоспособность продукта. Тестер проводит альфа-тестирование
- проверку работоспособности программы силами группы разработчиков. Затем проводится бета-тестирование
- проверку работоспособности заинтересованными пользователями.
Большинство информационных систем основано на работе с базами данных (БД). Если база данных является интегрированной, обеспечивающей работу с данными многих приложений, возникает проблема организационной поддержки базы данных, которая выполняется администратором базы данных.
В некоторых ситуациях прямой контакт с техникой невозможен или нежелателен. В этом случае помощь оказывает представитель технического персонала - оператор ЭВМ
.
Основным потребителем программ служит конечн
ый п
оль
зовате
ль,
который, как правило, относится к категории пользователей-непрограммистов. Конечный пользователь не является специалистом в области программирования, т. е. не владеет методами и технологией проектирования и создания программ, но имеет элементарные знания и навыки работы с вычислительной техникой.
" .~
302 ГЛАВА 8. СОСТОЯНИЕ И ТЕНДЕНЦИИ РАЗВИТИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
Возможна эксплуатация программ квалифицированными программистами или СIIeП8' ально обученными техническими работниками - о пер а тор ам и
Э В м
Взаимодействие специалистов различного ВИДа, участвующих в разработке и ЭКСIL~ тации программ, показано на рис. 8.3. В ряде случаев один специалист совмеrэ?8! несколько 8ИДОВ деятельности. Администратор базы данных и системный программист г C~ щестВЛJIЮТ подготовку информационных и программно-технических УСЛОВИЙ для раЕ,.. программ. Пунктирные линии означают участие специалиста в качестве консультанта.
........... 1........ Постановка
задачи
J
.......... .. ............. ............. ............. ............. ......... .. .. ......... .. .. .. ...4о _.
"1
,
ОПЕРАТОР ЭВМ
ПРИКЛАДНОЙ ПРОГРАММИСТ
Anroритмизация решения 38Дачи
......................
...........................
Проrpаммироаание
:.. ......
СИСТЕМНЫЙ ПРОГРАММИСТ
Создание операционной среды выпonнения nporpaМII
:....... . .. ... " . .......
Соэдание инфор
мационной среды ...
выпonнения nporpaMU J
Рис. 8.3. Схема взаимодействия специалистов, связанных с созданием и эксплуатацией проrpамм
ХАРАКТЕРИСТИКА ПРОГРAММIIОГО ПРОДУКТА
Все программы по характеру использования и категориям пользователей можно раздел~ на два класса (рис.8.4) - утилитарные программы и программные продукты (изделия).
у т и л и т а р н ы е про гр ам мы
("программы ДI1я себя") предназначены для уД08 летворения нужд их разработчиков. Чаще Всего утилитарные программы выполНJIЮТ PrUI сервиса в технологии обработки данных либо ЯВЛJIЮТСЯ программами решения функцио нальных задач, не предназначенных для широкого распространения.
Программные продукты
(изделия) предназначены для удовлетворения 00
требностей пользователей, широкого распространения и продажи.
В настоящее время существуют и другие варианты легального распространения про граммных продуктов, которые появились с использованием глобальных или регионалl>'-:',;,r: телекоммуникаций:
Рис. 8.4. Классификация проrpамм по категориям пользователей
ПРОfPАММЫ
:?
11111111111111
.....
.
|
Каждая программа должна отвечать таким требованиям, как правильность, точность, совместимость, надежность, универсальность, защищенность, полезность, эффективность, проверяемость, адаптируемость, мобильность, дружественность.
Будем говорить, что программа является
- правильной
, если она функционирует в соответствии с техническим заданием. Подразумевается, что техническое задание составлено в четкой форме, позволяющей однозначно судить о том, действительно ли программа отвечает перечисленным в нем требованиям;
- точной
, если выдаваемые ею результаты имеют допустимые отклонения от аналогичных результатов, полученных с помощью идеальных математических зависимостей;
- совместимой
, если она работает должным образом не только автономно, но и в составе программной системы;
- надежной
, если она при всех условиях обеспечивает полную повторяемость результатов.
- универсальной
, если она правильно работает при любых допустимых вариантах исходных данных. В ходе разработки программ должны предусматриваться специальные средства защиты от ввода неправильных исходных данных;
- защищенной
, если она сохраняет работоспособность при возникновении сбоев. Это качество особенно важно для программ, предназначенных для решения задач в режиме реального времени. В подобных приложениях отказ оборудования может повлечь катастрофические последствия - например, аварию ракеты или ядерного реактора. Указанным свойством должны также обладать программы с большим временем выполнения, осуществляющие обработку постоянно хранимых файлов;
- полезной
, если задача, которую она решает, представляет практическую ценность;
- эффективной
, если объем требуемых для ее работы ресурсов не превышает допустимого предела;
- проверяемой
, если ее качества могут быть продемонстрированы на практике. Здесь подразумевается возможность проверки таких свойств программы, как правильность и универсальность. Можно применить формальные математические методы, позволяющие установить, действительно ли программа удовлетворяет техническим условиям и выдает достаточно точные результаты. Однако существуют и неформальные способы оценки качества программ такие, как прогоны с остановами в контрольных точках, обсуждения результатов с заинтересованными пользователями и др.;
- адаптируемой
, если она допускает быструю модификацию с целью приспособления к изменяющимся условиям функционирования;
- мобильной,
если она независима от аппаратуры, операционной системы, сетевого окружения, специфики предметной области;
- дружественной
, если она имеет удобный интерфейс для работы конечного пользователя, контекстно-зависимые подсказки, обучающую систему, подробную документацию и диагностику возникших ошибок.
Во многих цивилизованных странах несанкционированное копирование программ в целях продажи или бесплатного распространения рассматривается как государственное преступление, карается штрафом или тюремным заключением.
Правовые методы защиты программ являются самыми надежными и включают в себя:
- патентную защиту;
- закон о производственных секретах;
- лицензионные соглашения и контракты;
- закон об авторском праве.
Патентная защита
устанавливает приоритет в разработке и использовании нового подхода или метода, примененного при разработке программ, удостоверяет их оригинальность.
Статус производственного секрета
ограничивает круг лиц, знакомых или допущенных к эксплуатации программы, а также определяет меру их ответственности за разглашение секретов.
Лицензия
- договор на передачу одним лицом (лицензиаром
) другому лицу (лицензиату
) права на использование имени, продукции, технологии.
В лицензионном соглашении оговариваются все условия эксплуатации программ, в том числе создание копий. На каждой копии программы должны быть те же отметки, что и на оригинале:
- знак авторского права (обычно ©), название разработчика, год выпуска программы,
- знак патентной защиты или производственного секрета;
- торговые марки, соответствующие использованным в программе другим программным изделиям (обычно ™ и название фирмы-разработчика программного изделия),
- символ зарегистрированного права на распространение программного продукта (обычно ®).
Существует несколько типов лицензий на программные продукты
Исключительная лицензия
- продажа всех имущественных прав на программный продукт или базу данных, покупателю лицензии предоставляется исключительное право на их использование, а автор или владелец патента отказывается от самостоятельного их применения или предоставления другим лицам.
Эго самый дорогой вид лицензии, к нему прибегают для монопольного владения с целью извлечения дополнительной прибыли либо с целью прекращения существования на рынке программного продукта.
Простая лицензия
- лицензиар предоставляет право лицензиату использовать программный продукт или базу данных, оставляя за собой право применять их и предоставлять на аналогичных условиях неограниченному числу лиц (лицензиат при этом не может сам выдавать сублицензии, может лишь продать копии приобретенного программного продукта или базы данных).
Такой вид лицензии приобретают дилер (торговец) либо фирмы-производители, использующие купленные лицензии как сопутствующий товар к основному виду деятельности. Например, многие производители и фирмы, торгующие компьютерной техникой, осуществляют продажу вычислительной техники с установленным лицензионным программным обеспечением (операционная система, текстовый редактор, электронная таблица, графические пакеты и т.д.).
Этикеточная лицензия
- лицензия на одну копию программного продукта или базы данных. Данный тип лицензии применяется при розничной продаже. Каждый официальный покупатель заключает лицензионное соглашение с продавцом на их использование, но при этом сохраняется авторское право разработчика.
Закон об охране программных продуктов и компьютерных баз данных автором
признает физическое лицо, в результате творческой деятельности которого они созданы. Автору независимо от его имущественных прав принадлежат личные авторские права: авторство, имя, неприкосновенность (целостность) программ или баз данных.
Авторское право действует с момента создания программного продукта или базы данных в течение всей жизни автора и 50 лет после его смерти.
Автор может:
- выпускать в свет;
- воспроизводить в любой форме, любыми способами;
- распространять;
- модифицировать;
- осуществлять любое иное использование программного продукта или базы данных.
Авторское право не связано с правом собственности на материальный носитель.
Имущественные права на программный продукт или базу данных могут быть переданы частично или полностью другим физическим или юридическим лицам по договору. Имущественные права относятся к категории наследуемых прав. Если программный продукт или база данных созданы в порядке выполнения служебных обязанностей, имущественные права принадлежат работодателю.
Программные продукты и базы данных могут использоваться третьими лицами - пользователями на основании договора с правообладателем.
Движение продукта, прав и денег при лицензионном соглашении показано на рис 12.2.
Лицо
|
Продукт
|
Права
|
Деньги
|
Автор программы
|
↓
↓
↓
↓
|
↓
↓
↓
↓
|
↑
↑
↑
↑
|
Обладатель исключительной лицензии
|
Обладатель простой лицензии
|
Покупатель этикеточной лицензии
|
Рис 12.2.
По сфере применения выделяется три класса ПО (рис 12.3):
1. прикладное программное обеспечение,
2. системное программное обеспечение,
3. инструментарий программирования.
Рис 12.3. Классы ПО
Прикладное ПО
предназначено для решения функциональных задач конкретной предметной области.
Содержание этого программного обеспечения сильно зависит от предметной области: офис, графика, бухгалтерия, расчеты и т.д. Оно является самым многочисленным классом ПО. Без прикладного ПО использование компьютера в большинстве случаев бессмысленно.
Примерная классификация прикладного ПО представлена на рис 12.4.
Рис 12.4. Виды прикладного ПО
12.5.1.1 Проблемно-ориентированное ПО
Это самый представительный класс прикладного ПО. Внутри него проводится классификация по:
· типам предметных областей;
· информационным системам;
· функциям и комплексам задач и др.
Для некоторых предметных областей проведена типизация функций управления, определена структура данных, созданы алгоритмы обработки. Это вызвало разработку значительного ПО одинакового функционального назначения и, таким образом, создало рынок программных продуктов:
· автоматизированный бухгалтерский учет;
· финансовая деятельность;
· управление персоналом (кадровый учет);
· управление материальными запасами;
· управление производством;
· банковские информационные системы и т.п.
Основные тенденции в области развития проблемно-ориентированных программ:
· создание автоматизированных рабочих мест (АРМ) управленческого персонала;
· создание интегрированных систем управления предметной областью;
· организация больших распределенных баз данных
· наличие простых языковых средств пользователя для запросов к базе данных;
· настройка программной системы силами пользователей без участия программистов;
· защита программ и данных от несанкционированного доступа (парольная защита на уровне функций, режимов работы, данных).
Наиболее важно для данного класса программных продуктов создание дружественного интерфейса для конечных пользователей.
Данный класс программных продуктов весьма динамичен как по составу реализуемых функций, так и по используемому для их создания инструментарию разработчика.
12.5.1.2 Методо-ориентированное ПО
Данный класс включает программные продукты, обеспечивающие математические, статистические и другие методы решения задач независимо от предметной области и функций информационных систем.
Наиболее распространены методы математического программирования (оптимизации), решения дифференциальных уравнений, имитационного моделирования, исследования операций, методы статистической обработки и анализа данных.
На базе методов сетевого планирования с экономическими показателями оформилось направление программных средств - управление проектами
. Пользователями этих программ являются менеджеры проектов.
12.5.1.3 Прикладное ПО общего назначения
Данный класс ПО предназначен для широкого круга пользователей, которые используют в своей работе информационные технологии.
Представители данного класса программных продуктов:
1.
Настольные системы управления базами данных (СУБД).
Обеспечивают организацию и хранение локальных баз данных на автономных компьютерах либо централизованное хранение баз данных на файл-сервере.
Примеры программ: Access, Foxpro, Clarion, Oracle, Paradox, Informix Client.
Выполняют следующие функции:
· работу с БД через экранные формы;
· организацию запросов на поиск данных с помощью языков запросов высокого уровня;
· генерацию отчетов различной структуры данных с подведением промежуточных и окончательных итогов;
· вычислительную обработку путем выполнения встроенных функций, программ написанных с использованием языков программирования и макрокоманд.
2.
Серверы баз данн
ых
Предназначены для создания и использования интегрированных баз данных при работе в сети в архитектуре клиент-сервер.
Примеры программ: MS SQL Server, Interbase, Sybase, Oracle, Pervasive, Informix SQL, Alligator SQL, MySQL.
Серверы баз данных всю обработку (хранение, поиск, извлечение данных клиенту) данных выполняют самостоятельно, обеспечивая большое число пользователей сети.
Общим для серверов баз данных является использование языка структурированных запросов SQL.
Самой большой проблемой применения серверов баз данных являются обеспечение целостности (непротиворечивости) баз данных, решение вопроса, связанного с тиражированием данных по узлам сети и их синхронным обновлением.
3.
Генераторы отчетов.
Формируют экранные и печатные отчеты по базе данных в условиях сети с архитектурой клиент-сервер.
Примеры программ: Crystal Reports, StimulReport.Net, FastReport, ReportSmith.
Генератор отчетов подключается к серверу баз данных, используя все уровни передач и драйверы сервера баз данных. Генераторы отчетов включают:
· программы планирования - учет времени для формирования отчетов по требованию пользователей, составление расписания выдачи и распространения отчетов по сети;
· программы управления очередью запросов на формирование отчетов;
· программы ведения словаря пользователей для разграничения доступа к сформированным отчетам;
· программы ведения архива отчетов и др.
Подготовленные отчеты рассылаются клиентам по электронной почте или с помощью другого транспортного агента.
4.
Текст
овые процесс
оры.
Подготовка текстовых документов, их автоматическое форматирование, вставка графики, составление оглавлений и указателей, проверка орфографии, подготовка шаблонов документов.
Примеры программ: Word, TeX.
Развитием данного направления являются издательские системы
5. Таб
личный процесс
ор.
Подготовка электронных таблиц, деловая графика, встроенные функции.
Примеры программ: Excel, Quattro Pro, Lotus.
6.
Средства презентационной графики
Предназначены для создания изображений и их показа на экране с помощью слайд-фильмов, мультфильмов, видеофильмов, их редактирования.
Примеры программ: Power Point.
7.
Графический процессор
Подготовка растровых и векторных графических изображений.
Примеры программ: Corel Draw, Adobe Photoshop.
8.
Интегрированные пакеты
Набор нескольких программных продуктов, функционально дополняющих друг друга, поддерживающих единые информационные технологии.
Примеры пакетов: MS Office фирмы Microsoft, OpenOffice и StarOffice фирмы Sun, WordPerfect Office фирмы Corel.
Компонентами интегрированного пакета являются:
· СУБД;
· текстовый редактор;
· табличный процессор;
· органайзер;
· средства поддержки электронной почты;
· программы создания презентаций;
· графический редактор.
Отличительными особенностями данного класса программных средств являются:
· полнота информационных технологий;
· однотипный интерфейс для всех программ,
· наличие единой языковой платформы для разработки программ,
· общий сервис, например, словарь и средства проверки правописания, построитель диаграмм, конвертер данных и др.;
· возможность создания интегрированных документов.
12.5.1.4 Офисное ПО
Данный класс программных продуктов обеспечивает деятельность офиса:
1. 0рганайзеры (планировщики)
Планирование рабочего времени, составление протоколов встреч, расписаний, ведения записной и телефонной книжки.
2. Программы - переводчики, средства проверки орфографии, программы визуального и звукового распознавания текста.
К ним относятся: CuneiForm, Lingvo, Magic Goody, Promt, FineReader.
3. Коммуникационные программы.
Предназначены для организации взаимодействия пользователя с удаленными абонентами или информационными ресурсами сети - организация видеоконференций, обслуживание факса и телефона, браузеры, электронная почта.
12.5.1.5 Автоматизированное проектирование
Программы этого класса предназначены для поддержания работы конструкторов и технологов, связанных с разработкой чертежей, схем, диаграмм, графическим моделированием и конструированием, созданием библиотеки стандартных элементов (темплетов) чертежей и их многократным использованием, созданием демонстрационных иллюстраций и мультфильмов, расчетами физических параметров конструкций. Наличие станков с программным управлением и роботизированной техники позволяет передавать проект сразу в производство.
Отличительной особенностью автоматизированного проектирования являются высокие требования к технической части системы обработки данных, наличие библиотек встроенных функций ,объектов, интерфейсов с графическими системами и базами данных.
Системное ПО
– совокупность программ для обеспечения работы компьютера и компьютерной сети и для создания среды выполнения функциональных задач.
Без системного ПО аппаратура компьютера и компьютерной сети не сможет работать.
Системное ПО состоит из базового и сервисного системного ПО (рис 12.5). Базовое ПО поставляется вместе с компьютером. Сервисное ПО приобретается дополнительно.
Рис 12.5. Виды системного ПО Платформа
– сочетание аппаратуры компьютера и операционной системы.
12.5.2.1 Базовое системное ПО
В базовое ПО входят:
· операционная система,
· операционные оболочки,
· сетевые средства.
Операционная система предназначена для управления аппаратурой компьютера, для создания среды работы пользователя, для запуска программ, для организации хранения информации.
Ведущее положение на ПК занимает ОС Windows разных версий фирмы Microsoft. На ПК Macintosh используется ОС MacOS. Фирма IBM разработала ОС OS/2, которая сейчас на ПК не используется. ОС Unix разработала и поддерживает фирма Bell Laboratory. Развивается ОС Linux.
Все ОС сейчас являются:
· многопоточными – способны чередовать несколько цепочек команд,
· многозадачными – одновременно выполняют несколько программ (процессов),
· графическими – управляют каждой точкой на экране,
· 32-64 разрядными – используют для хранения адреса памяти 32-64 двоичных разряда,
Имеются многопроцессорные ОС, которые способны управлять десятками и сотнями процессоров. Различают два вида многопроцессорности: асимметричную и симметричную. При асимметричной обработке один или несколько процессоров обслуживают только ОС. При симметричной обработке любой поток или задача могут быть поручены любому свободному процессору. Разрабатываются средства кластерных
вычислений, в которых выполнение одной задачи производится сразу на нескольких компьютерах в сети.
Сравнение ОС осуществляется по следующим характеристикам процесса обработки информации:
· управление памятью (максимальный объем адресуемого пространства, типы памяти, технические показатели использования памяти);
· функциональные возможности вспомогательных программ в составе операционной системы;
· возможность архивирования файлов;
· поддержка многозадачного режима работы;
· поддержка сетевого программного обеспечения;
· наличие компрессии диска;
· наличие качественной документации,
· условия и сложность процесса инсталляции.
Операционные оболочки
- специальные программы, предназначенные для облегчения общения пользователя с командами операционной системы. Операционные оболочки имеют текстовый и графический варианты интерфейса пользователя.
Эти программы существенно упрощают задание управляющей информации для выполнения команд операционной системы, уменьшают напряженность и сложность работы конечного пользователя.
Наиболее популярны следующие виды текстовых оболочек операционной системы: Проводник, Total Commander.
Сетевые средства
- комплекс программ, обеспечивающий обработку, передачу и хранение данных в сети. Сетевая ОС предоставляет пользователям сетевые службы: паролирование, управление файлами, электронная почта, процессы управления сетью и др., поддерживает работу в абонентских системах. Сетевые операционные системы используют архитектуру с выделенным сервером или одноранговую архитектуру. Вначале сетевые операционные системы поддерживали лишь локальные вычислительные сети, сейчас они распространяются на ассоциации локальных сетей. Наибольшее распространение имеют LAN Server, Novell NetWare, Windows Server, Unix.
12.5.2.2 Сервисное системное ПО
Расширением базового программного обеспечения компьютера является набор сервиcных, дополнительно устанавливаемых программ, которые можно классифицировать по функциональному признаку следующим образом:
· антивирусные программы, обеспечивающие защиту компьютера, обнаружение и восстановление зараженных файлов;
· программы диагностики работоспособности компьютера;
· программы архивирования данных, которые обеспечивают процесс сжатия информации в файлах с целью уменьшения объема памяти для ее хранения;
· программы обслуживания дисков, обеспечивающие проверку качества поверхности магнитного диска, контроль сохранности файловой системы на логическом и физическом уровнях, сжатие дисков, создание страховых копий дисков, резервирование данных на внешних носителях и др.;
· программы обслуживания сети.
Эти программы часто называют утилитами.
Утилита
– служебная программа, предоставляющая пользователю какие-то услуги. Они расширяют возможности операционной системы.
Примеры комплектов утилит: Norton Utilities фирмs Symantec, Checkit PRO Deliuxe фирмs Touch Stone, Dr Hardware.
Наиболее известные антивирусные программы: AVP лаборатории Касперского, DrWeb компании Доктор Веб, Norton Antivirus фирмы Symantec, NOD32 фирмы Eset Software, Panda фирмы Panda Software, McAfee VirusScan, Ad-Aware.
Инструментарий программирования
- совокупность программ для разработки, проверки, модификации и внедрения новых программ.
Без инструментария не смогут появляться новые программные продукты и их версии.
Сформировались следующие группы инструментария программирования:
- локальные средства, обеспечивающие выполнение отдельных работ по созданию программ
- интегрированные среды разработчиков программ, обеспечивающие выполнение комплекса взаимосвязанных работ по созданию программ
- САSЕ-технология (Computer-Aided System Engineering), предостaвляющая методы анализа, проектирования и создания программных систем и предназначенная для автоматизации разработки информационных систем.
12.5.3.1 Локальные средства разработки программ
Язык программирования
- формализованный язык для описания алгоритма решения задачи на компьютере.
Языки программирования можно исторически разделить на классы:
- машинные языки - языки программирования, воспринимаемые аппаратной частью компьютера (машинные коды);
- машинно-ориентированные языки - языки программирования, которые содержат мнемонические обозначения и структуру машинных кодов компьютера (ассемблеры, автокодыт);
- алгоритмические языки - языки программирования, не зависящие от архитектуры компьютера для отражения структуры алгоритма.
Последние, в свою очередь, подразделяются на поколения:
1. структурно-ориентированные - языки программирования, в которых алгоритм реализуется структурами последовательности, выбора и цикла,
2. процедурно-ориентированные - языки программирования, где имеется возможность описания программы как совокупности подпрограмм,
3. проблемно--ориентированные - языки программирования, предназначенные для решения задач определенного класса,
4. объектно-ориентированные - языки программирования, где имеется возможность представления программы как совокупности объектов, поведение которых управляется внешними событиями.
Программа, подготовленная на алгоритмическом языке, проходит несколько этапов, реализуемых несколькими локальными средствами (рис 12.6).
Рис 12.6. Этапы преобразования программы
Исходный код
– текст отдельной программы на алгоритмическом языке.
Объектный код
- текст отдельной программы на машинном языке или на языке ассемблера.
Загрузочный модуль
– объединение программ на машинном языке, пригодное для выполнения на компьютере.
На этапе трансляции
происходит преобразование исходного кода программы в объектный код. Трансляцию выполняет специальная программа под названием транслятор или компилятор.
На этапе сборки
объектные коды нескольких программ в том числе стандартных объединяются в один загрузочный модуль. Сборку проводит специальная программа под названием редактор связей.
Некоторые языки программирования допускают режим интерпретации
программ – режим, при котором программа транслируется по операторам языка и сразу выполняется. Необходимые программы подключаются динамически во время выполнения. Сборка загрузочного модуля не производится.
Специальные программы отладчики
предназначены для наблюдения за ходом выполнения других программ. Они способны проводить трассировку - следить за операторами исходного кода, останавливать и возобновлять ход выполнения программы в контрольных точках, наблюдать за изменением значений переменных и выражений, идентифицировать место и вид ошибок.
Средства поддержки проектов предназначены для:
- отслеживания изменений, выполненных разработчиками программ;
- поддержки версий программы с автоматической разноской изменений;
- получения статистики о ходе работ проекта.
12.5.3.2 Интегрированные среды
Системы программирования
включают в себя:
o транслятор;
o редактор связей;
o графическую среду разработчика;
o отладчик;
o средства оптимизации кода программ;
o набор библиотек (возможно с исходными текстами программ);
o сервисные средства (утилиты) для работы с библиотеками, текстовыми и двоичными файлами;
o справочные системы;
o документатор исходного кода программы;
o систему поддержки и управления проектом программного комплекса.
Инструмента
льная среда пользователя
представлена специальными средствами, встроенными в пакеты прикладных программ, такими, как:
o библиотека функций, процедур, объектов и методов обработки;
o макрокоманды;
o клавишные и языковые макросы;
o программные модули-вставки;
o языки запросов высокого уровня;
o языки манипулирования данными;
o построители объектов,
o конструкторы экранных форм, меню и отчетов;
o генераторы приложений;
Интегрированные среды разработки программ объединяют вышеназванные наборы средств для комплексного их применения на всех технологических этапах создания программ.
К интегрированным средам относятся: С++ Builder и Visual Basic фирмы Microsoft, Delphi фирмы Borland, Oracle одноименной фирмы.
Тенденции развития инструментария программирования показывают, что разработчики предпочитают интегрированные среды, несмотря на их дороговизну.
12.5.3.3 САSЕ-технология
САSЕ - технология сформировалась в 80-х годах ХХ века. САSЕ расшифровывается как Computer-Aided System Engineering – проектирование систем с помощью компьютера.
CASE - технология представляет собой совокупность методов анализа, проектирования, разработки и сопровождения сложных систем программного обеспечения (ПО), поддержанную комплексом средств автоматизации. CASE - это инструментарий для системных аналитиков, разработчиков и программистов, заменяющий им бумагу и карандаш на компьютер для автоматизации процесса проектирования и разработки ПО.
Большинство CASE-средств основано на совокупности понятий (парадигме) методология/метод/нотация/средство. Методология
определяет руководящие указания для оценки и выбора проекта разрабатываемого ПО, шаги работы и их последовательность, а также правила распределения и назначения методов. Метод
- это систематическая процедура или техника генерации описаний компонент ПО (например, проектирование потоков и структур данных). Нотации
предназначены для описания структуры системы, элементов данных, этапов обработки и включают графы, диаграммы, таблицы, блок-схемы, формальные и естественные языки. Средства
- инструментарий для поддержки и усиления методов. Эти инструменты поддерживают работу пользователей при создании и редактировании графического проекта в интерактивном режиме, они способствуют организации проекта в виде иерархии уровней абстракции, выполняют проверки соответствия компонентов.
Основными покупателями CASE-пакетов за рубежом являются военные организации, центры обработки данных и коммерческие фирмы по разработке ПО. Практически ни один серьезный зарубежный программный проект не осуществляется без использования CASE-средств.
Основное достоинство CASE-технологии - поддержка коллективной работы над проектом за счет возможности работы в локальной сети разработчиков, экспорта - импоpтa любых фрагментов проекта, организационного управления проектом. Основная цель CASE состоит в том, чтобы отделить проектирование ПО от его кодирования и последующих этапов разработки, а также скрыть от разработчиков все детали среды разработки и функционирования ПО. Чем больше деятельности будет вынесено в проектирование из кодирования, тем лучше. наибольшие изменения касаются этапов анализа и проектирования.
Устойчивое положение они занимают в следующих областях:
· бизнес-анализ (фактически, модели деятельности предприятий "как есть" и «как должно быть" строятся с применением методов структурного системного анализа и поддерживающих их CASE-средств);
· системный анализ проектирование (практически любая крупная программная система разрабатывается с применением CASE-технологий по крайней мере на этапах анализа и проектирования, что связано с большой сложностью данной проблематики и со стремлением повысить эффективность работ).
Некоторые САSЕ-средства ориентированы только на системных проектировщиков и предоставляют специальные графические инструменты для изображения различного вида моделей:
· диаграмма/ потоков данных (DFD - data flow diagrams) совместно со словарями данных и спецификациями процессов;
· диаграмма "сущность-связь" (ERD - entity relationship diagrams), являющуюся инфологической моделью предметной области;
· диаграмма переходов состояний (STD - state transition diagrams), учитывающую события и реакцию на них системы обработки данных.
Диаграмма DFD устанавливает связь источников информации с потребителями, выделяет логические функции (процессы) преобразования информации, определяет группы элементов данных и их хранилища (базы данных).
Описание структуры потоков данных, определение их компонентов хранятся в актуальном состоянии в словаре данных, который выступает как база данных проекта. Каждая логическая функция может детализироваться с помощью DFD нижнего уровня согласно методам нисходящего проектирования.
Выполняются автоматизированное проектирование спецификаций программ (задание основных характеристик для разработки программ) и ведение словаря данных.
Другой класс САSЕ-технологий поддерживает только разработку программ, включая:
· автоматическую генерацию кодов программ на основании их спецификаций;
· проверку корректности описания моделей данных и схем потоков данных;
· документирование программ согласно принятым стандартам и актуальному состоянию проекта;
· тестирование и отладку программ.
В рамках САSЕ-технологий проект сопровождается целиком, а не только его программные коды. Проектные материалы служат заданием программистам, а само программирование скорее сводится к переводу на определенный язык структур данных и методов их обработки, если не предусмотрена автоматическая кодогенерация.
Большинство САSЕ-технологий использует также метод "прототипов" для быстрого создания программ на ранних этапах разработки. Кодогенерация программ осуществляется автоматически - до 85 - 90% текстов на языках высокого уровня.
К CASE – средствам, например, относятся BPWin, ERWin, Rational Rose, Embarcadero, xCase.
Классификация по типам отражает функциональную ориентацию CASE-средств в технологическом процессе создания информационной системы.
1) АНАЛИЗ И ПРОЕКТИРОВАНИЕ. Средства данной группы используются для создания спецификаций системы и для ее проектирования. Их целью является определение системных требований и свойств, которыми система должна обладать, а также создание проекта системы, удовлетворяющей этим требованиям и обладающей соответствующими свойствами. На выходе продуцируются спецификации компонент системы и интерфейсов, связывающих эти компоненты, а также "калька" архитектуры системы и детальная "калька" проекта, включающая алгоритмы и определения структур данных. К таким средствам относятся: CASE.Аналитик (Эйтэкс), The Developer (ASYST Technologies), POSE (Computer Systems Advisers), ProKit*Workbench (McDonnell Douglas), Excelerator (Index Technology), Design-Aid (Nastec), Design Machine (Optima), MicroStep (Meta Systems), vsDesigner (Visual Software), Analist/Designer (Yourdon), Design/IDEF (Meta Software), BPWin (Logic Works), SELECT (Select Software Tools), System Architect (Popkin Software & Systems), Westmount I-CASE Yourdon (Westmount Technology B.V. & CADRE Technologies), CASE/4/0 (microTOOL GmbH).
2) ПРОЕКТИРОВАНИЕ БАЗ ДАННЫХ И ФАЙЛОВ. Средства данной группы обеспечивают логическое моделирование данных, автоматическое преобразование моделей данных в Третью Нормальную Форму, автоматическую генерацию схем БД и описаний форматов файлов на уровне программного кода: ERWin (Logic Works), Chen Toolkit (Chen & Asssociates), S-Designor (SDP), Designer2000 (Oracle), Silverrun (Computer Systems Advisers).
3) ПРОГРАММИРОВАНИЕ. Средства этой группы поддерживают этапы программирования и тестирования, а также автоматическую кодогенерацию из спецификаций, получая полностью документированную выполняемую программу: COBOL 2/Workbench (Mikro Focus), DECASE (DEC), NETRON/CAP (Netron), APS (Sage Software). Помимо диаграммеров различного назначения и средств поддержки работы с репозитарием, в эту группу средств включены и традиционные генераторы кодов, анализаторы кодов, генераторы наборов тестов, анализаторы покрытия тестами, отладчики.
4) СОПРОВОЖДЕНИЕ И РЕИНЖИНИРИНГ. К таким средствам относятся документаторы, анализаторы программ, средства реструктурирования и реинжениринга: Adpac CASE Tools (Adpac), Scan/COBOL u Superstructure (Computer Data Systems), Jnspector/Recoder (Language Technology). Их целью является корректировка, изменение, анализ, преобразование и реинжениринг существующей системы. Средства позволяют осуществлять поддержку всей системной документации, включая коды, спецификации, наборы тестов; контролировать покрытие тестами для оценки полноты тестируемости; управлять функционированием системы и т.п. Особый интерес представляют средства обеспечения мобильности и реинжиниринга. К средствам миграции относятся трансляторы, конверторы, макрогенераторы и др., позволяющие обеспечить перенос существующей системы в новое операционное или аппаратурное окружение. Средства реинжиниринга включают:
o статические анализаторы для продуцирования схем системы ПО из ее кодов, оценки влияния модификаций (например,"эффекта ряби" -внесение изменений с целью исправления ошибок порождает новые ошибки);
o динамические анализаторы (обычно, компиляторы и интерпретаторы с встроенными отладочными возможностями);
o документаторы, позволяющие автоматически получать обновленную документацию при изменении кода;
o редакторы кодов, автоматически изменяющие при редактировании и все предшествующие коду структуры (например, спецификации);
o средства доступа к спецификациям, их модификации и генерации нового (модифицированного) кода;
o средства реверсного инжиниринга, транслирующие коды в спецификации.
5) ОКРУЖЕНИЕ. Средства поддержки платформ для интеграции, создания и придания товарного вида CASE-средствам: Multi/Cam (AGS Management Systems), Design/OA (Meta Software).
6) УПРАВЛЕНИЕ ПРОЕКТОМ. Средства, поддерживающие планирование, контроль, руководство, взаимодействие, т.е. функции, необходимые в процессе разработки и сопровождения проектов: Project Workbench (Applied Business Technology).
Программирование
- теоретическая и практическая деятельность, связанная с созданием программ для компьютеров.
Программирование включает в себя следующие этапы:
1. постановка задачи,
2. структуризация системы,
3. организация данных,
4. алгоритмизация,
5. кодирование,
6. отладка,
7. внедрение.
Нулевым этапом постановки задачи должно быть задание окружения программы. Окружение программы состоит из:
o Среды пользователей,
o Среды заказчиков.
o Вычислительной среды ,
Пользователями программной системы могут быть служащие административных учреждений, инженеры, выполняющие на машинах научно-технические расчеты, экономисты, ведущие учет хозяйственной и финансовой деятельности.
Вовлекайте пользователей в процесс проектирования системы
Если пользователи принимают участие в проекте на стадии разработки, они лучше осведомлены о характеристиках системы и могут внести свою лепту в формирование окончательного облика. Если же пользователи привлекаются на этапе испытаний, они получают возможность оценить качества системы еще до начала эксплуатации.
Программа неотделима от вычислительной среды, с которой взаимодействует. Она использует системные программные средства, а те в свою очередь могут пользоваться ее информацией. Программа либо сама создает файлы, либо обрабатывает файлы, сформированные другими программами. Она должна быть построена таким образом, чтобы могла применяться в различных приложениях и обходиться только имеющимися аппаратными ресурсами и средствами программирования.
МАКСИМАЛЬНО ИСПОЛЬЗУЙТЕ СЕРВИСНЫЕ СРЕДСТВА АВТОМАТИЗАЦИИ ПРОЕКТИРОВАНИЯ
Обычно работа по составлению программ начинается в связи с тем, что некоторая организация (заказчик) предлагает создать для нее программную прикладную систему. Официальному заключению договора обычно предшествует выяснение реальной необходимости в такой системе, оценка возможности ее разработки и примерного объема затрат, а также ожидаемого эффекта от ее внедрения.
ЭВМ лучше, чем человек, справляется с трудоемкими задачами, требующими многократного повторения однотипных операций. ЭВМ более эффективно осуществляет поиск и обработку больших массивов информации, состоящих из однородных элементов. Всякое использование ЭВМ предполагает стандартизацию данных и способов обработки. Эффективная реализация преимуществ ЭВМ возможна лишь в тех случаях, когда необходимо выполнять либо трудоемкие вычисления, либо обработку больших объемов информации. В то же время человек лучше, чем машина, может разобраться в том, что и как следует делать, и способен работать с неоднородной информацией.
Первый шаг в проектировании прикладной программной системы заключается в точном формулировании целей внедрения. Требования к системе еще не создают полной картины. В постановке задачи, разумеется, должны принять участие как представители организации-заказчика, так и те, кто будет заниматься проектированием системы. Необходимо, чтобы этот процесс был гибко организован и продолжался в течение достаточно длительного времени, поскольку на любом этапе разработки или внедрения могут вскрываться ранее не предусмотренные трудности. В то же время в договор следует включить пункт, который запрещал бы радикальный пересмотр требований на стадии реализации системы. В этом же пункте могут быть оговорены условия внесения несущественных изменений.
ВСЕ ДОГОВОРЕННОСТИ ДОЛЖНЫ ОФОРМЛЯТЬСЯ В ОФИЦИАЛЬНОМ ПОРЯДКЕ
Организация-заказчик и группа разработчиков совместно составляют официальный перечень спецификаций, а также договор о порядке проведения проектных работ и приемке системы. Функциональные требования к системе содержат четкое описание всего того, что она должна делать. Ограничениями в процессе проектирования являются директивные сроки завершения отдельных этапов, имеющиеся в наличии ресурсы, организационные процедуры и мероприятия, обеспечивающие сохранность информации.
НЕОБХОДИМО ВСЕСТОРОННЕ АНАЛИЗИРОВАТЬ ЭФФЕКТЫ, СВЯЗАННЫЕ С ВНЕДРЕНИЕМ СИСТЕМЫ
Подобный подход к проектированию можно проиллюстрировать на примере разработки языка Ада. В начале 70-х годов министерство обороны США объявило о создании нового языка, которым предполагалось заменить другие языки программирования во всех приложениях, связанных с решением задач военного характера. Еще до составления окончательного перечня функциональных требований и спецификаций было разработано несколько версий языка, которые анализировались и оценивались группой сторонних экспертов. Был объявлен конкурс на создание языка. Его победителем стала французская фирма Honeywell-Bull. После того как работа над языком была завершена, для его оценки вновь были приглашены сторонние эксперты. Много различных групп приняло участие в экспериментах по практической реализации некоторых наиболее нетрадиционных особенностей языка. Наконец, когда стало ясно, что Ада в целом отвечает предъявляемым требованиям, различные военные ведомства начали заключать контракты на приобретение компиляторов языка.
Структурным анализом
называется метод исследования, который начинается с общего обзора системы и продолжается детализацией, при которой система приобретает иерархическую структуру с большим числом уровней. Требования к системе и ее предполагаемые характеристики не могут служить отправной точкой, поскольку помимо общего описания они содержат много ненужных деталей. Их можно рассматривать •скорее как цели и стандарты, к которым следует стремиться на всех стадиях проектирования. Верхний уровень структурного •анализа представляет собой функциональное описание системы. •Составление функционального описания системы — это обобщение всей информации, касающейся целей проекта.
СЛЕДУЕТ СТРЕМИТЬСЯ К СОЗДАНИЮ ПОЛНОЙ КАРТИНЫ
Деление системы на функциональные элементы подчиняется вполне определенным правилам. Самое общее правило состоит в следующем: необходимо отделять то, что
требуется сделать, от того, каким образом
это можно сделать.
ПРОЦЕСС ПРОЕКТИРОВАНИЯ ДОЛЖЕН БЫТЬ СТРУКТУРИРОВАН.
Графическая схема проекта строится по иерархическому принципу и охватывает все вопросы по разработке проекта. Она должна умещаться на одной странице. На рис 13.1 представлен устоявшийся вариант схемы. Именно таким представляется процесс проектирования автоматизированной системы извне. От системы к системе графическая схема задания меняется незначительно.
Рис 13.1. Схема проекта системы
1. Введение
. Дается общая характеристика системы, чтобы будущий пользователь мог принять решение о том, отвечает ли система его требованиям.
1.1. Функции системы
. Поясняется назначение системы, приводится перечень основных процедур и обрабатываемых данных,
1.2. Сфера применения
. Характеризуется круг пользователей, на которых ориентирована система.
1.3. Сбор и корректировка данных.
Описываются источники исходных данных, поступающих в систему, а также источники данных, используемых для корректировки. В этот пункт следует включить планы и графики корректирования данных.
1.4. Отчеты.
Описываются формы, определяются периодичность и общее содержание отчетов, выдаваемых системой.
2. Вычислительная среда
. Определяется минимальный состав оборудования, необходимого для нормального функционирования системы.
2.1. Технические средства
. Описывается конфигурация технических средств, указывается требуемый объем оперативной памяти, требования к внешним устройствам и т. д.
2.2. Программные средства
. Указываются типы операционных систем, используемые библиотеки стандартных программ, системы управления базами данных и т. д.
2.3. Режимы работы.
Определяется возможность функционирования системы в условиях пакетного режима, интерактивного режима, режима реального времени или их комбинаций.
3. Связь с внешней средой
. Описывается взаимодействие пользователей с системой.
3.1. Вход системы.
Определяются форматы данных всех типов, вводимых пользователями, а также внутренняя структура данных. Эта информация служит руководством при разработке бланков входных форм и подготовке данных.
3.2. Выход системы.
Описываются форматы отчетов, сообщений и других выходных форм. Эта информация используется при составлении планов и подготовке результатов.
3.3. Управляющие параметры
. Перечисляются параметры, задаваемые при настройке системы на конкретную конфигурацию технических и программных средств.
3.4. Рабочие инструкции
. Дается общий обзор содержания инструкций, касающихся обращения с лентами, хранения бумаги и т. д. Данная информация используется при составлении инструкций для обслуживающего персонала.
4. Качество системы
.
4.1. Соблюдение стандартов и общепринятых обозначений
. Указывается, в какой мере система соответствует стандартному варианту языка программирования. Кроме того, определяется степень использования общеупотребительных сокращений и математических обозначений. Это позволяет оценить трудоемкость сопровождения системы.
4.2. Универсальность системы
. Обсуждается уровень независимости системы от конкретных внешних условий, с учетом которых она разрабатывается. Это характеризует сложность перевода системы на другие вычислительные установки.
4.3. Надежность функционирования
. Рассматриваются такие вопросы, как ожидаемое время наработки на отказ, способы корректировки ошибок, проверка достоверности информации, точность результатов, статистические характеристики всех модулей, осуществляющих вероятностные расчеты, например генераторов псевдослучайных чисел.
4.4. Защита информации
. Описываются средства, обеспечивающие сохранность данных и авторизацию доступа, используемые способы кодирования.
5.
Документация по системе.
5.1. Пособия и руководства.
Приводится перечень документации, прилагаемой к системе, пособий, форм отчетности, рабочих описаний, системной и программной документации.
5.2. Спецификации программ
. Дается общее функциональное описание отдельных программ, входящих в состав системы. Эта информация служит руководством при разработке программ.
5.3. Организация данных.
Приводится общее описание взаимодействия отдельных информационных потоков в системе. Эти сведения используются при разработке принципов организации данных.
Поскольку многие из перечисленных задач связаны друг с другом, возникает необходимость в планировании последовательности их решения. Для анализа распределения работ часто применяются так называемые ПЕРТ - диаграммы.
ПЕРТ является прямой транскрипцией английского сокращения PERT, составленного из первых букв названия «program evaluation review technique» (методика анализа и корректирования планов). ПЕРТ-диаграмма представляет собой граф, содержащий описания работ и событий и характеризующий процесс взаимодействия работ во времени. Ребра графа обозначают работы, его вершины — события. Обычно под событием понимается завершение одной работы и начало другой, причем вторая не может быть начата, прежде чем завершится первая. На рис. 13.2 приведен сокращенный вариант ПЕРТ-диаграммы_ описывающей процесс проектирования прикладной системы. Поставив в соответствие каждой работе ожидаемое время ее выполнения, можно определить максимальный по продолжительности путь от начальной до конечной вершины графа, который называют критическим путем проектирования системы.
рис 13.2
На уровне аппаратуры компьютера и операционной системы данные представляются в форме, которая не воспринимается пользователем легко.
Данные разделяются на две группы: простые и структурированные. Простое
данное в каждый момент обладает одним значением. Структурированное
данное формируется группой данных, каждое из которых может быть простым или структурированным. К простым данным относятся флаги, коды, даты, числа, символы. К структурированным данным относятся строки, массивы, таблицы, списки, стеки, очереди, множества, записи, файлы. Файлы и базы данных должны обязательно состоять из структурированных элементов. Внешние для программной системы данные также формируются из структурированных элементов.
В языке Паскаль, например, имеются как средства для задания правил формирования структур, так и средства для непосредственного описания данных:
Type TEN_BY_TWENTY = array[10,20] of real;
Var A,B,C : TEN_BY_TWENTY;
Запись на Паскале может быть определена следующим образом:
type CUSTOMER = record
NAME: string;
ADDRESS: string;
TELEPHONE: string;
ACCOUNT_BALANCE: real;
PAYMENT_DATE: integer
end
Часто невозможно заранее, до начала работы программы установить размер структуры данных. Такие данные называются динамическими
, их размер устанавливается в процессе работы программы. В большинстве языков программирования нельзя задавать динамически изменяемые структуры данных. Программисту необходимо указывать наибольшее число экземпляров - максимальный размер каждой структуры.
Программист, проектировщик и пользователь имеют разные взгляды на организацию данных. В соответствии с этим могут быть выделены три уровня организации данных:
o Логическая организация данных: проектный уровень.
o Представление данных: уровень языка реализации.
o Физическая организация данных: машинный уровень.
Логическая
организация данных отражает взгляд пользователя на данные. В ее основе лежат требования пользователя и внутренне присущие данным связи. Это наиболее важный уровень абстракции, используемый при представлении данных, поскольку именно требования пользователей определяют облик проектируемой системы. Если на этапе проектирования системы удачно выбрана логическая организация данных, изменения системных требований, не приводящие к модификации логической структуры данных, не повлекут за собой реорганизации на более низких уровнях представления данных.
Только на логическом уровне могут применяться формальные методы описания динамически изменяющихся структур. Никакая дополнительная информация о членах семьи не изменит общую логическую структуру семьи:
семья =отец, мать, ребенок ...
отец = имя, возраст, профессия
мать = имя, возраст, девичья фамилия,
ребенок = имя, возраст, пол
Новые данные о членах семьи не нарушают ее общей организации, но могут привести к изменениям в представлении информации.
Описание данных на языке программирования относится к уровню представления
данных. Отношения между данными задаются в виде, характерном для конкретного языка.
Уровень физической
организации связан с системным программным обеспечением. На этом уровне приходится оперировать с границами слов, размерами полей, двоичными кодами и физическими записями. Отметим, что системное программное обеспечение управляет потоком данных между программами и внешними устройствами, а языки программирования управляют обменом данными между программами.
Алгоритмы содержат определение пошагового процесса обработки данных с описанием преобразований данных и описанием функций управления. Они могут быть записаны на естественном языке, на языке программирования, с помощью математической или другой символической нотации. Алгоритм не содержит описания структуры обрабатываемых данных. Название алгоритма может указывать на его назначение (например, алгоритм сортировки, обращения матриц, игры в «крестики и нолики» и т. д.) или определять используемый в нем метод решения.
Известны три основных вида средств проектирования структуры управления программой
1. структурное программирование,
2. схемы передач управления и
3. управляющие таблицы.
Все они предназначены для организации нормального функционирования программы, т. е. с их помощью определяются следующие свойства программы: порядок следования отдельных шагов обработки, ситуации и типы данных, вызывающие изменения процесса обработки, а также повторно используемые функции программы.
13.4.1. Структурное программирование
Структурное
программирование основано на использовании трех стандартных структур: следования, выбора, повторения. Для изображения алгоритма используются псевдокод, блок-схемы.
Псевдокод отличается от обычных детализированных устных алгоритмов стандартизацией конструкций, форматированием описания, использованием ключевых слов и удобным для понимания, строгим оформлением. Ключевые слова выбираются так, чтобы сделать алгоритм ясным, строгим и однозначным.
Конструкция следования имеет следующий вид:
Р; Q
Здесь Р и Q — простые предложения, обозначающие операции преобразования данных или информационного обмена, например такие, как ЧИТАТЬ, ПИСАТЬ или ВЫЧИСЛИТЬ
Конструкции следования представляют собой наборы операторов, выполняемых в порядке их записи. Если запись ведется на псевдокоде, операторы должны быть расположены последо-иательно на отдельных строках и выровнены по левому краю. При необходимости оператор можно продолжить на второй строке, причем продолжение должно начинаться правее позиции, по которой осуществляется выравнивание:
Читать карту
I [ечатать данные с нее, как заголовки столбцов, располагая их в верхней части
страницы
Читать другую карту Печатать данные с нее, располагая их под заголовками соответствующих
столбцов
Конструкции выбора
представляют собой операторы, выполняемые только один раз и при определенных условиях. Сущест-иуют различные способы реализации этих конструкций в разных и шках программирования.
if ь2
- 4ас <0 { отрицательный дискриминант} then
{уравнение не имеет действительных корней}
печатать—сообщение—об—ошибке else
{существуют два действительных корня}
вычислить (-b ± V(b2 -4ac))/(2a) i печатать—корни
Конструкции повторений
представляют собой последовательность операторов, выполняемых несколько раз. К их числу относятся циклические структуры различных видов, в том числе и циклы, использующие счетчики и индексные переменные. Управление функционированием большей части циклических структур осуществляется с помощью проверки условия окончания или условия продолжения выполнения цикла. В псевдокоде, описывающем цикл, следует указывать, что тело цикла выполняется по крайней мере один раз, если проверка производится в Конце цикла, или что возможен случай, когда тело цикла ни paly не выполняется, если проверка осуществляется в его начале.
Способы реализации циклов в языках программирования существенно отличаются друг от друга. При описании циклов следует использовать выравнивание строк и применять комментарии:
while счетчик изменяется до 50do {печатать данные} читать карту печатать карту {эхо-печать}
repeat {печатать карты с помощью:}
читать карту
печатать ее until конец—файла {найден}
Обычно эти операторы повторяются или заданное число раз, или пока выполняется условие цикла, или пока не произойдет некоторое заранее предусмотренное событие. Проверка может быть проведена сразу, и, если соответствующие условия выполняются еще до входа в цикл, тело цикла не будет выполняться. Если проверка осуществляется в конце, операторы тела цикла будут выполнены по крайней мере один раз.
проверяйте корректность окончания циклов
Исключительные состояния представляют собой условия, которые не появляются часто, но требуют специальной обработки. Эти ситуации создаются, например, при обнаружении неправильных данных, отсутствия данных и при переходе к обработке другой группы
procedure обновление {последовательного главного файла} on конец_главного_файла печатать «файл пропущен» return on конец_файла_сообщений
копировать остаток главного файла return
читать главный файл while not конец—файла—сообщений do repeat
читать сообщение
проверить сообщение на правильность until найдено_правильное_сообщение while главный_ключ < ключ_сообщения do on конец.главного_файлаexit
читать главный файл endwhile
if найдена__соответствующая—запись
обновить запись главного файла else
Пример 6.10 иллюстрирует гнездование конструкции on. Первые два on-оператора относятся ко всей процедуре, но первый из них не работает внутри вложенного цикла .while, в котором определен on-оператор для того же условия. С помощью выравнивания выделены тела циклов и on-операторов. Для улучшения читабельности программы использовано ограничительное предложение endwhile.
13.4.2. Схемы передач управления
Для изображения схем передач управления в программе используются блок-схемы.
На рис 13.3 представлены стандартные обозначения в блок-схемах.
Рис 13.3
базовые конструкции: следование, выбор и повторение. На рис. 13.4 показаны схемы этих управляющих конструкций. Каждая конструкция имеет единственный вход и единственный выход.
Рис 13.4
1. Информатизация общества. 2
1.1. Понятие информации. 2
1.2. Переход к информационному обществу. 2
1.3. Информационный потенциал общества. 3
1.4. Информационный рынок. 3
1.5. Информатика, предмет и задачи. 4
2. Введение в экономическую информатику. 6
2.1. Особенности экономической информации. 6
2.2. Принципы классификации и кодирования информации. 7
2.3. Виды экономической информации в фирме. 8
3. Экономические информационные системы (ЭИС) и технологии (ЭИТ) 9
3.1. Понятие ЭИС.. 9
3.2. Состав ЭИС.. 9
3.3. История развития ЭИС и ЭИТ. 10
3.4. Виды информационных технологий. 11
3.4.1. ЭИТ обработки данных. 11
3.4.2. ЭИТ управления. 12
3.4.3. ЭИТ поддержки принятия решений. 13
3.4.4. ЭИТ экспертных систем.. 14
3.4.5. Автоматизация офиса. 15
4. Состояние и тенденции развития ЭВМ... 16
4.1. Классификация ЭВМ (признаки) 16
4.1.1. принципу действия. 16
4.1.2. Этапы создания. 17
4.1.3. Назначение. 17
4.1.4. Функциональные возможности. 17
4.2. Персональные компьютеры.. 19
4.2.1. История создания ПК.. 19
4.2.2. Особенности ПК.. 19
5. Архитектура ПК.. 21
5.1. Структура ПК.. 21
5.2. Микропроцессор. 22
5.3. Системная шина. 23
5.4. Основная память. 23
5.5. Клавиатура. 23
5.6. Видеосистема. 23
5.7. Принтеры.. 24
5.8. Поколение микропроцессоров. Их работа. 25
5.9. Принципы выбора ПК.. 26
6. Информационно-логические основы построения ЭВМ... 28
6.1. Системы счисления/ Формы представления чисел. 28
6.2. Представление информации в ЭВМ... 29
6.3. Логические основы построения ЭВМ... 30
6.4. Логический синтез вычислительных схем.. 32
7. Компьютерные сети. 33
7.1. Назначение и классификация компьютерных сетей. 33
7.2. Особенности локальных вычислительных сетей. (ЛВС) 34
7.3. Глобальные сети (GAN) 35
7.3.1. Глобальная банковская сеть SWIFT. 35
7.3.2. Глобальная сеть Internet 36
7.4. Стандарты воздействия в компьютерной сети. 38
8. Операционная система Windows. 41
8.1. Основные положения. 41
8.2. Интерфейс пользователя. 42
8.3. Многозадачность. 42
8.4. Управление ресурсами. 43
8.5. Объектный подход. 44
8.6. Работа в сети. 45
8.7. Мультимедиа. 45
8.8. Структура интерфейса пользователя. 45
8.8.1. Окна. 45
8.8.2. Меню.. 46
8.8.3. Панель задач. Папки Мой компьютер и корзина, панель управления. 46
9. Текстовый процессор. 48
9.1. Основные понятия. 48
9.1.1. Типовая структура интерфейса. 48
9.1.2. Структура электронного документа. 48
9.2. Обработка текста и документа. 49
9.2.1. Минимальный набор типовых операций. 49
9.2.2. Расширенный набор типовых операций. 51
9.3. Принципы подготовки бумажных и электронных документов. 53
9.3.1. Принципы создания документа. 53
9.3.2. Принципы форматирования документа. 54
10. Табличный процессор. 55
10.1. История развития табличного процессора. 55
10.2. Интерфейс табличного процессора. 55
10.2.1. Строки, столбцы, ячейки, адреса. 55
10.2.2. Блоки. 56
10.2.3. Окно, рабочий лист, текущая ячейка. 56
10.2.4. Типовая структура интерфейса. 56
10.3. Данные, хранимые в ячейках. 58
10.3.1. Типы входных данных. 58
10.3.2. Форматирование входных и выходных данных. 59
10.3.3. Уровни информации в ячейке. 59
10.4. Изменение ссылок при копировании формул. 60
10.4.1. Относительная и абсолютная адресация. 60
10.4.2. Правило относительной ориентации. 61
10.5. Обобщенная технология работы в табличном процессоре. 62
10.6. Объединение электронных таблиц. 64
10.6.1. Межтабличные связи. 64
10.6.2. Консолидация таблиц. 64
10.6.3. Объединение файлов. 64
10.7. Макросы в табличном процессоре. 65
11. Система управления базами данных. 66
11.1. Отличительные признаки СУБД.. 66
11.2. Требования к организации базы данных. 67
11.3. Классификация БД.. 68
11.4. Понятие объекта данных. 69
11.5. Структурные элементы БД.. 70
11.6. Связи между наборами объектов и их типы.. 71
11.7. Модель данных. 73
11.8. Иерархическая и сетевая модели данных. 73
11.9. Реляционная модель данных. 77
11.10. Правила Кодда. 78
11.11. Целостность связей. 82
11.12. Метод «сущность-связи». 84
12. Программное обеспечение ЭВМ... 85
12.1. Основные понятия. 85
12.2. Категории специалистов по разработке и эксплуатации программ.. 86
12.3. Качество программы.. 87
12.4. Правовые методы защиты программ.. 89
12.5. Классификация программного обеспечения (ПО) 91
12.5.1. Прикладное ПО.. 91
12.5.2. Системное ПО.. 96
12.5.3. Инструментарий программирования. 98
13. Программирование. 105
13.1. Постановка задачи. 105
13.2. Структуризация системы.. 107
13.3. Организация данных. 110
13.4. Алгоритмизация. 112
14. Содержание. 115
|