- •Псковский государственный политехнический институт
- •Часть 1
- •1. Информация и информационные процессы 20
- •2. Представление информации 30
- •3. Системы счисления и основы логики 45
- •4. Компьютер 76
- •5. Моделирование и формализация 135
- •6. Алгоритмизация и программирование 149
- •Предисловие
- •Введение
- •Рабочая программа по дисциплине «информатика»
- •Информация и информационные процессы
- •Представление информации
- •Системы счисления и основы логики
- •4. Компьютер
- •Моделирование и формализация
- •Алгоритмизация и программирование
- •Часть 2. Информационные технологии
- •Технологии обработки текстовой информации
- •Технология обработки графической информации
- •Технология обработки числовой информации
- •Технология хранения, поиска и сортировки информации
- •Мультимедийные технологии
- •Компьютерные коммуникации
- •Часть. 1. Основы информатики
- •Информация и информационные процессы
- •1.1.Понятие информации. Информация и информационные процессы.
- •1.2.Свойства информации.
- •1.3.Методы обработки данных.
- •1.4.Структуры данных.
- •1.5.Информационные процессы.
- •1.6.Информационные основы процессов управления.
- •1.7.Информационная деятельность человека. Основные характерные черты информационного общества.
- •1.8.Тренировочные тестовые задания по разделу 1.
- •Представление информации
- •2.1.Язык как способ представления информации. Количество информации.
- •2.2.Вероятностный подход к определению количества информации. Понятие энтропии.
- •2.3.Формы представления информации.
- •2.3.1.Аналоговая (непрерывная) и дискретная формы представления.
- •2.3.2.Десятичная и двоичная формы представления.
- •2.3.3.Экспоненциальная формы представления информации.
- •2.4.Кодирование информации. Двоичное кодирование. Единицы измерения количества информации.
- •2.5.Тренировочные тестовые задания по разделу 2.
- •Системы счисления и основы логики
- •3.1.Системы счисления.
- •3.2.Системы счисления, используемые в компьютере.
- •3.3.Перевод чисел из одной системы счисления в другую.
- •3.3.1. Перевод чисел из десятичной системы счисления в систему счисления с произвольным основанием.
- •3.3.2. Перевод правильных дробей в систему счисления с произвольным основанием.
- •3.3.3. Преобразования чисел из двоичной в восьмеричную, шестнадцатеричную системы счисления и обратно.
- •3.4.Двоичная арифметика. Арифметические операции в позиционных системах счисления.
- •3.4.1. Представление чисел в компьютере,
- •3.4.2.Двоичное сложение.
- •3.4.3.Двоичное вычитание.
- •3.4.4.Двоичное умножение.
- •3.4.5.Двоичное деление.
- •3.4.6.Двоичное вычитание с использованием дополнительных кодов.
- •3.4.7.Арифметические операции в позиционных системах счисления
- •3.5.Основные понятия логики.
- •3.6.Логические операции.
- •3 Рис.3.1. Диаграмма Эйлера-Венна операции не. .6.1.Отрицание (Инверсия).
- •3.6.2.Логическое умножение (конъюнкция или логическое и)
- •3.6.3.Логическое сложение (дизъюнкция или логическое или)
- •3.7.Логические выражения.
- •3.8.Базовые логические элементы.
- •3.8.1.Логический элемент не.
- •3.8.2.Логический элемент и.
- •3.8.3.Логический элемент или.
- •3.8.4.Логический элемент и-не.
- •3.8.5.Логический элемент или-не.
- •3 Рис.3.9.Логический элемент исключающее или. .8.5.Логический элемент исключающее или.
- •3.9.Построение сумматоров на логических элементах.
- •3.10.Тренировочные тестовые задания по разделу 3.
- •Компьютер
- •4.1.Архитектура компьютера.
- •4.2.Базовая аппаратная конфигурация персонального компьютера (пк).
- •4.3.Системный блок.
- •4.4.Микропроцессоры пк.
- •4.5.Классификация памяти пк.
- •4.5.1.Внутренняя память.
- •4.5.1.1.Оперативная память
- •4.5.1.3.Специальная память.
- •4.5.2.Внешняя память.
- •4.5.2.1.Магнитные накопители.
- •Магнитного диска.
- •4.5.2.2.Логическая структура магнитных дисков.
- •4.5.2.3.Оптические накопители.
- •4.5.2.4.Магнитооптические накопители.
- •4.5.2.5.Накопители на микросхемах памяти (Flash-память).
- •4.6.Периферийные (внешние) устройства пк.
- •4.6.1.Клавиатура.
- •4.6.2.Манипуляторы.
- •4.6.3.Сканер.
- •4.6.4.Цифровые камеры.
- •4.6.5.Аудиоадаптер.
- •4.6.6.Монитор.
- •4.6.7.Принтер.
- •4.6.8.Плоттер (графопостроитель).
- •4.7.Классификация программного обеспечения пк.1)
- •4.6.9.Модем.
- •4.7.1.Системное по. 1)
- •4.7.1.1.Операционные системы.
- •4.7.1.2.Сервисные программы.
- •4.7.1.3.Системы программирования.
- •4.7.1.4.Программы технического обслуживания.
- •4.7.2.Прикладное по.
- •4.7.2.1.Редакторы.
- •4.7.2.2.Электронные таблицы.
- •4.7.2.3.Системы управления базами данных.
- •4.7.2.4.Интегрированные пакеты.
- •4.7.2.5.Case-технологии.
- •4.7.2.6.Экспертные системы (эс)
- •4.8.Файловая система и файловая структура.
- •4.9.Правовая охрана программ и данных.
- •4.9.1.Лицензионные, условно бесплатные и бесплатные программы,
- •4.9.2.Правовая охрана информации.
- •4.9.3.Электронная подпись.
- •4.9.4.Защита информации.
- •4.10.Тренировочные тестовые задания по разделу 4.
- •Моделирование и формализация
- •5.1.Моделирование как метод познания.
- •5.2.Виды моделей. Классификация моделей.
- •5.3.Понятие о технологии информационного моделирования.
- •5.4.Исследование информационных моделей конкретных предметных областей.
- •5.5.Тренировочные тестовые задания по разделу 5.
- •Алгоритмизация и программирование
- •6.1.Алгоритм. Формальное исполнение алгоритмов.
- •6.2.Свойства алгоритмов.
- •6.3.Способы записи алгоритма.
- •6.4.Основные алгоритмические конструкции. Детализация алгоритмов.
- •6.5.Методы разработки алгоритмов.
- •6.6.Понятие о языках программирования. Классификация языков программирования.
- •6.7.Средства создания программ.
- •6.8.Базовые элементы алгоритмических языков программирования.
- •6.9.Основные типы данных.
- •6.9.1.Простые типы данных.
- •6.9.2.Структура данных.
- •6.10.Операторы языка программирования.
- •6.10.1.Оператор присваивания.
- •6.10.2.Управляющие операторы.
- •6.10.3.Оператор вызова процедур. Операторы ввода-вывода.
- •6.11.Подпрограммы.
- •6.12.Технологии программирования.
- •6.12.1.Модульное (алгоритмическое) программирование. 1)
- •6.12.2.Структурное программирование. 2)
- •6.12.3.Объектно-ориентированное программирование. 1)
- •6.13.Тренировочные тестовые задания по разделу 6.
- •Алгоритм с к заданию VI.
- •Ответы на примерные тестовые задания
- •Приложение. Содержание части 2 «Основы информационных технологий»
- •7. Технологии обработки текстовой информации
- •8. Технология обработки графической информации
- •9. Технология обработки числовой информации
- •10.Технология хранения, поиска и сортировки информации
- •11.Мультимедийные технологии
- •12.Компьютерные коммуникации
- •Литература для самостоятельной подготовки
- •Авторский коллектив
- •Основы информатики и информационных технологий.
- •Часть 1. Основы информатики. Пособие для поступающих в вуз.
6.12.Технологии программирования.
Определение. Технология программирования — это система методов, способов и приемов разработки и отладки программы.
В настоящее время нашли широкое применение следующие технологии программирования: Модульное (алгоритмическое) программирование, Структурное программирование, Объектно-ориентированное программирование.
6.12.1.Модульное (алгоритмическое) программирование. 1)
Основная идея алгоритмического программирования — разбиение программы на последовательность модулей, каждый из которых выполняет одно или несколько действий. Единственное требование к модулю, чтобы его выполнение всегда начиналось с первой команды и всегда заканчивалось на самой последней команде модуля. Алгоритм на выбранном языке программирования записывается с помощью команд описания данных, вычисления значений и управления последовательностью выполнения программы. Текст программы представляет собой линейную последовательность операторов присваивания, цикла и условных операторов. Таким способом можно решать не очень сложные задачи и составлять программы, содержащие несколько сот строк кода.
Если текст программы сильно возрастает, то общая структура алгоритма теряется за конкретными операторами языка, выполняющими элементарные действия. Поэтому набрать и отладить линейную последовательность операторов практически невозможно. При создании средних по размеру приложений (несколько тысяч строк исходного кода) используется структурное программирование.
6.12.2.Структурное программирование. 2)
Структура программы должна отражать структуру решаемой задачи, чтобы алгоритм решения был ясно виден из исходного текста. Для этого используются средства для создания программы не только с помощью простых операторов, но и с помощью средств, более точно отражающих конкретную структуру алгоритма. Для этого используются подпрограммы. Программа разбивается на множество мелких подпрограмм, каждая из которых выполняет одно действие из предусмотренных исходным заданием. Комбинируя эти подпрограммы, удается формировать итоговый алгоритм уже не из простых операторов, а из законченных блоков, имеющих определенную смысловую нагрузку. Обращаться к таким блокам можно по названиям. Подпрограммы выступают в роли новых операторов или операций языка, определяемых программистом. Немаловажно, что небольшие подпрограммы роще отлаживать, что существенно повышает общую надежность программы.
Возможность применения подпрограмм относят язык программирования к классу процедурных языков.
6.12.3.Объектно-ориентированное программирование. 1)
Объектно-ориентированное программирование представляет собой способ программирования, напоминающий процесс человеческого мышления. Это более структурированный способ, чем другие технологии программирования. Он позволяет создавать модульные программы с представлением данных на определенном уровне абстракции.
Объектно-ориентированное программирование основано на понятии объекта.
Определение. Объект — это совокупность свойств (структур данных, характерных для этого объекта), методов их обработки (подпрограмм изменения свойств) и событий, на которые данный объект может реагировать, и которые приводят, как правило, к изменению свойств объекта.
Объекты могут иметь одинаковую структуру и отличаться только значениями свойств. В таких случаях в программе создается новый тип, основанный на единой структуре объекта, который называется классом. Важнейшая характеристика класса – возможность создания на его основе новых классов с наследованием всех его свойств и методов и добавлением собственных. Класс, не имеющий предшественника, называется базовым. Наследование позволяет создавать новые классы, повторно используя уже готовые исходные программы.
