- •Содержание предисловие 5
- •Тема 1. Основные понятия информатики 8
- •Тема 2. Алгоритмизация и программирование 23
- •Тема 3. Технические средства реализации информационных процессов 40
- •Тема 10. Искусственный интеллект 170
- •Предисловие
- •Тема 1. Основные понятия информатики
- •1.1. Информатика, ее структура, задачи и функции
- •1.2. Место информатики в ряду других фундаментальных наук
- •1.3. Понятие информации
- •1.4. Измерение информации: количество, единицы измерения, энтропия
- •1.5. Свойства информации
- •1.6. Виды информации
- •1.7. Требования к информации
- •1.8. Классификация и кодирование информации
- •Кодирование и декодирование числовой информации
- •Международные системы байтового кодирования текстовой информации
- •Кодирование графических данных
- •1.9. Общая характеристика процессов сбора, передачи, обработки и накопления информации
- •Тесты для самопроверки
- •1. Из каких взаимосвязанных частей состоит информатика?
- •2. Информация это
- •Тема 2. Алгоритмизация и программирование
- •2.1. Понятие алгоритма
- •2.2. Свойства алгоритмов
- •2.3. Графическое представление алгоритмов
- •2.4. Технологии программирования Операционный подход
- •Структурный подход
- •Объектно-ориентированное программирование
- •Декларативный подход в программировании
- •Процедурно-ориентированное программирование
- •2.5. Понятие языка программирования
- •2.6. Грамматика языков программирования
- •2.7. Проектирование программ
- •2.8. Системы программирования
- •2.9. Языки программирования высокого уровня Язык программирования Паскаль
- •Основные элементы языка программирования Паскаль
- •Язык программирования Пролог
- •Тесты для самопроверки
- •Задания для самопроверки
- •2. Разработать алгоритм и программу на языке Паскаль, выполняющую следующие действия:
- •Тема 3. Технические средства реализации информационных процессов
- •3.1. Офисная техника
- •3.2. История развития средств вычислительной техники
- •3.3. Методы классификации компьютеров
- •Классификация по поколениям Первое поколение
- •Второе поколение
- •Третье поколение
- •Четвёртое поколение
- •Пятое поколение37
- •Классификация по условиям эксплуатации
- •Классификация по производительности и характеру использования
- •Основные разновидности портативных компьютеров
- •3.4. Архитектура эвм
- •Классическая архитектура (архитектура фон Неймана)
- •Многопроцессорная архитектура
- •Многомашинная вычислительная система
- •Архитектура с параллельными процессорами
- •3.5. Базовая аппаратная конфигурация пк
- •Системный блок
- •Видеосистема компьютера
- •Монитор на базе электронно-лучевой трубки
- •Последняя не должна быть ниже 85 Гц, иначе изображение будет мерцать. Жидкокристаллические мониторы
- •Сенсорный экран
- •Клавиатура
- •3.6. Внутренние устройства системного блока пк
- •Системная плата
- •Внешняя память
- •Накопители на гибких магнитных дисках
- •Накопители на жестких магнитных дисках
- •Оптические накопители cd-rom
- •Накопители на магнитной ленте (стримеры)
- •Flash-память
- •Платы расширения
- •Аудиоадаптер
- •Видеоадаптер и графический акселератор
- •Модем и факс-модем
- •3.7. Системы, расположенные на материнской плате пк Центральный процессор
- •Микропроцессорный комплект
- •Системные шины
- •Внутренняя память
- •Оперативная память
- •Постоянная память
- •3.8. Периферийные устройства пк Принтеры
- •Плоттер
- •Манипуляторы
- •Дигитайзер
- •3.9. Общая схема пк
- •Тесты для самопроверки
- •Тема 4. Программные средства реализации информационных процессов
- •4.1. Программное обеспечение эвм. Классификация и структура.
- •4.2. Назначение и основные функции ос
- •4.3. Классификация ос
- •4.4. Понятие файловой системы
- •4.5. Сетевое по
- •4.6. Операционные среды и оболочки
- •4.7. Служебное по
- •Тесты для самопроверки
- •Тема 5. Инструментарии решения функциональных задач
- •5.1. Понятие прикладного по и пакета прикладных программ
- •5.2. Прикладное по общего назначения
- •5.2.1. Текстовые процессоры
- •5.2.2. Электронные таблицы
- •5.2.3. Средства создания презентаций
- •5.2.4. Система управления базами данных
- •5.2.5. Графические редакторы
- •5.2.6. Офисные системы
- •5.3. Проблемно-ориентированное по
- •5.4. Методо-ориентированное по
- •Тесты для самопроверки
- •Тема 6. Базы данных
- •6.1. Основные понятия баз данных
- •6.2. Виды моделей баз данных
- •6.2.1. Иерархическая модель данных
- •6.2.2. Сетевая модель данных
- •Реляционная модель данных
- •6.3. Классификация баз данных
- •6.4. Проектирование реляционной бд
- •6.4.1. Требования к бд
- •6.4.2. Трехуровневая архитектура представления данных
- •6.4.3. Средства представления инфологической модели данных
- •6.4.4. Нормализация отношений
- •Первая нормальная форма
- •Вторая нормальная форма
- •Третья нормальная форма
- •6.5. Основы использования языка sql
- •6.5.1. Язык Описания Данных
- •6.6. Язык Манипулирования Данными
- •Тесты для самопроверки
- •Тема 7. Модели и моделирование
- •7.1. Ключевые этапы моделирования
- •7.2. Обобщённая классификация моделей
- •7.2.1. Категориальные модели
- •7.2.2. Модели, фиксирующие особенности свойств оригинала
- •7.2.3. Природа моделей
- •7.2.4. Основания для перехода от модели к оригиналу
- •7.3. Классификация математических моделей
- •7.3.1. Модели, определяемые методом получения результата
- •7.3.2. Модели, определяемые инструментальной средой моделирования
- •Тесты для самопроверки
- •9. Среди общепринятых классификаций видов моделей отсутствует их классификация на
- •10. В отношении «объект-модель» не находятся понятия
- •Тема 8. Компьютерные сети
- •8.1. Основные понятия компьютерных сетей
- •8.2. Топология компьютерных сетей
- •8.3. Структура вычислительной сети
- •8.3.1. Компьютеры
- •8.3.2. Каналы передачи данных
- •8.3.3. Устройства сопряжения эвм с аппаратурой передачи данных
- •8.3.4. Устройства межсетевого интерфейса
- •8.3.5. Устройства коммутации
- •8.3.6. Методы доступа к каналам связи
- •8.4. Локальные сети
- •8.5. Организация работы в локальной сети
- •8.5.1. Сеть с файловым сервером
- •Одноранговая сеть
- •Модель открытой системы взаимодействия
- •8.6. Возможности сети Интернет
- •8.6.1. Программное обеспечение работы в Интернет
- •8.6.2. Адресация и протоколы в Интернет
- •8.7. Службы Интернета
- •8.7.1. Терминальный режим
- •8.7.2. Всемирная паутина, или World Wide Web
- •8.7.3. Служба Gopher
- •8.7.4. Файловые информационные ресурсы ftp
- •8.7.5. Электронная почта (e-mail)
- •8.7.6. Списки рассылки (Mail List)
- •8.7.7. Новости, или конференции
- •8.7.8. Передача разговоров по Интернету
- •8.7.9. Многопользовательские области, или Игры в Internet
- •8.7.10. Радиовещание Интернет (Internet Talk Radio)
- •8.7.11. Базы данных wais
- •8.8. Сетевая операционная система (сос)
- •8.8.1. Сетевая операционная система aix
- •8.8.2. Сетевая операционная система Cairo
- •8.8.3. Сетевая операционная система Dayton
- •8.8.4. Сетевая операционная система lan Server
- •8.8.5. Сетевая операционная система NetWare
- •8.8.6. Сетевая операционная система vines
- •8.8.7. Сетевая операционная система Windows 95
- •8.8.8. Сетевая операционная система Windows nt*
- •8.8.9. Сетевая операционная система Windows ntas
- •8.8.10. Операционная система unix
- •Тесты для самопроверки
- •1. Выберите определение компьютерной сети
- •2. Сетевая плата - это устройство
- •3. Какие типы локальных сетей существуют?
- •4. Какие области выделяются пользователю на жестком диске сервера?
- •Тема 9. Информационная безопасность
- •9.1. Защита информации
- •9.2. Объекты и элементы защиты в компьютерных системах обработки данных
- •9.3. Средства опознания и разграничения доступа к информации
- •9.4. Криптографический метод защиты информации
- •9.5. Компьютерные вирусы и антивирусные программные средства
- •9.6. Защита программных продуктов
- •9.7. Обеспечение безопасности данных на автономном компьютере
- •9.8. Безопасность данных компьютерных сетей
- •Тесты для самопроверки
- •Тема 10. Искусственный интеллект
- •10.1. Основные положения
- •10.2. Типичные модели представления знаний
- •10.2.1 Логическая модель представления знаний
- •10.2.2. Представление знаний правилами продукций
- •10.2.3. Объектно-ориентированное представление знаний фреймами
- •10.2.4. Модель семантической сети
- •10.3. Эволюционные аналогии в искусственных интеллектуальных системах
- •Тесты для самопроверки
- •Библиографический список
- •Информатика
- •300012, Г. Тула, пр. Ленина, 92
- •300012, Г. Тула, ул. Болдина, 151
Объектно-ориентированное программирование
Объектно-ориентированное программирование основано на концепции объединения данных и процедур их обработки в единое целое.
Объект – совокупность свойств (структур данных, характерных для этого объекта), методов их обработки (подпрограммы изменения свойств) и событий, на которые данных объект может реагировать и которые приводят, как правило, к изменению свойств объекта17.
Свойства – перечень параметров объекта, которые определяют внешний вид и поведение объекта, выделяют уникальные особенности каждого экземпляра.
События – сигналы, формируемые пользователем, операционной системой или работающей программой.
Объекты могут иметь идентичную структуру и отличаться только значениями свойств. В таких случаях в программе создается новый тип, основанный на единой структуре объекта. Он называется классом, а каждый конкретный объект, имеющий структуру этого класса, называется экземпляром класса.
Основными отличительными свойствами объекта являются:
инкапсуляция – объединение структур (записей) с методами (процедурами и функциями), работающими с этими записями;
наследование – задание объекта, затем использование его для построения иерархии порожденных объектов с наследованием доступа каждого из порожденных объектов к коду и данным предка18;
полиморфизм – задание одного имени действию, которое передается вверх и вниз по иерархии объектов, с реализацией этого действия способом, соответствующим каждому объекту в иерархии19.
Декларативный подход в программировании
Появился в разработке компьютерных программ в начале 70-х. Направлен на относительно узкий круг задач искусственного интеллекта. При его применении программист описывает свойства исходных данных, их взаимосвязи, свойства, которыми должен обладать результат, а не алгоритм получения результата. Алгоритм порождается той системой, которая поддерживает декларативно-ориентированный язык программирования (Пролог и Лисп).
Процедурно-ориентированное программирование
Данный подход иногда называют параллельным программированием. В привычных алгоритмах и программах действия совершаются последовательно одно за другим. Однако логика решения множества задач вполне допускает одновременное выполнение нескольких операций, что ведет к многократному увеличению эффективности. Реализация параллельных алгоритмов на ЭВМ стала возможной с появлением многопроцессорных компьютеров.
2.5. Понятие языка программирования
Язык программирования20 – формальный язык для описания алгоритма решения задачи на компьютере.
Каждый язык программирования имеет:
алфавит – фиксированный для данного языка набор основных символов, допускаемых для составления текста программы на этом языке;
синтаксис – систему правил, определяющих допустимые конструкции языка программирования из букв алфавита;
семантику – систему правил однозначного толкования отдельных языковых конструкций, позволяющих воспроизвести процесс обработки данных.
Программа, подготовленная на языке программирования, должна пройти ряд преобразований, чтобы компьютер мог ее выполнить (рис.2.3).
Рисунок 2.3 - Схема процесса создания загрузочного21 модуля программы
Трансляция может выполняться с использованием средств компиляторов или интерпретаторов. Компиляторы транслируют всю программу, но без ее выполнения. Интерпретаторы, в отличие от компиляторов, выполняют пооператорную обработку и выполнение программы.
Достоинством компилятора являются компактный и эффективный код программы и высокая скорость выполнения. Достоинством интерпретаторов является возможность постоянного контроля состояния программно-аппаратной среды, благодаря чему достигается высокая надежность работы.
В реальных системах программирования перемешаны технология и компиляции и интерпретации. В процессе отладки программа может выполняться по шагам, а для отлаженной программы может быть получен исполняемый код.
В зависимости от способа преобразования операндов языка программирования в инструкции для ЭВМ их подразделяют на:
языки низкого уровня (трансляторы), которые осуществляют транслитерацию, т.е. преобразование одного оператора языка в одну машинную инструкцию (пример - ассемблеры)
языки высокого уровня (компиляторы22), осуществляющие преобразование одного оператора языка в несколько машинных инструкций.
Языки ассемблера ориентированы на конкретный тип процессора и учитывают его особенности, что позволяет создавать очень эффективные и компактные программы. Однако от разработчика в этом случае требуется очень высокая квалификация, отладка больших программ затруднена, а результирующая программа не может быть перенесена на другой тип компьютера.
Языки высокого уровня имитируют естественные языки и имеют следующие достоинства:
алфавит значительно шире машинного, что делает его гораздо более выразительным и существенно повышает наглядность и понятность текста;
набор операций, допустимых для использования, не зависит от набора машинных операций, а выбирается из соображений удобства формулирования алгоритмов решения задач определенного класса;
конструкции команд (операторов) отражают содержательные виды обработки данных и задаются в удобном для человека виде;
используется аппарат переменных и действия с ними;
поддерживается широкий набор типов данных.
