Раздел Технические средства реализации информационных процессов

8. Понятие и основные виды архитектуры ЭВМ. Принципы работы вычислительной системы

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

Рисунок 16 - Процессор Intel Core i7

ЦП выполняет следующие основные функции:

· чтение и дешифрацию команд из основной памяти;

· чтение данных из основной памяти и регистров адаптеров внешних устройств;

· приём и обработку запросов и команд от адаптеров на обслуживание внешних устройств;

· обработку данных и их запись в основную память и регистры адаптеров внешних устройств;

· выработку управляющих сигналов для всех прочих узлов и блоков компьютера.

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

Запоминающее устройство - носитель информации, предназначенный для записи и хранения данных. В основе работы запоминающего устройства может лежать любой физический эффект, обеспечивающий приведение системы к двум или более устойчивым состояниям. Классификация запоминающих устройств по Устойчивому признаку. ПЗУ в рабочем режиме допускает только считывание информации. (например, DVD-ROM). Записываемые ЗУ, в которые конечный пользователь может записать информацию только один раз (например, DVD-R). Многократно перезаписываемые ЗУ (например, DVD-RW).Оперативные ЗУ (ОЗУ) обеспечивает режим записи, хранения и считывания информации в процессе её обработки.По типу доступа ЗУ делятся на:· устройства с последовательным доступом (например, магнитные ленты).· устройства с произвольным доступом (RAM) (например, оперативная память).· устройства с прямым доступом (например, жесткие магнитные диски).По геометрическому исполнению:· дисковые (магнитные диски, оптические, магнитооптические);· ленточные (магнитные ленты, перфоленты);· барабанные (магнитные барабаны);· карточные (магнитные карты, перфокарты, флэш-карты, и др.)· печатные платы (карты DRAM).

По физическому принципу:· перфорационные (перфокарта; перфолента);· с магнитной записью (ферритовые сердечники, магнитные диски, магнитные ленты, магнитные карты);· оптические (CD, DVD, HD-DVD, Blu-ray Disc);· использующие эффекты в полупроводниках (флэш-память) и другие.По форме записанной информации выделяют аналоговые и цифровые запоминающие устройства.

11. Устройства ввода-вывода данных, их разновидности и основные характеристики

Устройства ввода: клавиатура; сканеры: для текстовой и графической информации; графические планшеты: для ввода графической информации без промежуточной фиксации её на бумаге (она рисуется на специальном планшете световым пером); манипулятор мышь; манипулятор джойстик – наклоны ручки эквивалентны перемещению мыши; цифровыевидеокамеры и фотоаппараты; микрофон и звуковой адаптер.

Устройства вывода: монитор. Адаптер – устройство для соединения устройств с разными способами представления информации; Контроллер – устройство для сопряжения разных устройств и управления их работой. Принтеры – матричные, струйные, лазерные. Различаются по способу печати. Плоттеры : выводят документы больших размеров (чертежи, плакаты и т. п.);Акустические стереоколонки.

12. Классификация программного обеспечения. Виды программного обеспечения и их характеристики

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

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

Классификация прикладного ПО:

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

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

Инструментальное ПО - совокупность программ, которые используют при разработке программ прикладного и системного ПО: Трансляторы: для перевода программы в машинный код; отладчики (дебаггеры): для поиска ошибок в программе. Библиотеки: содержат процедуры и функции, которые могут использовать программисты в своих программах

13. Понятие системного программного обеспечения. Операционные системы

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

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

Основные функции (простейшие ОС): Загрузка приложений в оперативную память и их выполнение. Стандартизованный доступ к устройства ввода-вывода. Управление оперативной памятью (распределение между процессами, виртуальная память).Управление доступом к данным на энергонезависимых носителях (таких как жёсткий диск, компакт-диск и т. д.)

Дополнительные функции ОС: Многозадачность.Взаимодействие между процессами: обмен данными, взаимная синхронизация. Защита самой системы, а также пользовательских данных и программ от действий пользователей. Разграничение прав доступа и многопользовательский режим работы (аутентификация, авторизация).

14. Служебное (сервисное) программное обеспечение

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

По функциональным возможностям сервисные средства можно подразделить на средства:

· улучшающие пользовательский интерфейс;

· защищающие данные от разрушения и несанкцио-нированного доступа;

· восстанавливающие данные;

· ускоряющие обмен данными между диском и ОЗУ:

· средства архивации и разархивации;

· антивирусные средства.

15. Файловая структура операционной системы. Операции с файлами

Файловая система представляет собой определенный порядок расположения файлов на каком-либо носителе информации, на котором эти файлы хранятся. Как всем известно, различного типа файлы могут находиться на компьютерах, мобильных телефонах и других мобильных устройствах. Организация такого хранения определяет формат находящейся информации, способ ее хранения и именования. Все эти параметры отражает файловая структура операционных систем. Каждая конкретная файловая система определяет свойственные только ей: - размер имени файла или папки; - совокупность системных свойств (атрибутов) для каждого типа файлов; - максимально возможный размер файлового раздела. Для некоторых систем возможно и выполнение некоторых опциональных операций над файлами, основными такими опциями являются шифрование и разграничение доступа. Любая файловая структура операционных систем выполняет следующие задачи: - именование файлов; - создает уникальный интерфейс для приложений; - определяет способ соотнесения и отображения логической модели на физическом носителе; - обеспечивает стабильность системы; - содержит в себе определенные сведения, которые необходимы для обеспечения взаимодействия системы с иными ее компонентами (приложениями, сервисами, ядром

int open(char * fname, int flags, mode_t mode)

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

 

Параметр char * fname задает имя файла.int flags - это битовая маска, определяющая режим открытия файла.Файл может быть открыт только на чтение, только на запись и начтение и запись; кроме того, можно открывать существующий файл,а можно пытаться создать новый файл нулевой длины.Необязательный третий параметр mode используется толькопри создании файла и задает атрибуты этого файла.

off_t lseek(int handle, off_t offset, int whence)

Эта операция перемещает указатель чтения/записи в файле.Параметр offset задает количество байт, на которое нужно сместитьуказатель, а параметр whence - откуда отсчитывать смещение.Предполагается, что смещение можно отсчитывать от начала файла(SEEK_SET), от его конца (SEEK_END) и от текущегоположения указателя (SEEK_CUR). Операция возвращает положениеуказателя, отсчитываемое от начала файла. Таким образом, вызовlseek(handle, 0, SEEK_CUR) возвратит текущее положение указателя,не передвигая его.

int read(int handle, char * where, size_t how_much)

Операция чтения из файла. Указатель where задает буфер,куда нужно поместитьпрочитанные данные; третий параметр указывает, сколько данных надо считать.Система считывает требуемое число байт из файла, начиная с указателячтения/записи в этом файле, и перемещает указатель к концу считаннойпоследовательности. Если файл кончился раньше, считывается столько данных,сколько оставалось до его конца. Операция возвращает количествосчитанных байт. Если файл открывался только для записи, вызов readвозвратит ошибку.

int write(int handle, char * what, size_t how_much)

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

Если файл открывался только для чтения, вызов write возвратит ошибку.

int ioctl(int handle, int cmd, ...); int fcntl(int handle, int cmd, ...)

Дополнительные операции над файлом. Первоначально, по-видимому,предполагалось, что ioctl - это операции над самим файлом,а fcntl - это операции над дескриптором открытого файла,но потом историческое развитие несколько перемешало функции этих системныхвызовов. Стандарт POSIX определяет некоторые операции как наддескриптором, например дублирование (в результате этой операции мы получаемдва дескриптора, связанных с одним и тем же файлом), так и над самим файлом,например, операцию truncate - обрезать файл до заданной длины.В большинстве версий Unix операцию truncate можноиспользовать и для вырезания данных из середины файла. При считывании данныхиз такой вырезанной области считываются нули, а сама эта область незанимает физического места на диске.

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

Большинство реализаций стандарта POSIX предлагает и своидополнительные операции. Так, в Unix SVR4 этими операциямиможно устанавливать синхронную или отложенную запись и т.д.

caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int handle, off_t offset)

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

16. Технологии обработки текстовой информации

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

Программы, позволяющие работать не только с текстом, но и с дополнительной информацией, называются текстовыми процессорами. Они позволяют видеть документ так, как он будет выведен на печать. Такое отображение документа называется WYSIWYG (от англ. «What You See Is What You Get» – «вы получаете то же, что видите»).

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

Редактирование текста в текстовом процессоре заключается в удалении, добавлении, копировании и переносе фрагментов текста, а также проверке орфографии с помощью клавиш клавиатуры или пиктографического меню. Существуют два вида копирования и перемещения участков текста: ручная техника и с помощью буфера обмена. Буфер обмена – это участок оперативной памяти, в котором временно помещается вырезанный или скопированный текст или графика. Копирование или перемещение участков текста в Word выполняются с помощью команд меню: «Главная/Вырезать» или «Главная/Копировать» и команды «Главная/Вставить». Копирование или перемещение участков текста в OpenOffice.org Writer выполняются с помощью команд меню: «Правка/Вырезать» или «Правка /Копировать» и команды «Правка /Вставить».

Форматирование текста содержит возможности выбора следующих параметров: шрифта, абзаца, заливки, списков, рамок, стиля и др. К параметрам шрифта, в свою очередь, относятся: гарнитура (рисунок), начертание, размер (кегль). Каждая гарнитура имеет свое название, например, Arial, Times New Roman, Tahoma. Шрифты могут быть прямыми и наклонными. Наклонный вариант шрифтов чаще всего называют курсивом. Вертикальный размер шрифта измеряется в «пунктах», один пункт равен 1/72 дюйма – примерно 0,353 мм. Шрифт размером 10 пунктов – его называют десятый кегль – часто используют в книгах. Четырнадцатым кеглем печатала текст пишущая машинка, и этот размер шрифта часто применяется и сейчас при составлении различных документов.

Форматирование текста в OpenOffice.org Writer выполняется с помощью меню «Форма/Символы/Шрифт», а в Word с помощью меню «Главная/Шрифт».

17. Электронные таблицы. Формулы в MS Excel

Программа MS Excel (электронные таблицы) предназначена для работы с таблицами данных, преимущественно числовых.

 

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

 

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

 

Возможности электронных таблиц:

 

проведение однотипных расчётов над большими наборами данных;

автоматизация итоговых вычислений;

решение задач путём подбора значений параметров;

табулирование формул (функций);

обработка результатов экспериментов;

проведение поиска оптимальных значений параметров;

подготовка табличных документов;

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

 

Любая формула MS Excel начинается со знака "=". Формулу можно определить следующим образом.

 

1) константа или ссылка на ячейку является формулой; при этом константа может быть записана без знака "=";

 

2) если А и В – формулы, то новыми формулами будут:

 

=А+В (сумма формул является формулой);

 

=А-В (разность формул является формулой);

 

=А*В (произведение формул является формулой);

 

=А/В (частное формул является формулой);

 

=A<B, =A<=B, =A=B, =A<>B, =A>B, =A>=В (неравенство с любыми двумя формулами также является формулой);

 

любая функция, аргументами которой являются формулы (или формула, либо у этой функции отсутствуют аргументы), также будет формулой;

 

3) других формул нет.

 

После записи формулы в соответствующую ячейку выводится результат вычислений по этой формуле (если в меню Сервис>Параметры…>Вид не установлен флажок в поле "Формула").

 

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

18. Формулы в MS Excel. Работа со списками в MS Excel

Электронные таблицы (ЭТ) – это двумерные массивы, состоящие из столбцов и строк. С помощью электронных таблиц можно выполнять различные экономические, бухгалтерские и инженерные расчеты, а также строить разного рода диаграммы, проводить сложный экономический анализ, моделировать и оптимизировать решение различных хозяйственных ситуаций и т.д. Ниже перечислены функции табличных процессоров:

• создание и редактирование электронных таблиц;

• создание многотабличных документов;

• оформление и печать электронных таблиц;

• построение различных типов диаграмм и графиков;

• проведение однотипных расчетов над большими наборами данных;

• работа с электронными таблицами как с базами данных: сортировка данных, выборка данных;

• создание итоговых и сводных таблиц;

• использование при построении таблиц информации из внешних баз данных;

• решение задач подбора значений параметров;

• решение оптимизационных задач;

• обработка результатов экспериментов;

• решение экономических задач;

• разработка макрокоманд, настройка среды под потребности пользователя и т.д.

Кроме этого, табличные процессоры дают возможность:

- представлять числа в таблицах в различных форматах;

- защищать клетки таблиц от несанкционированных действий;

- скрывать столбцы с данными;

- создавать командные файлы, с помощью которых можно составлять программы на простом языке высокого уровня;

- устанавливать связи с другими программными продуктами.

В MicrosoftExcel и OpenOffice.org Calc существуют три вида ссылок:

- относительные;

- абсолютные;

- смешанные.

По умолчанию, при обращении к ячейке в формуле используется относительная ссылка. Например, A1, ZС45.

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

Если при копировании формулы нужно сохранить ссылку на конкретную ячейку, то необходимо воспользоваться абсолютной ссылкой. В абсолютной ссылке, при указании номера ячейки перед именем столбца и перед номером строки ставиться знак "$". Например, $A$1, $B$12 и т.п.

Кроме этого, можно использовать смешанные ссылки, например, A$1 или $A1. Часть ссылки, не содержащая знак "$", будет обновляться при копировании, а другая часть, со знаком "$", останется без изменения.Ввод данных осуществляется в текущую ячейку или в строку формул. В электронных таблицах используют, как правило, следующие типы данных: текстовые; числовые;формулы.

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

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

Для записи числовых данных можно использовать различные форматы, например:

• общий – подбирает подходящий формат числа либо с фиксированной запятой, либо в экспоненциальной форме;

• числовой – применяется для общего способа представления числовой информации с заданным количеством десятичных знаков после запятой;

• денежный – формат отображения денежных величин. Отличается от числового те6м, что после изображения числа может помещаться знак валюты;

• процентный – значение ячеек умножается на 100 и выводится на экран с символом процент;Имеются следующие средства для работы со списками:

- фильтрация;

- сортировка;

- подведение итогов;

- создание сводной таблицы;

- пополнение с помощью формы.

Работа со списком выполняется с помощью пункта меню «Данные».

Строки в списке можно сортировать по значениям ячеек одного или нескольких столбцов.

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

 

Расширенный фильтр является более гибким средством отбора записей, чем автофильтр и позволяет задавать: условия, соединенные логическим оператором ИЛИ, для нескольких столбцов; три и более условий для конкретного столбца; вычисляемые условия. Использование расширенного фильтра предполагает наличие диапазона критериев.

Для подведения промежуточных итогов выполняются следующие действия:

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

- фильтрация (по необходимости);

- выбор меню «Данные-Итоги».

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

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

 

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

 

Векторные ГР встроены в многие приложения и используются для создания простых рисунков из набора графических примитивов (автофигур). Существуют и профессиональные растровые ГР (например, CorelDRAW).

 

Несмотря на то, что графические редакторы значительно различаются по своим возможностям, в них много общего. Графические редакторы предоставляют возможность выбора инструмента для работы с изображениями. Эти инструменты объединяются в специальные панели инструментов. Кроме панели инструментов можно использовать меню команд. Работа с изображением ведётся в рабочей области, которая занимает большую часть окна ГР. Выбор цвета для рисования осуществляется с помощью палитр. Многие ГР дают возможность использовать кроме стандартных палитр подбор нужного цвета вручную, а иногда и орнаменты. На рисунке показано окно растрового графического редактора Paint. Обычно в ГР применяются несколько групп инструментов:

 

Инструменты для рисования (прямых, ломаных, кривых линий, прямоугольников, эллипсов и т.д.; кисти, заливки и т.п.). Векторные ГР содержат также инструменты группировки и разгруппировки объектов.

 

Выделяющие инструменты (выделение прямоугольной и выделение произвольной области в растровых редакторах или выделение объекта в векторных);

 

Инструменты редактирования (позволяют вносить в рисунок изменения – поворачивать, изменять размер, цвет выделенной области);

 

Текстовые инструменты;

 

Масштабирующие инструменты.

 

Кроме того, меню графического редактора обычно содержит разнообразные спецэффекты и возможности преобразования изображения. Современные графические редакторы часто объединяют в себе достоинства векторных и растровых редакторов за счет использования многослойных изображений. В таких редакторах изображение может быть получено наложением нескольких изображений (каждое из которых называют слоем) друг на друга, причем свойства каждого слоя (прозрачность, цветовая гамма и др.)задаются отдельно. Созданные таким способом коллажи (изображения, полученные в результате соединения нескольких никак не связанных друг с другом фотографий) могут ввести в заблуждение своей реалистичностью! В современных графических редакторах часть слоев могут быть растровыми, а часть векторными.

20. Электронные презентации

21. Общее понятие о базах данных. Основные понятия систем управления базами данных. Модели данных

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

В мире существует множество систем управления базами данных. Несмотря на то, что они могут по-разному работать с разными объектами и предоставляют пользователю различные функции и средства, большинство СУБД опираются на единый устоявшийся комплекс основных понятий. Это дает возможность рассмотреть одну систему и обобщить ее понятия, приемы и методы на весь класс СУБД. В качестве такого учебного объекта можно взять СУБД Microsoft Access, входящую в пакет Microsoft Office.Объекты базы данных

Таблицы

Таблицы – это основные объекты любой базы данных. Во-первых, в них хранятся все данные, имеющиеся в базе, а во-вторых, таблицы хранят и структуру базы (поля, их типы и свойства).

Запросы

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

Формы

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

Отчеты

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

Страницы

Это специальные объекты баз данных, реализованных в последней версии СУБД Microsoft Access (Access 2000). Правда, более корректно их называют страницами доступа к данным. Физически это особый объект, выполненный в коде HTML, размещаемый на Web-странице и передаваемый клиенту вместе с ней. Сам по себе этот объект не является базой данных, но содержит компоненты, через которые осуществляется связь переданной Web-страницы с базой данных, остающейся на сервере. Пользуясь этими компонентами, посетитель Web-узла может просматривать записи базы в полях страницы доступа. Таким образом, страницы доступа к данным осуществляют интерфейс между клиентом, сервером и базой данных, размещенной на сервере. Эта база данных не обязательно должна быть базой данных Microsoft Access. Страницы доступа, созданные средствами Microsoft Access, посволяют работать также с базами данных Microsoft SQL Server.

Макросы и модули

 

 

Эти категории объектов предназначены как для автоматизации повторяющихся операций при работе с СУБД, так и для создания новых функций путем программирования. В СУБД Microsoft Access макросы состоят из последовательности внутренних команд СУБД и являются одним из средств автоматизации работы с базой. Модули создаются средствами внешнего языка програмирования, в данном случае, языка Visual Basic for Applications. Это одно из средств, с помощью которых разработчик базы может заложить в нее нестандартные функциональные возможности, удовлетворить специфические требования заказчика, повысить быстродействие системы управления, а также уровень ее защищенности.

22. Основные понятия реляционных баз данных

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

 

Для начала покажем смысл этих понятий на примере отношения СОТРУДНИКИ, содержащего информацию о сотрудниках некоторой организации:4.1.1. Тип данных

 

Понятие тип данных в реляционной модели данных полностью адекватно понятию типа данных в языках программирования. Обычно в современных реляционных БД допускается хранение символьных, числовых данных, битовых строк, специализированных числовых данных (таких как "деньги"), а также специальных "темпоральных" данных (дата, время, временной интервал). Достаточно активно развивается подход к расширению возможностей реляционных систем абстрактными типами данных (соответствующими возможностями обладают, например, системы семейства Ingres/Postgres). В нашем примере мы имеем дело с данными трех типов: строки символов, целые числа и "деньги".

 

4.1.2. Домен

 

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

 

Наиболее правильной интуитивной трактовкой понятия домена является понимание домена как допустимого потенциального множества значений данного типа. Например, домен "Имена" в нашем примере определен на базовом типе строк символов, но в число его значений могут входить только те строки, которые могут изображать имя (в частности, такие строки не могут начинаться с мягкого знака).

 

Следует отметить также семантическую нагрузку понятия домена: данные считаются сравнимыми только в том случае, когда они относятся к одному домену. В нашем примере значения доменов "Номера пропусков" и "Номера групп" относятся к типу целых чисел, но не являются сравнимыми. Заметим, что в большинстве реляционных СУБД понятие домена не используется, хотя в Oracle V.7 оно уже поддерживается.

 

4.1.3. Схема отношения, схема базы данных

 

Схема отношения - это именованное множество пар {имя атрибута, имя домена (или типа, если понятие домена не поддерживается)}. Степень или "арность" схемы отношения - мощность этого множества. Степень отношения СОТРУДНИКИ равна четырем, то есть оно является 4-арным. Если все атрибуты одного отношения определены на разных доменах, осмысленно использовать для именования атрибутов имена соответствующих доменов (не забывая, конечно, о том, что это является всего лишь удобным способом именования и не устраняет различия между понятиями домена и атрибута).

 

Схема БД (в структурном смысле) - это набор именованных схем отношений.

 

4.1.4. Кортеж, отношение

 

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

 

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

23. Объекты баз данных. Основные операции с данными в СУБД

База данных – это организованная структура, предназначенная для хранения информации. В современных базах данных хранятся не только данные, но и информация.

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

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

В мире существует множество систем управления базами данных. Несмотря на то, что они могут по-разному работать с разными объектами и предоставляют пользователю различные функции и средства, большинство СУБД опираются на единый устоявшийся комплекс основных понятий. Это дает возможность рассмотреть одну систему и обобщить ее понятия, приемы и методы на весь класс СУБД. В качестве такого учебного объекта можно взять СУБД Microsoft Access, входящую в пакет Microsoft Office.

Состав СУБД

Язык описания данных (ЯОД) – средства описания данных в БД и связей между ними. Средствами этого языка описывается структура БД, форматы записей, пароли, защищающие данные.

Язык манипулирования данными (ЯМД) – язык для выполнения операций над данными, позволяющий менять их строение.

Для различных СУБД реализация этих уровней языков может быть различной. В одних случаях ЯОД и ЯМД требует составления пользователем программы полностью “вручную”, в других (что отражает современную тенденцию) в СУБД присутствуют средства визуальной (зримой, наглядной) разработки программ. Для этого в современных СУБД имеются редакторы экранных форм, отчетов. “Кирпичиками” (инструментами) таких редакторов являются поля различных видов (поля ввода, поля вывода, вычисляемые поля), процедуры обработки различных типов (формы ввода, таблицы, отчеты, запросы). На основании созданных пользователем объектов программы – генераторы формируют программный код на языке конкретной машины или на промежуточном языке.

Любая СУБД позволяет выполнять четыре простейшие операции с данными:

добавлять в таблицу одну или несколько записей;

удалять из таблицы одну или несколько записей;

обновлять значения некоторых полей в одной или нескольких записях;

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

Для выполнения этих операций используется механизм запросов. Результатом выполнения запросов является либо отобранное по определенным критериям множество записей, либо изменения в таблицах. Запросы к базе формируются на специально созданном для этого языке, который так и называется язык структурированных запросов (SQL — Structured Query Language).

24. Назначение и основы использования систем искусственного интеллекта. Базы знаний. Экспертные системы

Термин интеллект (intelligence) происходит от латинского intellectus - что означает ум, рассудок, разум; мыслительные способности человека. Соответственно искусственный интеллект(artificial intelligence) - ИИ (AI) обычно толкуется как свойство автоматических систем брать на себя отдельные функции интеллекта человека, например, выбирать и принимать оптимальные решения на основе ранее полученного опыта и рационального анализа внешних воздействий.

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

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

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

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

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

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

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

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

Исторически сложились три основных направления в моделировании искусственного интеллекта.

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

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

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

Самыми первыми интеллектуальными задачами, которые стали решаться при помощи ЭВМ были логические игры (шашки, шахматы), доказательство теорем. Хотя, правда здесь надо отметить еще кибернетические игрушки типа "электронной мыши" Клода Шеннона, которая управлялась сложной релейной схемой. Эта мышка могла "исследовать" лабиринт, и находить выход из него. А кроме того, помещенная в уже известный ей лабиринт, она не искала выход, а сразу же, не заглядывая в тупиковые ходы, выходила из лабиринта.

Американский кибернетик А. Самуэль составил для вычислительной машины программу, которая позволяет ей играть в шашки, причем в ходе игры машина обучается или, по крайней мере, создает впечатление, что обучается, улучшая свою игру на основе накопленного опыта. В 1962 г. эта программа сразилась с Р. Нили, сильнейшим шашистом в США и победила.

Каким образом машине удалось достичь столь высокого класса игры?

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

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

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

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

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

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

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

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

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

Что же касается моделирования логического мышления, то хорошей модельной задачей здесь может служить задача автоматизации доказательства теорем. Начиная с 1960 г., был разработан ряд программ, способных находить доказательства теорем в исчислении предикатов первого порядка. Эти программы обладают, по словам американского специалиста в области искусственного интеллекта Дж. Маккатти, "здравым смыслом", т. е. способностью делать дедуктивные заключения.

В программе К. Грина и др., реализующей вопросно-ответную систему, знания записываются на языке логики предикатов в виде набора аксиом, а вопросы, задаваемые машине, формулируются как подлежащие доказательству теоремы. Большой интерес представляет "интеллектуальная" программа американского математика Хао Ванга. Эта программа за 3 минуты работы IBM-704 вывела 220 относительно простых лемм и теорем из фундаментальной математической монографии, а затем за 8.5 мин выдала доказательства еще 130 более сложных теорем, часть их которых еще не была выведена математиками. Правда, до сих пор ни одна программа не вывела и не доказала ни одной теоремы, которая бы, что называется "позарез" была бы нужна математикам и была бы принципиально новой.

Очень большим направлением систем искусственного интеллекта является робототехника. В чем основное отличие интеллекта робота от интеллекта универсальных вычислительных машин?

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

Первых роботов трудно назвать интеллектуальными. Только в 60-х годах появились очуствленные роботы, которые управлялись универсальными компьютерами. К примеру в 1969 г. в Электротехнической лаборатории (Япония) началась разработка проекта "промышленный интеллектуальный робот". Цель этой разработки - создание очуствленного манипуляционного робота с элементами искусственного интеллекта для выполнения сборочно-монтажных работ с визуальным контролем.

Манипулятор робота имеет шесть степеней свободы и управляется мини-ЭВМ NEAC-3100 (объем оперативной памяти 32000 слов, объем внешней памяти на магнитных дисках 273000 слов), формирующей требуемое программное движение, которое отрабатывается следящей электрогидравлической системой. Схват манипулятора оснащен тактильными датчиками.

В качестве системы зрительного восприятия используются две телевизионные камеры, снабженные красно-зелено-синими фильтрами для распознавания цвета предметов. Поле зрения телевизионной камеры разбито на 64*64 ячеек. В результате обработки полученной информации грубо определяется область, занимаемая интересующим робота предметом. Далее, с целью детального изучения этого предмета выявленная область вновь делится на 4096 ячеек. В том случае, когда предмет не помещается в выбранное "окошко", оно автоматически перемещается, подобно тому, как человек скользит взглядом по предмету. Робот электротехнической лаборатории был способен распознавать простые предметы, ограниченные плоскостями и цилиндрическими поверхностями при специальном освещении. Стоимость данного экспериментального образца составляла примерно 400000 долларов.

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

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

Понятие экспертных систем и баз знаний

 

Аналогично БД (база данных) существует понятие база знаний (БЗ). Чаще всего БЗ используются в экспертных системах.

 

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

В англоязычной литературе кроме понятия Artificial Intellect используется также термин - Knowledge Based Systems (KBS) - системы, базирующиеся на знаниях (СБЗ).

Таким образом, СБЗ - система, дающая возможность использовать подходящим образом представленные знания с помощью компьютера.

Компоненты СБЗ:

· база знаний

 

· механизм получения решений

 

· интерфейс

 

Самая характерная черта СБЗ - использование базы знаний. Общепринятого определения базы знаний нет.