- •Государственное образовательное учреждение высшего
- •Содержание
- •Введение
- •1. Основные понятия и методы теории информатики и кодирования. Сигналы, данные, информация. Общая характеристика процессов сбора, передачи, обработки и накопления информации
- •Сообщения, данные, сигнал, атрибутивные свойства информации, показатели качества информации, формы представления информации. Системы передачи информации
- •1.1.1. Формы представления информации
- •Дискретная и аналоговая информация
- •Источник канал связи приемник
- •Контрольные вопросы
- •1.2. Меры и единицы количества и объема информации
- •Формула Шеннона:
- •Контрольные вопросы
- •1.3. Позиционные системы счисления
- •1.3.1. Способы перевода чисел из одной системы счисления
- •В другую
- •Способ перевода чисел из системы счисления
- •С любым основанием в десятичную
- •Способ перевода целых чисел из десятичной в систему счисления с любым другим основанием
- •Правило перевода дробного числа из десятичной в систему счисления с любым другим основанием
- •1.3.2. Системы счисления, используемые в компьютере
- •Перевод из восьми- и шестнадцатеричной систем счисления в двоичную
- •Перевод из двоичной в восьми- и шестнадцатеричную системы счисления
- •Перевод из восьмеричной системы счисления в шестнадцатеричную и обратно
- •1.3.3. Двоичная арифметика
- •Полная таблица сложения для двоичной системы счисления
- •Вычитание меньшего числа из большего в двоичной системе
- •Вычитание большего числа из меньшего в двоичной системе
- •1.3.4. Представление чисел в двоичном коде
- •Контрольные вопросы
- •1.4. Логические основы эвм
- •1.4.1. Основные понятия и операции формальной логики
- •1.4.2. Таблица истинности логических выражений
- •1.4.3. Основные логические операции Операция отрицания (инверсия)
- •Операции логического умножения (конъюнкция)
- •Операция логического сложения (дизъюнкция)
- •Операция импликации
- •Операция эквиваленция
- •Построение таблицы истинности для сложного высказывания
- •1.4.4. Логические законы и правила преобразований
- •1.4.5. Основные логические элементы компьютера
- •Логические вентили и, или и не
- •Полусумматор
- •Сумматор
- •Каскад сумматоров
- •Триггер
- •Контрольные вопросы
- •2. Технические средства реализации информационных процессов
- •2.1. История развития эвм. Понятие и основные виды архитектуры эвм
- •Контрольные вопросы
- •2.2. Состав и назначение основных элементов персонального компьютера, их характеристики
- •Контрольные вопросы
- •2.3. Запоминающие устройства: классификация, принцип работы, основные характеристики
- •Контрольные вопросы
- •2.4. Устройства ввода/вывода данных, их разновидности и основные характеристики
- •Контрольные вопросы
- •3. Программные средства реализации информационных процессов
- •3.1. Понятие системного и служебного (сервисного) программного обеспечения: назначение, возможности, структура. Операционные системы
- •Контрольные вопросы
- •3.2. Файловая структура операционных систем. Операции с файлами
- •Правила именования файлов
- •Примеры часто встречающихся расширений в fat и fat32 (в ms-dos и Windows)
- •Каталоги
- •Операции над файлами и каталогами
- •Контрольные вопросы
- •3.3. Технологии обработки текстовой информации
- •Двоичное кодирование текстовой информации
- •Кодировки русских букв
- •Основные восьмибитные кодировки
- •Способы передачи информации о форматировании текста
- •Различные форматы текстовых файлов (документов)
- •Контрольные вопросы
- •3.4. Электронные таблицы
- •Контрольные вопросы
- •3.5. Технологии обработки графической информации Двоичное кодирование графической информации
- •Кодирование цвета
- •Растровая графика
- •Векторная графика
- •Палитры цветов
- •Графический редактор: назначение и основные возможности
- •Различные форматы графических файлов
- •Растровые форматы
- •Векторные форматы
- •Контрольные вопросы
- •3.6. Средства электронных презентаций
- •Контрольные вопросы
- •3.7. Системы управления базами данных
- •Контрольные вопросы
- •3.8. Основы баз данных и знаний
- •I этап. Постановка задачи.
- •VI этап. Работа с созданной базой данных.
- •Классификация баз знаний
- •Контрольные вопросы
- •4. Модели решения функциональных и вычислительных задач
- •4.1. Моделирование как метод познания
- •4.2. Классификация и формы представления моделей
- •Контрольные вопросы
- •4.3. Методы и технологии моделирования
- •Классификация иис
- •Информационная технология решения задач
- •Компьютерный эксперимент
- •Контрольные вопросы
- •4.4. Информационная модель объекта
- •Контрольные вопросы
- •5. Алгоритмизация и программирование
- •5.1. Понятие алгоритма и его свойства. Блок-схема алгоритма
- •5.1.1. Основные свойства алгоритмов
- •5.1.2. Формы записи алгоритма
- •1. Словесная форма записи алгоритма
- •2. Графический способ записи алгоритма
- •3. Запись алгоритма в виде псевдокода
- •Основные служебные слова:
- •Контрольные вопросы
- •5.2. Основные алгоритмические конструкции. Базовые алгоритмы. Программы линейной структуры. Операторы ветвления, операторы цикла
- •Вложенные циклы
- •Контрольные вопросы
- •6. Локальные и глобальные сети эвм. Защита информации в сетях
- •6.1. Сетевые технологии обработки данных
- •Контрольные вопросы
- •6.2. Основы компьютерной коммуникации. Принципы организации и основные топологии вычислительных сетей
- •Контрольные вопросы
- •6.3. Сетевой сервис и сетевые стандарты
- •1. Персональный компьютер.
- •Контрольные вопросы
- •6.4. Защита информации в локальных и глобальных компьютерных сетях
- •2. Защита пароля.
- •11. Дублирование, мультиплексирование и резервирование офисов.
- •12. Резервирование каналов связи.
- •12. Защита данных от перехвата.
- •Контрольные вопросы
- •7. Технологии программирования. Языки программирования высокого уровня
- •7.1. Этапы решения задач на компьютерах
- •Контрольные вопросы
- •7.2. Понятие о структурном программировании. Модульный принцип программирования. Подпрограммы. Принципы проектирования программ сверху-вниз и снизу-вверх
- •Контрольные вопросы
- •7.3. Объектно-ориентированное программирование
- •Алгоритмическое программирование
- •Объектно-ориентированное программирование
- •Контрольные вопросы
- •7.4. Эволюция и классификация языков программирования. Основные понятия языков программирования
- •Языки низкого уровня
- •Языки высокого уровня
- •Контрольные вопросы
- •7.5. Структуры и типы данных языка программирования
- •Контрольные вопросы
- •7.6. Трансляция, компиляция и интерпретация
- •Контрольные вопросы
- •Заключение
- •Список литературы
Контрольные вопросы
7.1.1. Перечислите этапы решения задач на компьютере.
7.1.2. На каком этапе решения задачи на компьютере производится выбор способа решения?
7.1.3. На каком этапе решения задачи на компьютере создается алгоритм решения?
7.1.4. На каком этапе решения задачи на компьютере создается компьютерная программа?
7.1.5. Опишите процесс отладки и тестирования программы.
7.2. Понятие о структурном программировании. Модульный принцип программирования. Подпрограммы. Принципы проектирования программ сверху-вниз и снизу-вверх
Структурное программирование – методология и технология разработки программных комплексов, основанная на принципах:
– программирования «сверху-вниз»;
– модульного программирования.
При этом логика алгоритма и программы должны использовать три основные структуры: последовательное выполнение, ветвление и повторение.
Главная идея структурного программирования состоит в том, что основными для написания программ являются три типа операторов: линейный, ветвление, организация цикла (глава 5).
Модульное программирование – метод разработки программ, предполагающий разбиение программы на независимые модули. Считается, что:
– оптимальный по размерам модуль целиком помещается на экране дисплея;
– разделение большой программы на модули облегчает ее разработку, отладку и сопровождение.
Модульная программа – это такая программа, в которой любую часть логической структуры можно изменить, не вызывая изменений в остальных частях программы.
Модульная структура программы отражает одну из особенностей структурного программирования.
Модуль характеризуют:
– один вход и один выход – на входе программный модуль получает определенный набор исходных данных, выполняет содержательную обработку и возвращает один набор результатных данных, т.е. реализуется стандартный принцип IPO (Input-Process-Output) – вход-процесс-выход;
– функциональная завершенность – модуль выполняет перечень регламентированных операций для реализации каждой отдельной функции в полном составе, достаточных для завершения начатой обработки;
– логическая независимость – результат работы программного модуля зависит только от исходных данных, но не зависит от работы других модулей;
– слабые информационные связи с другими программными модулями – обмен информацией между модулями должен быть по возможности минимизирован;
– обозримый по размеру и сложности программный элемент.
Любая программа, независимо от языка, на котором она написана, должна удовлетворять определенным требованиям.
Во-первых, она должна работать правильно, т. е. не просто выполнять нужные действия, но всегда выполнять их правильным образом.
Во-вторых, любую программу должно быть легко изменить (модифицировать).
Правильность и легкость модификации достигаются за счет применения структурного подхода к программированию. Его еще называют методом пошаговой детализации и методом программирования «сверху-вниз».
Первый шаг заключается в описании решения задачи и самом общем виде. Затем в это описание шаг за шагом вносятся детали. Детализирование производится до тех пор, пока по полученному описанию можно будет легко написать программу. Сначала алгоритм решения формулируется на естественном языке или на языке блок-схем, затем, когда задача детализирована настолько, что каждому действию соответствует один глагол на естественном языке, программа «переводится» на язык программирования.
Разрабатывая некоторые детали программы, иногда прибегают к другому методу, называемому «снизу-вверх». При этом программист как бы забегает вперед, предугадывает, что надо будет выполнить на нижних уровнях и записывает это сразу на языке программирования.
Вычислительная система с пакетной обработкой – это система, в которой предусмотрено поочередное выполнение программ пользователей, вводимых одновременно в виде пакета.
В программе следует использовать комментарии, объясняющие алгоритм действий. Любой пользователь-программист должен иметь возможность разобраться в том что и как делает программа. Программисту, создавшему код программы, также может понадобиться комментарий, особенно через некоторое время после ее написания.
По тем же причинам переменные, константы и подпрограммы должны иметь осмысленные имена, отражающие их суть. Короткие, однобуквенные имена стоит давать только вспомогательным переменным типа счетчиков.
Все конкретные значения данных должны вводиться в программу с помощью констант и переменных, объявленных (по возможности) в начале программы, чтобы при изменении данных их можно было поменять только в одном месте, а не перечитывать весь текст программы.