- •Раздел 1 основы теоретической информатики Лекция 1 Основные понятия и определения информатики
- •Терминалогия и объект информации
- •Предметная область информатики
- •Историческая справка развития вычислительной техники
- •Лекция 2 Научные основы информатики
- •2.1 Категории информатики
- •2.2 Аксиоматика информатики
- •2.3 Виды и свойства информации
- •2.4 Методы измерения информации
- •Лекция 3 Системы счисления
- •3.1 Основные понятия
- •3.2 Двоичная система счисления
- •3.3 Смешанные системы счисления
- •3.4 Перевод чисел в системах счисления
- •4.1 Перевод целых чисел из р-итой системы счисления в q-ичную.
- •3.4.2 Перевод дробной части
- •Лекция 4 Основы элементной базы цифровых автоматов
- •4.1 Логические элементы
- •4.2 Основы построения логических элементов
- •4.2.1 Образование и свойства электронно-дырочного перехода
- •4.2.2 Биполярные и полевые транзисторы
- •4.3 Элементы интегральных схем
- •Лекция 5 Формы представления и преобразования информации
- •5.1 Общие принципы представления информации. Числовая система эвм
- •5.2 Числовая система эвм
- •5.2.1 Представление целых чисел без знака и со знаком
- •5.2.2 Индикаторы переноса и переполнения в эвм
- •5.3 Представление символьной информации в эвм
- •5.4 Форматы данных
- •Раздел 2 Техническая база современной информатики Лекция 6 Общие принципы организации и работы компьютеров
- •6.1 Классификация и характеристики эвм
- •6.1.1 Классификация эвм по принципу действия
- •6.1.2 Классификация эвм по назначению
- •6.2.1 Устройства пк
- •6.2.2 Основные принципы построения компьютеров.
- •6.3 Элементарные команды эвм
- •Лекция 7 Архитектура и структура компьютера
- •7. 1 Архитектура и структура компьютера
- •7.2 Устройство центрального процессора
- •7.2.1 Структура микропроцессора
- •7.2.1.1 Операционная часть
- •Алгоритм работы уу следующий:
- •Алу предназначено для выполнения арифметических и логических операций преобразования информации.
- •Алгоритм работы алу следующий:
- •7.2.1.2 Интерфейсная часть мп
- •7.2.2 Типы микропроцессоров
- •7.3 Устройства памяти
- •7.3.1 Оперативная память
- •7.3.3 Специальная память
- •Лекция 8 Организация ввода-вывода информации
- •8.1 Устройства ввода и отображения текстовой и графической информации
- •8.1.1 Видеотерминальные устройства
- •8.2 Внешние запоминающие устройства
- •8.3 Печатающие устройства
- •8.3.1 Матричные принтеры
- •8.3.2 Струйные принтеры
- •8.3.3 Литерные принтеры
- •8.3.4 Лазерные принтеры
- •9.2 Основные способы передачи данных
- •9.3 Аппаратная реализация способов передачи данных
- •Лекция 10 Организация межкомпьютерной связи
- •10.1 Основные способы организации межкомпьютерной связи
- •10.2 Понятие топологии сети и базовых топологий
- •10.2.1 Топология типа «шина»
- •10.2.2 Топология типа «звезда»
- •10.2.3 Топология типа «кольцо»
- •10.2.4 Комбинированные топологии
- •Лекция 11 Классификация компьютерных сетей
- •11.1 Классификация вычислительных сетей
- •11.2 Способы соединения между собой локальных и глобальных вычислительных сетей
- •Лекция 12 Основы теории интернет
- •12.1 Сетевые протоколы
- •12.2 Система ip-адресации
- •12.3 Сервисы, предоставляемые сетевыми технологиями
- •12.3.1.Сервис Электронная почта (e-mail)
- •12.3.2 Сервис Сетевые новости Usenet
- •12.3.3 Сервис Списки рассылки (Maillists)
- •12.3.4 Сервис ftp - передача файлов
- •Лекция 13 Мультимедиа и мультимедийные технологии
- •13.1 Основные понятия мультимедиа
- •13.2 Аппаратные средства мультимедиа
- •13.3 Технологии мультимедиа
- •13.3.1 Образование
- •13.3.2 Техника
- •13.3.3 Промышленность
- •14.1.2 Свойства алгоритмов
- •14.1.3 Правила построения алгоритма
- •14.2 Формы записи алгоритма
- •14.2.1 Словесная форма записи алгоритмов
- •14.2.2 Графическая форма записи алгоритмов
- •14.2.3 Псевдокод
- •14.2.4 Программная форма записи алгоритма
- •14.3 Базовые алгоритмические структуры
- •14.3.1 Типы базовых алгоритмических структур
- •14.3.2 Линейная базовая структура ("последовательность")
- •П Рисунок 14.1 ример. Вычислить высоты треугольника со сторонами а, b, с, используя формулы:
- •14.3.3 Базовая структура "ветвление".
- •14.3.5 Базовая структура "цикл"
- •Лекция 15 Языки программирования и их уровни
- •15.1 Языки программирования
- •15.1.1 Машинный язык
- •15.1.1.1.Недостатки машинного языка.
- •15.1.2 Язык ассемблер
- •15.1.3 Языки программирования высокого уровня
- •15.2 Компоненты, образующие алгоритмический язык
- •15.2.1 Отличительные особенности алгоритмических языков
- •15.2.2 Компиляторы и интерпретаторы
- •15.2.3 Преобразование алгоритма в программу
- •15.2.4 Три составляющие алгоритмического языка
- •15.3 Общая характеристика языка Турбо Паскаль
- •15.4 Общая характеристика языка Си
- •16.1.1.2 Составные элементы Паскаль–программы
- •Операторы
- •Идентификаторы и имена
- •Описания
- •Переменные
- •Функции и процедуры
- •16.1.1.3 Синтаксис языка.
- •16.1.2 Структура программы на языке Паскаль
- •16.1.3 Классификация типов данных языка Паскаль
- •16.1.3.1 Простые типы Целые типы
- •Логический тип
- •Символьный тип
- •Перечисляемый тип
- •16.1.3.2 Структурированные типы Массив
- •Порядок использования строк.
- •Множество
- •Порядок использования множеств
- •Порядок использования типа файл:
- •16.2.1.2 Основные элементы Си-программы
- •Функции
- •Типы переменных
- •Целочисленные типы
- •Тип char
- •Вещественные типы
- •16.2.1.3 Синтаксис языка Идентификаторы
- •Предопределённые константы
- •Ключевые слова
- •16.2.2 Структура программы на языке Си.
- •16.2.3 Классификация типов данных языка Си.
- •16.2.3.1 Целочисленный (целый) тип данных (тип int)
- •16.2.3.2 Вещественный (данные с плавающей точкой) тип данных (типы float и double)
- •Лекция 17 Основные конструкции языка Turbo Pascal и c
- •17.1 Основные конструкции языка Turbo Pascal
- •17.1.1 Константы
- •17.1.2 Переменные
- •17.1.3 Функции
- •17.1.3.1 Стандартные функции
- •Математические функции
- •Функции преобразования типа
- •Функции для величин порядкового типа.
- •17.1.3.2 Функции, создаваемые пользователем
- •17.1.4 Знаки операций
- •17.1.4.1 Арифметические операции
- •17.1.4.2 Логические операции
- •17.1.4.3 Операции с битами информации
- •17.1.4.4 Операции отношения
- •17.1.5 Круглые скобки.
- •17.1.6 Порядок вычисления выражений
- •17.2 Основные конструкции языка c
- •17.2.1 Константы
- •17.2.1.1 Целочисленные константы
- •17.2.1.2 Вещественные константы
- •17.2.1.3 Символьные константы
- •17.2.1.4 Строковые константы
- •17.2.2 Переменные
- •17.2.3 Функции
- •17.2.3.1 Рекурсивные функции
- •17.2.3.2 Математические функции
- •17.2.4 Знаки операций
- •17.2.4.1 Операция присваивания
- •17.2.4.2 Операции отношения
- •17.2.4.3 Арифметические операции
- •17.2.4.4 Логические операции
- •17.2.4.5 Сдвиговые операции
- •17.2.4.6 Круглые скобки
- •17.2.4.7 Порядок вычисления выражений
- •Лекция 18 Операторы языка Turbo Pascal и c
- •18.2.2 Оператор goto
- •18.2.2.1 Назначение
- •18.4.2 Оператор switch
- •18.4.2.1 Назначение
- •18.4.2.2 Форма записи:
- •19.1.2 Порядок создания и использования процедур
- •19.1.3 Порядок создания и использования функций
- •19.1.4 Механизм формальных параметров
- •19.1.4.1 Параметры-значения
- •19.1.4.2 Параметры-переменные
- •19.1.4.3 Параметры-константы
- •19.1.4.4 Параметры без типа
- •19.1.4.5 Массивы и строки открытого типа
- •19.1.4.6 Параметры-процедуры и параметры-функции
- •19.1.5 Использование модулей в Турбо Паскаль
- •19.1.5.1 Стандартные модули Турбо Паскаль
- •Модуль System
- •Модуль Strings
- •Модуль Crt
- •Модуль Graph
- •Модуль Overlay
- •19.1.5.5 Исполнительная часть модуля
- •19.1.5.6 Секция инициализации
- •19.1.5.7 Использование модуля в основной программе
- •19.1.5.8 Использование идентификаторов элементов модуля
- •19.2 Подпрограммы в языке c
- •19.2.1 Характеристика подпрограмм
- •19.2.2 Порядок создания и использования функций
- •19.2.2.1 Определение функции
- •19.2.2.2 Вызов функции
- •19.2.2.3 Возврат в вызывающую функцию
- •19.2.3 Механизм формальных параметров
- •Лекция 20 Программное обеспечение и его основные характеристики
- •20.1 Основные понятия программного обеспечения
- •20.2 Классификация программного обеспечения
- •20.3 Системное программное обеспечение
- •20.4 Инструментальное программное обеспечение
- •20.5 Прикладное программное обеспечение
- •20.5.1 Универсальное прикладное по
- •20.5.2 Специализированное прикладное по
- •Лекция 21 Операционные системы
- •21.1 Назначение и основные функции операционных систем
- •21.1.1 Средства проверки дисков
- •21.1.2 Средства управления виртуальной памятью
- •21.1.3 Средства кэширования дисков
- •21.1.4 Средства резервного копирования данных
- •21.2 Понятие файловой системы
- •21.2.1 Обзор файловой системы fat
- •21.2.2 Обзор файловой системы ntfs
- •21.3 Взаимодействие с аппаратными средствами
- •Лекция 22 Операционная система windows
- •22.1 История развития ос Windows
- •22.2 Характеристика операционной системы Windows
- •22.2.2 Многозадачность и многопоточность
- •22.2.3 Графический пользовательский интерфейс
- •22.2.4 Использование виртуальной памяти
- •22.3.1 Объекты файловой системы
- •22.3.1.1 Объект – файл
- •22.3.1.2 Объект – папка
- •22.3.1.3 Объект – ярлык
- •22.3.2 Иерархическая структура подчиненности папок
- •22.3.3 Объекты пользовательского уровня – приложение и документ
- •22.3.4 Основные понятия графического интерфейса Windows
- •22.3.4.1 Формы указателя мыши при работе с объектами
- •22.3.4.2 Окна – объекты графического интерфейса
- •22.4.3.3 Калькулятор
- •22.4.4.1 Проверка диска
- •22.4.4.2 Дефрагментация диска
- •22.4.4.3 Мастер обслуживания дисков
- •22.5 Управляющая программа Total Commander
- •Лекция 23 Другие распространенные операционные системы
- •23.1 Характеристика операционной системы unix
- •23.2 Характеристика операционной системы Linux
- •23.3 Характеристика операционной системы Mac os
- •Лекция 24 Текстовый редактор Microsoft Word
- •24.1 Офисные системы
- •24.2 Текстовые редакторы
- •24.2.1 Основные версии Microsoft Word
- •24.2.2 Рабочее окно процессора Microsoft Word
- •24.2.2.1 Режимы отображения документов
- •24.2.2.2 Приемы работы с командами строки меню
- •24.2.2.3 Панели инструментов Microsoft Word
- •24.3 Приемы работы с текстами в процессоре Microsoft Word
- •24.3.1 Работа с текстом
- •Использование Тезауруса.
- •Средства автоматизации проверки правописания.
- •Средства рецензирования текста
- •24.3.1.4 Форматирование текста
- •24.3.2 Приемы и средства автоматизации разработки документов
- •24.3.2.1 Работа со стилями
- •24.3.2.2 Шаблоны
- •24.3.2.3 Темы
- •24.3.3 Создание комплексных документов
- •24.3.3.1 Работа с графическими объектами
- •25.2 Основные понятия электронных таблиц Excel
- •25.2.2 Ввод, редактирование и форматирование данных
- •25.2.2.1 Ввод текста и чисел.
- •25.2.2.2 Форматирование содержимого ячеек.
- •25.2.2.3.Копирование содержимого ячеек
- •25.3 Применение электронных таблиц для расчетов
- •25.3.1 Вычисления в электронных таблицах
- •25.3.1.1 Формулы
- •25.3.1.2 Ссылки на ячейки
- •25.3.1.3 Абсолютные и относительные ссылки
- •25.3.1.4 Автоматизация ввода
- •25.3.1.5 Использование стандартных функций
- •25.3.1.6 Палитра формул.
- •25.3.1.7 Использование мастера функций.
- •25.3.2 «Итоговые вычисления»
- •25.3.2.1 Суммирование.
- •25.3.2.2 Функции для итоговых вычислений.
- •25.4 Построение диаграмм и графиков
- •25.4.1 Тип диаграммы
- •25.4.2 Выбор данных
- •25.4.3 Оформление диаграммы.
- •25.4.4 Размещение диаграммы.
- •25.4.5 Редактирование диаграммы
- •25.4.6 Виды используемых диаграмм
- •Лекция 26 Система управления базой данных
- •26.1 Основные понятия
- •26.1.1 Классификация баз данных
- •26.1.1.1 Файл-сервер
- •26.1.1.2 Клиент-сервер
- •26.1.2 Структурные элементы базы данных
- •26.1.3 Объекты базы данных
- •26.1.4 Типы данных
- •26.1.5 Виды моделей данных
- •26.1.6 Иерархическая модель данных
- •26.1.7 Сетевая модель данных
- •26.1.8 Реляционная модель данных
- •26.2 Реляционный подход к построению инфологической системы
- •26.2.1 Понятия информационного объекта
- •26.2.2 Нормализация отношений
- •26.2.2.1 Первая нормальная форма
- •26.2.2.2 Вторая нормальная форма
- •26.2.2.3 Третья нормальная форма
- •26.2.3 Типы связей
- •26.2.4 Построение инфологической модели
- •26.2.4.1 Архитектура субд
- •К Внешние модели. Онцептуальная модель
- •26.2.4.2 Понятие информационно-логической модели
- •27.1.2 Предметные области для экспертных систем
- •27.1.2.1 Медицинская диагностика
- •27.1.2.2 Прогнозирование
- •27.1.2.3 Планирование
- •27.1.2.4 Интерпретация
- •27.1.2.5 Контроль и управление
- •27.1.2.6 Диагностика неисправностей в механических и электрических устройствах
- •27.1.2.7 Обучение
- •27.2 Классификация экспертных систем
- •27.3 Структура экспертных систем. Средства построения экспертных систем
- •Лекция 28 Искусственный интеллект
- •28.1 Понятие об искусственном интеллекте. История развития систем искусственного интеллекта
- •28.1.1 Появление предпосылок создания искусственного интеллекта (1943-1955)
- •28.1.2 Рождение искусственного интеллекта (1956)
- •28.1.3 Ранний период развития (1952 — 1969)
- •28.1.4 Первые практические реализации систем искусственного интеллекта (1966-1973)
- •28.1.5 Системы, основанные на знаниях (1969 — 1979)
- •28.1.6 Превращение ии в индустрию (1980 — настоящее время)
- •28.1.7 Возвращение к нейронным сетям (1986 — настоящее время)
- •28.1.8 Превращение ии в науку (1987 — настоящее время)
- •28.1.9 Появление подхода с использованием интеллектуальных агентов (1995 — настоящее время)
- •28.2 Представление знаний в системах искусственного интеллекта
- •28.3 Инструментарий программирования искусственного интеллекта
- •29.1.1.2 Методо–ориентированные ппп
- •29.1.1.3 Ппп общего назначения
- •29.1.1.4 Интеллектуальные системы
- •29.1.1.5 Ппп автоматизированного проектирования
- •29.1.1.6 Офисные ппп
- •29.1.1.7 Программные средства мультимедиа
- •29.1.1.8 Настольные издательские системы
- •29.2 Системы подготовки документации
- •29.3 Системы для проектирования и обработки данных
- •Лекция 30 Компьютерное математическое моделирование
- •30.1 Общие понятия о математическом моделировании
- •30.2 Цели и этапы компьютерного математического моделирования
- •30.3 Системы компьютерного математического моделирования
- •Лекция 31 Контроль передачи информации
- •31.1 Основные способы контроля передачи информации
- •31.1.1. Многократная передача кодовых комбинаций
- •31.1.2 Одновременная передача по параллельно работающим каналам
- •31.1.3 Использование корректирующих кодов
- •31.1.4 Системы передачи данных с обратной связью
- •31.2 Принципы помехоустойчивого кодирования
- •31.2.1 Циклические коды
- •31.3 Сжатие информации
- •Лекция 32 Угрозы безопасности информации в автоматизированных системах
- •32.1 Непреднамеренные угрозы безопасности информации
- •32.2 Преднамеренные угрозы безопасности информации
- •32.3 Классификация вредоносного программного обеспечения
- •32.3.1 Классификация вирусов
- •32.3.2 Загрузочные вирусы
- •32.3.3 Файловые вирусы
- •32.3.4 Загрузочно-файловые вирусы
- •32.3.5 Полиморфные вирусы
- •32.3.6 Стелс-вирусы
- •32.3.7 Троянские кони, программные закладки и сетевые черви
- •Лекция 33 Обеспечение достоверности, сохранности и конфиденциальности информации в автоматизированных системах
- •33.1 Правила обеспечения достоверности, сохранности и конфиденциальности информации
- •33.2 Технические средства обеспечения достоверности, сохранности и конфиденциальности информации
- •33.3 Программные средства обеспечения достоверности, сохранности и конфиденциальности информации
Функции и процедуры
Понятие функции хорошо известно из школьного курса математики. С помощью функций задаются самые различные зависимости одних значений (значений функции) от других значений (значений аргументов). Заметим лишь, что в алгоритмических языках допускаются только такие функции, для которых заданы алгоритмы вычисления их значений. В математике такое требование не является обязательным — можно, например, использовать функцию f(x,y), значение которой равно количеству простых чисел в интервале (х, у) — даже в том случае, если мы не знаем, как именно следует вычислять значение этой функции при любых конкретных значениях аргументов х и у.
Таким образом, в алгоритмическом языке любая функция задается некоторой вычислительной процедурой, выполнение которой и дает значение функции. Программист может, ввести в употребление любые нужные ему в данной программе функции.
Наряду с функциями, предназначенными для вычисления отдельного значения, можно вводить в употребление и процедуры более общего характера, представляющие собой некоторые вполне законченные этапы решения задачи — упорядочение компонент вектора по их убыванию, сложение матриц и т.п.
Вводимые в употребление функции и процедуры должны быть определены (описаны) в разделе функций и процедур паскаль-программы. При 'Таком описании каждой функции (процедуре) дается свое имя. Сама процедура формулируется, в основном в терминах формальных параметров — идентификаторов, которые в описании процедуры представляют те заранее не фиксируемые значения или программные объекты, к которым должна применяться эта процедура. Все эти формальные параметры в явном виде перечисляются в описании процедуры или функции.
Для использования в программе какой-либо функции или процедуры достаточно указать ее имя и задать ее фактические параметры, т.е. те конкретные значения и (или) объекты, к которым должна быть применена указанная процедура или функция. Для обращения к функциям и процедурам в Турбо Паскале имеются соответствующие понятия — вызов функции и оператор процедуры.
Некоторые функции и процедуры, например элементарные функции математического анализа (sin (x), ln(х) и т.д.) или процедуры ввода/вывода используются во многих программах. Для удобства их использования, в Турбо Паскале зафиксирован некоторый набор так называемых стандартных функций и процедур, которые можно использовать в любой программе без их явного описания. Можно считать, что к началу трансляции любой паскаль-программы в соответствующий ее раздел автоматически вставляются описания всех стандартных функций и процедур, используемых в этой программе. За каждой из них в языке закреплено некоторое стандартное имя. Однако эти имена не являются зарезервированными словами, так что программист может по своему усмотрению переопределить любое из этих стандартных имен.
16.1.1.3 Синтаксис языка.
Для облегчения понимания текста паскаль-программы и упрощения транслятора, язык Турбо Паскаль требует выполнения определенных правил записи текста программы, которые не находят своего отражения в синтаксисе языка. При формулировании этих правил мы будем использовать понятие "разделитель текста", понимая под этим термином пробел, конец строки и комментарий.
Пробел — это литера, не имеющая графического изображения: пробелу соответствует пустая позиция в строчке текста (на листе бумаги, бланке, экране дисплея и т.д.). Однако пробел имеет определенное представление (свой цифровой код) в машине и вводится в машину вместе с остальными литерами текста программы,
Конец строки – это управляющая литера, также не имеющая графического изображения. Дело в том, что при записи текста паскаль-программы он естественным образом разбивается на отдельные строчки — хотя бы в силу ограниченности листа бумаги, бланка или экрана дисплея, на которых фиксируется этот текст. Число возможных позиций в строчке обычно фиксировано, однако число литер в части текста, образующей очередную строчку, может быть меньше числа возможных позиций. Разбиение всего текста на отдельные строчки производится программистом по своему усмотрению. Чтобы указать, что очередная часть текста должна образовывать новую строчку, и служит управляющая литера "конец строки", которая заносится в исходный текст при его нанесении на внешние носители данных или при его непосредственном вводе в машину с помощью клавиатуры терминала. Как и в случае пробела, эта литера тоже имеет свой код, который фиксируется на внешнем носителе данных или непосредственно вводится в машину при наборе текста на клавиатуре.
Упомянутые выше правила записи текста паскаль-программы состоят в следующем:
между двумя последовательными конструкциями языка, любая из которых является идентификатором, числом или служебным словом, обязательно должен находиться хотя бы один разделитель текста;
разделители текста не должны встречаться внутри идентификаторов, чисел и служебных слов;
кроме случаев, указанных в предыдущем пункте, между двумя последовательными основными символами языка может встречаться любое число разделителей текста и они не влияют на смысл программы (при трансляции паскаль-программы в машинную программу разделители текста в указанных здесь случаях игнорируются).
Управляющая литера "конец строки" в тексте не задается в явном виде: переход на следующую строчку текста автоматически подразумевает наличие этой управляющей литеры.
В тех случаях, когда в тексте надо явно указать наличие пробела (это бывает существенно при записи текста вручную на обычном листе бумаги, а не на бланке), мы будем изображать его литерой " _ ", например
begin_if_ x<25_then_x :=x + 1 _else_x : =0
Сформулированные выше правила записи текста программы отвечают и на вопрос о том, где могут быть помещены комментарии. И хотя в этом отношении возможности весьма велики, обычно комментарии помещают между достаточно крупными синтаксическими единицами – описаниями, операторами и т.д.
