- •Раздел 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 Программные средства обеспечения достоверности, сохранности и конфиденциальности информации
15.4 Общая характеристика языка Си
Язык программирования Си был разработан в лабораториях Bell Labs в период с 1969 по 1973 годы. Согласно Ритчи, самый активный период творчества пришёлся на 1972 год. Язык назвали «Си» (C — третья буква латинского алфавита), потому что многие его особенности берут начало от старого языка «Би» (B — вторая буква латинского алфавита).
Язык программирования Си отличается минимализмом. Авторы языка хотели, чтобы программы на нём легко компилировались с помощью однопроходного компилятора, чтобы каждой элементарной составляющей программы после компиляции соответствовало весьма небольшое число машинных команд, а использование базовых элементов языка не задействовало библиотеку времени выполнения. Однопроходный компилятор компилирует программу, не возвращаясь назад, к уже обработанному тексту. Поэтому использованию функций и переменных должно предшествовать их объявление. Код на Си можно легко писать на низком уровне абстракции, почти как на ассемблере. Иногда Си называют «универсальным ассемблером» или «ассемблером высокого уровня», что отражает различие языков ассемблера для разных платформ и единство стандарта Си, код которого может быть скомпилирован без изменений практически на любой модели компьютера. Си часто называют языком среднего уровня или даже низкого уровня, учитывая то, как близко он работает к реальным устройствам. Однако, в строгой классификации, он является языком высокого уровня.
Си создавался с одной важной целью: сделать более простым написание больших программ с минимумом ошибок по правилам процедурного программирования, не добавляя на итоговый код программ лишних накладных расходов для компилятора, как это всегда делают языки очень высокого уровня, такие, как Бейсик. С этой стороны Си предлагает следующие важные особенности:
простую языковую базу, из которой вынесены в библиотеки многие существенные возможности, вроде математических функций или функций управления файлами;
ориентацию на процедурное программирование, обеспечивающую удобство применения структурного стиля программирования;
систему типов, предохраняющую от бессмысленных операций;
использование препроцессора для, например, определения макросов и включения файлов с исходным кодом;
непосредственный доступ к памяти компьютера через использование указателей;
минимальное число ключевых слов;
передачу параметров в функцию по значению, а не по ссылке (при этом передача по ссылке эмулируется с помощью указателей);
указатели на функции и статические переменные;
области действия имён;
структуры и объединения — определяемые пользователем собирательные типы данных, которыми можно манипулировать как одним целым.
В то же время в Си отсутствуют
вложенные функции;
сопрограммы;
а также средства:
автоматического управления памятью;
объектно-ориентированного программирования;
функционального программирования.
После появления язык Си был хорошо принят, потому что он позволял быстро создавать компиляторы для новых платформ, а также позволял программистам довольно точно представлять, как выполняются их программы. Благодаря этому программы, написанные на Си, эффективнее написанных на многих других языках. Как правило, лишь оптимизированный вручную код на ассемблере может работать ещё быстрее, потому что он даёт полный контроль над машиной, однако развитие современных компиляторов вместе с усложнением современных процессоров сократило этот разрыв.
Лекция 16 Языки программирования высокого уровня Turbo Pascal и С
16.1 Язык программирования Паскаль.
Основы языка.
Структура программы на языке Паскаль.
Классификация типов данных языка Паскаль.
16.2 Язык программирования Си.
16.2.1 Основы языка.
16.2.2 Структура программы на языке Си.
16.2.3 Классификация типов данных языка Си.
16.1 Язык программирования Паскаль
16.1.1 Основы языка
16.1.1.1Алфавит языка
Алфавит естественного (например, русского) языка состоит из фиксированного набора литер – различимых графических изображений, каждое из которых всегда рассматривается как нечто единое целое, даже в том случае, когда это изображение не является непрерывным, например, русская буква "Ы".
Считается, что алфавит алгоритмического языка состоит из фиксированного набора основных символов, причем часть этих символов является литерами (" + "), а часть – определенными комбинациями литер (" >= ").
Набор основных символов, образующих алфавит, состоит из трех групп:
буквы (буквы латинского алфавита);
цифры (0..9);
спецсимволы :
Знак арифметической операции (+, - , * , / );
Знак операции сравнения (= , <> - не равно, > , >= - больше или равно, < , <= );
Разделитель (. , ; : ( ) [ ] { } ' ");
Служебное слово (and, array, begin, case, const, div, do, downto, else, end, for, function, goto, if, in, label, mod, nil, not, of, or, procedure, program, record, repeat, set, then, to, type, until, var, while, with).
