- •1 Семестр Тема 1. Основные понятия и определения информатики.
- •1. Информатика. Предмет и задачи
- •Структура информатики
- •Задачи информатики:
- •2. Измерение и представление информации
- •Сигналы Данные Методы Информация
- •Методы воспроизведения и обработки данных
- •Информационный процесс
- •Меры информации
- •Единицы измерения информации
- •Качественные свойства информации
- •Классификация информации
- •Хранение информации
- •Тема 2. Математические основы информатики. Кодирование данных двоичным кодом
- •Системы счисления
- •Двоичная система счисления
- •Перевод из десятичной системы в двоичную
- •Арифметические операции с двоичными числами
- •Восьмеричная и шестнадцатеричная системы счисления
- •Кодирование числовых данных
- •Кодирование текстовых данных
- •Кодирование графических данных
- •Кодирование звуковых данных
- •Послесловие к лекции о кодировании данных в компьютере
- •Хранение данных в компьютере
- •Представление и обработка числовой информации в компьютере
- •Тема 3. Общая характеристика процессов сбора, передачи, обработки и накопления информации.
- •2.2. Файловая структура
- •2.3. Имена внешних носителей информации
- •Тема 4. Технические средства реализации информационных процессов История развития вычислительной техники
- •Классификация эвм по принципу действия
- •Поколения цифровых эвм
- •Архитектура эвм
- •Архитектура эвм, построенная на принципах фон Неймана
- •Структура современных эвм
- •Тенденции в развитии структуры современных эвм
- •Упрощенная структурная схема ibm pc совместимого компьютера
- •Структура и виды команд
- •Состав машинных команд
- •Основной цикл работы компьютера
- •Обработка прерываний
- •Тема 5. Программные средства реализации информационных процессов Классификация программных продуктов по сфере использования
- •Системное программное обеспечение
- •Операционная система
- •Ос как расширенная машина
- •Ос как система управления ресурсами
- •Функции ос
- •Понятие многозадачности
- •Установка приложений
- •Удаление приложений
- •Обеспечение взаимодействия с аппаратным обеспечением
- •Обслуживание компьютера
- •Прочие функции операционных систем
- •Особенности файловых систем
- •Файловые системы fat и fat32
- •Файловая система ntfs
- •Физическая структура ntfs
- •Mft и его структура.
- •Основные понятия ос Windows
- •Тема 6. Модели решения функциональных и вычислительных задач моделирование как метод решения прикладных задач
- •Моделирование как метод познания
- •Материальные и информационные модели
- •Формализация модели
- •Математическое моделирование
- •Классификация математических моделей по цели моделирования
- •Компьютерное моделирование
- •Этапы и цели компьютерного математического моделирования
- •Тема 7. Алгоритмизация и программирование. Понятие алгоритма и его свойства
- •Определение алгоритма на основе рекурсивных функций
- •Определение алгоритма на основе абстрактных автоматов (машины Тьюринга)
- •Способы записи алгоритмов
- •Линейный алгоритм
- •Разветвляющийся алгоритм
- •Циклический алгоритм
- •Объекты алгоритма
- •2 Семестр
- •Тема 8. Языки программирования высокого уровня Языки и системы программирования
- •Классификация языков программирования, их эволюция
- •Алгоритмические (процедурные) языки программирования
- •Декларативные (описательные) языки программирования
- •Объектно-ориентированные языки программирования
- •Языки создания сценариев (программирование для Интернета)
- •Языки программирования баз данных
- •Языки моделирования
- •Поколения языков программирования
- •Тема 9. Базы данных
- •Тема 10. Программное обеспечение и технологии программирования Системы программирования и их компоненты
- •Архитектура программных систем
- •Технологии программирования
- •Основные этапы развития технологии программирования
- •Модули и их свойства
- •Нисходящая и восходящая разработка программного обеспечения
- •Структурное и «неструктурное» программирование
- •Тема 11. Локальные и глобальные сети эвм.
- •Тема 12. Основы защиты информации и сведений, составляющих государственную тайну. Методы защиты информации.
- •1. Основные принципы защиты информации
- •2. Защита информации от потери и разрушения
- •3. Защита информации от несанкционированного доступа
- •4. Защита информации в сети Интернет
- •5. Компьютерные вирусы
- •5.1. Понятие и основные типы компьютерных вирусов
- •5.2. Программные вирусы
- •5.3. Загрузочные вирусы
- •5.4. Макровирусы
- •5.5. Методы защиты от компьютерных вирусов
- •5.6. Средства антивирусной защиты
- •6. Защита информации, составляющей государственную тайну
- •6.1. Понятие государственной тайны
- •6.2. Засекречивание сведений, составляющих государственную тайну
- •6.3. Права государства в отношении сведений, составляющих государственную тайну
- •6.4. Ответственность за нарушение законодательства о государственной тайне
Линейный алгоритм
Линейный алгоритм (следование) состоит из последовательности операций, выполняющихся только один раз в порядке их следования.
Рис. 1 Линейная структура алгоритма
Разветвляющийся алгоритм
Разветвляющийся алгоритм (ветвление) обеспечивает выбор между двумя альтернативами. Выполняется проверка, а затем выбирается один из путей.
Подобная структура называется также «ЕСЛИ – ТО – ИНАЧЕ», или «развилка». Каждый из путей (ТО или ИНАЧЕ) ведет к общей точке слияния, так что выполнение программы продолжается независимо от того, какой путь был выбран.
Может оказаться, что для одного из результатов проверки ничего предпринимать не надо. В этом случае можно применять только один обрабатывающий блок.
|
|
Рис. 2 Разветвляющаяся структура алгоритма |
Рис. 3 Структура «неполное ветвление» |
Циклический алгоритм
Циклический алгоритм (Цикл) содержит некоторую последовательность операций, выполняемую многократно. Основной блок цикла, тело цикла, производит требуемые вычисления. Остальные блоки организуют циклический процесс: устанавливают начальные и новые значения данных, проверяют условия окончания или продолжения циклического процесса.
Различают два типа структур цикла: цикл с параметром или с повторением и цикл с условием. Циклический алгоритм позволяет компактно описать большое число одинаковых вычислений над разными данными для получения необходимого результата.
Циклы
с параметром
используют тогда, когда количество
повторов тела цикла заранее известно.
Схематично такой цикл и
Циклы с условием используются тогда, когда число повторений заранее неизвестно, но задано условие окончания цикла. Причем, если условие окончания цикла проверяется перед выполнением тела цикла, то такие циклические структуры называют циклами с предусловием («Выполнять пока» рис. 4), а если проверка условия происходит после выполнения тела цикла – циклами с постусловием («Выполнять до тех пор пока не» рис.5).
Рис. 4 |
Рис. 5 |
Рис. 6 |
Объекты алгоритма
Решение любой задачи предполагает наличие реальных объектов – объектов задачи.
Например. При решении задачи о начислении зарплаты сотрудникам предприятия объектом задачи могут быть: табельный номер сотрудника, его фамилия, имя, отчество, оклад, отработанное время и т.д. При решении системы уравнений объектами задачи являются – число уравнений, коэффициенты уравнений, правые части.
Каждый объект задачи имеет свои характеристики (атрибуты). Фамилии и наименования – это строки символов, а коэффициенты уравнений, количество выпускаемой продукции – это числовые константы, представленные арифметическими выражениями или числами.
Если выполнение алгоритма возложено на ЭВМ, необходима строгая формализация задачи. Она предполагает замену объектов задачи – объектами алгоритма, которые должны наследовать их атрибуты. При разработке алгоритма могут появиться вспомогательные объекты не соответствующие никаким объектам задачи.
В практике программирования число базовых объектов невелико. Это константы, переменные массивы, файлы и некоторые другие.
Понятие константы. Например, в задаче нужно вычислить длину окружности L = π * D, здесь L и D – объекты задачи, а π – величина постоянная в любой задаче, т.е. это константа.
Константа может быть не только числом. Например, в некотором списке фамилий определяется наличие фамилии Иванов. В алгоритме фамилия – это объект, а Иванов – символьная константа.
Константа – это объект алгоритма. Каждая константа как объект алгоритма имеет фиксированный тип (арифметический, символьный или другой) и имеет фиксированное, неизменяемое в данном алгоритме значение, соответствующее ее типу. Значение константы обычно определено в условии задачи и известно до начала разработки алгоритма.
Понятие переменной. Переменная – это объект алгоритма, который имеет определенный фиксированный тип (арифметический, символьный или другой) и который в каждый момент исполнения алгоритма имеет единственное значение соответствующего типа. К моменту использования переменной в алгоритме ее значение должно быть определено. В ходе выполнения алгоритма значение переменной может изменяться.
Например, требуется вычислить и напечатать значение функции при изменении аргумента от заданного начального значения до заданного конечного значения с заданным шагом. Начальное значение, конечное значение, шаг – объекты задачи, которые в условии задачи не определены. Эти значения станут известны по ходу выполнения алгоритма: введены пользователем или получены в результате вычислений. Если не предусмотреть механизм их определения, исполнение алгоритма будет невозможно.
Имя объекта алгоритма. Каждый объект в алгоритме фигурирует под своим именем. Имя это неизменно, фиксировано и уникально. Имена для объектов устанавливает автор алгоритма. Рекомендуется выбирать мнемонические имена, которые отражают суть объекта.
Понятие массива. Массив – объект алгоритма. Во многих случаях разрозненные переменные удобно объединить в совокупность – массив, именуя все коэффициенты общим именем (именем массива) и индексами (номерами в массиве).
Индекс элемента массива позволяет обратиться к элементу массива «напрямую». По индексу массив строго упорядочен.
Массивом называется конечная упорядоченная совокупность данных одного типа, доступ к каждому осуществляется по его индексу.
В задачах используются как одномерные, так и многомерные массивы. Для указания положения элемента в двумерном массиве используют два индекса – сначала номер строки, затем номер столбца. Массивы могут быть как числовыми, так и символьными.
В любом алгоритме всегда присутствует раздел инструкций (выполнения действий), который имеет одну точку входа (НАЧАЛО) и одну точку выхода (КОНЕЦ). Закодированная форма инструкции, несущая определенный смысл называется оператором.
Рис. 7 – Пример записи алгоритм сортировки выбором с помощью блок-схемы
