
- •Информатика: предмет и задачи
- •Общая схема постановки и решения предметных задач
- •Представление о МоделЯх
- •Информация
- •Информация и язык
- •Информация и данные
- •Информационные коммуникации
- •Адекватность информации
- •Меры информации
- •Качество информации
- •Классификация и кодирование информации Система классификации
- •Система кодирования
- •Классификация информации по разным признакам
- •Преобразование информации
- •Принципы создания компьютерных языков:
- •Процедурное программирование
- •Функциональное программирование
- •Логическое программирование
- •Объектно-ориентированное программирование
- •Средства обработки информации
- •Техническое обеспечение персонального компьютера
- •Процессор
- •Основная память
- •Системная шина
- •Программное обеспечение персонального компьютера
- •Интеллектуальное обеспечение
- •Информационные системы
- •Эволюция информационных систем
- •Свойства информационной системы
- •Структура информационной системы
- •Роль структуры управления в информационной системе
- •Классификация информационных систем по признаку структурированности задач
- •Классификация информационных систем по характеру использования информации
- •Классификация информационных систем по сфере применения
- •Классификация информационных систем по степени их автоматизации
- •Классификация информационных систем по функциональному признаку и уровням управления
- •Информационные технологии
- •Основные свойства информационных технологий, имеющие стратегическое значение для развития современного общества
- •Критерии эффективности информационных технологий
- •Классификация информационных технологий по типу обрабатываемой информации
- •Виды информационных технологий:
- •Информационные технологии обработки данных
- •Информационные технологии управления
- •Информационные технологии автоматизации офиса
- •Информационные технологии поддержки принятия решений
- •Информационные технологии экспертных систем
- •Информационные технологии в социальной сфере
- •Информационные технологии подготовки текстов
- •Технологии электронизации» информационных ресурсов
- •Сетевые информационные технологии
- •Информационные технологии в системах массового обслуживания населения
- •Информационные технологии в сфере организационного управления.
- •Информационные технологии и проблема обеспечения национальной безопасности России
- •Современное состояние и тенденции развития информационных технологий
- •Компьютерные сети
- •Коммуникационная среда и передача данных
- •Классификация вычислительных сетей
- •Интеллектуализация информационных систем
- •Искусственный интеллект
- •Данные и знания
- •Основные модели представления знаний
- •Информационный бизнес Информационные продукты и услуги
- •Электронный бизнес
- •Из истории электронного бизнеса
- •Основные модели интернет бизнеса
- •Информационная безопасность человека и общества
- •Представление об информационном обществе
Преобразование информации
Компьютер в истории человечества является первым средством автоматизированного преобразования информации. Этап решения задачи на ЭВМ, состоящий из разработки программы в соответствии с алгоритмом решения задачи, ее отладке и дальнейшем развитии программы в ходе ее применения называется программированием.
Программирование происходит всегда в некоторой конкретной программной обстановке, задающей тип ЭВМ, язык программирования и те или иные средства разработки программ (библиотека стандартных программ и модулей, экспертная система, база данных, редактор, транслятор, отладчик и т.д.). Задаются, как правило, ограничения на время исполнения программы и объем используемой памяти. Важной характеристикой является также представление о жизненном цикле разрабатываемой программы: одноразового или многократного применения; будет ли программа товарным продуктом, отчуждаемым от разработчиков; автономная программа или входящая в систему; диалоговая или работающая в автоматическом режиме и т.п. Общим является требование обеспечения достоверности и надежности программы.
Различают три типа программирования:
синтезирующее, предполагающее полное построение программы по заданной спецификации задачи или по общему алгоритму ее решения;
сборочное, опирающееся на библиотеки модулей или подпрограмм и состоящее в выборе подходящих модулей и их быстрой (часто автоматизированной) сборке в результирующую программу, решающую задачу из того класса, на который рассчитана библиотека модулей;
конкретизирующее, предполагающее существование универсальной программы, решающей любую задачу данного класса и состоящее в адаптации универсальной программы к особенностям частной решаемой задачи; в результате получается либо более простая программа, либо использующая меньшее количество ресурсов.
Способ записи программ, допускающий их непосредственное выполнение на ЭВМ, называют машинным языком или языком программирования.
Принципы создания компьютерных языков:
— процедурное программирование;
— функциональное программирование;
— логическое программирование;
— объектно-ориентированное программирование.
Процедурное программирование
Процедурный подход к обработке информации возник на заре программирования. Именно с этим стилем программирования связано все развитие вычислительной техники. Несмотря на прогресс технологии, большинство современных компьютеров построены по тем же принципам, что и машины 40–х годов. В их основе лежит так называемая архитектура фон Неймана, названная в честь американского ученого Дж. фон Неймана, впервые изложившего принципиальные положения архитектуры ЭВМ во второй половине 40-х годов.
Основные принципы архитектуры фон Неймана состоят в следующем:
ЭВМ состоит из процессора, памяти и внешних устройств;
единственным источником активности (не считая стартового и аварийного вмешательства человека) в ЭВМ является процессор, который, в свою очередь, управляется программой, находящейся в памяти машины;
память машины может быть представлена как последовательность дискретных ячеек, каждая из которых имеет свой адрес; каждая ячейка хранит команду программы или некоторую единицу обрабатываемой информации, причем и то и другое выглядят одинаково (машинное слово);
в любой момент времени процессор выполняет одну команду программы, адрес которой находится в специальном регистре процессора — счетчике команд;
обработка информации происходит только в регистрах процессора; информацию в процессор можно ввести из любой ячейки памяти или внешнего устройства, или наоборот, направить в любую ячейку или на внешнее устройство;
в каждой команде программы зашифрованы следующие предписания: из каких ячеек памяти взять обрабатываемую информацию; какие совершить операции с взятой информацией; в какие ячейки памяти направить полученную информацию; как изменить содержимое счетчика команд, чтобы знать, откуда взять для выполнения следующую команду;
машина выполняет программу команда за командой в соответствии с изменением содержимого счетчика команд и расположением команд в памяти, пока не получит команду остановиться.
Имеется некоторая последовательность управляющих символов (команд), закодированная в двоичной либо другой форме, а также данных, закодированных в той же форме. Команды и данные различаются лишь способом интерпретации. Команды, располагаясь в оперативной памяти в некоторой последовательности и по определенным адресам, образуют программу. В этом случае можно выделить единый алгоритм функционирования любого вычислительного устройства фон-неймановской архитектуры. Упрощенно он выглядит так:
Извлечь команду из оперативной памяти;
Извлечь из памяти данные (операнды), требуемые для реализации команды;
Выполнить команду;
При необходимости сохранить результаты в памяти;
Вернуться к шагу 1.
Развитие процедурных языков определялось особенностями вычислительной машины Дж. фон Неймана; способы представления знаний и задач, а также методов их решения были ориентированы на экономию ресурсов. При этом интеллектуальный комфорт пользователя был проигнорирован. Программа разрабатывается в терминах тех действий, которые она должна выполнять. Основная единица программы — процедура — последовательность операторов, выполняющая определенный вспомогательный алгоритм. Процедуры могут вызывать другие процедуры, вместе они работают по определенному алгоритму, ведущему к решению задачи. Кроме понятия оператор в основе процедурного языка лежит понятие операнд — данные, которые обрабатываются при помощи операторов. Типы операндов: простой, массив, структуры. Типы операторов: присваивания, условных операций, итерации.
Программа, написанная на процедурном языке, явно указывает способ получения результата, но не сам результат.
Существует большое число процедурных языков программирования. Это —Algol, Fortran, Pascal, С, Basic и др.