- •Глава 1Информатика. Определения и категории информатики
- •1.1Информатика как наука
- •1.2Предмет, цель и задачи дисциплины
- •1.3Понятие, виды и свойства информации
- •1.4Оценка количества информации
- •Глава 2Алгоритмизация и программирование
- •2.1Понятие алгоритма
- •2.2Свойства алгоритмов
- •2.3Способы записи алгоритмов
- •2.4 Базовые алгоритмические конструкции
- •2.5Языки программирования
- •2.6Понятия программы и программного обеспечения
- •2.7Классификация программного обеспечения
- •Глава 3Системное программное обеспечение
- •3.1Операционные системы
- •3.2Сервисные программы
- •3.2.1Программы контроля и диагностики компьютера
- •3.2.2Файловые менеджеры
- •3.2.3Программы обслуживания магнитных дисков
- •3.2.4Программы записи и обслуживания компакт дисков
- •3.2.5Программы обслуживания операционной системы Windows
- •3.2.6Программы работы с архивами
- •3.2.7Антивирусные программы
- •Глава 4Инструментальное программное обеспечение
- •4.1Трансляторы и их виды
- •4.2Системы программирования
- •4.2.1Средства создания программ
- •4.2.2Интегрированные системы программирования
- •4.2.3Среды быстрого проектирования
- •Глава 5Прикладное программное обеспечение
- •5.1Классификация прикладных программ
- •5.2Прикладные программы общего назначения
- •5.2.1Программы обработки текста
- •5.2.2Табличные процессоры
- •5.2.3Базы данных и системы управления базами данных
- •5.2.4Программы обработки графических изображений и мультимедиа
- •5.2.5Электронные органайзеры
- •5.3Методо-ориентированные пакеты прикладных программ
- •5.4Проблемно-ориентированные пакеты прикладных программ
- •5.5Интегрированные пакеты прикладных программ
- •Глава 6Принципы построения, структура и классификация эвм
- •6.1Поколения эвм
- •6.2Современная классификация компьютеров
- •6.3Принципы построения и структура эвм
- •Глава 7Основные сведения о персональных компьютерах
- •7.1Состав персонального компьютера
- •7.2Корпус системного блока
- •7.3Материнская плата
- •7.3.1Набор микросхем системной логики
- •7.3.2Системные и локальные шины
- •7.3.3Интерфейсы передачи данных
- •7.4Процессоры пк
- •7.5Архитектура машинной памяти
- •7.6Оперативная память
- •7.7Устройства ввода
- •7.8Устройства вывода
- •7.9Внешние запоминающие устройства
- •Глава 8Компьютерные сети
- •8.1Общие сведенья о компьютерных сетях
- •8.2Основные компоненты сети
- •8.3Топология локальных сетей
- •8.4Глобальная компьютерная сеть Internet
- •8.4.1Общие сведения об Internet
- •8.4.2История Internet
- •8.4.3Internet в России
- •8.4.4Организация сети Internet
- •8.4.5 Доменная система имен и универсальный указатель ресурса
- •8.4.6Услуги, предоставляемые Internet
- •Глава 9Основы защиты информации
- •9.1Компьютерные вирусы
- •9.2Меры защиты от компьютерных вирусов
- •9.3Компьютерные преступления
- •9.4 Предупреждение компьютерных преступлений
- •9.5Защита информации в компьютерных сетях
- •Контрольные вопросы
- •Лабораторная работа №1 по текстовому процессору ms Word
- •Работа с созданной информационной системой:
- •Список использованной и рекомендуемой литературы
- •Информатика Учебное пособие
Глава 4Инструментальное программное обеспечение
4.1Трансляторы и их виды
Программа, составленная на алгоритмическом языке высокого уровня, не может быть непосредственно выполнена ЭВМ, так как ЭВМ умеет выполнять только последовательность элементарных операций, заданных в машинных кодах. Перевод программы с алгоритмического языка на машинный осуществляется ЭВМ с помощью специальной программы, которая называется транслятор. В программе - трансляторе "заложены" все правила алгоритмического языка и способы преобразования различных его конструкций на машинный язык. В процессе трансляции текст программы проверяется на ошибки. Существуют два типа трансляторов: компиляторы и интерпретаторы.
Интерпретатор берет очередной оператор языка из текста программы, анализирует его структуру и затем сразу исполняет (обычно после анализа оператор транслируется в некоторое промежуточное представление или даже машинный код для более эффективного дальнейшего исполнения). Только после того как текущий оператор успешно выполнен, интерпретатор перейдет к следующему. При этом если один и тот же оператор должен выполняться в программе многократно, интерпретатор всякий раз будет выполнять его так, как будто встретил впервые. Вследствие этого, программы, в которых требуется осуществить большой объем повторяющихся вычислений, могут работать медленно. Кроме того, для выполнения такой программы на другом компьютере там также должен быть установлен интерпретатор — ведь без него текст программы является просто набором символов.
Компиляторы полностью обрабатывают весь текст программы. Они просматривают его в поисках синтаксических ошибок (иногда несколько раз), выполняют определенный смысловой анализ и затем автоматически переводят (транслируют) на машинный язык — генерируют машинный код.
В реальных системах программирования перемешаны технологии и компиляции и интерпретации.
4.2Системы программирования
Даже при наличии десятков тысяч программ пользователям может понадобиться нечто такое, чего не делают или делают не так имеющиеся готовые программы. В этих случаях используют системы программирования, предназначенные для разработки новых программ. Современные системы программирования обычно предоставляют пользователю весьма мощные и удобные средства для разработки программ.
4.2.1Средства создания программ
В самом общем случае для создания программы на выбранном языке программирования нужно иметь следующие компоненты :
текстовый редактор;
транслятор;
библиотеки программ;
редактор связей.
Текстовый редактор. Так как текст программы записывается с помощью ключевых слов, обычно происходящих от слов английского языка, и набора стандартных символов для записи всевозможных операций, то формировать этот текст можно в любом редакторе, получая в итоге текстовый файл с исходным текстом программы. Лучше использовать специализированные редакторы, которые ориентированы на конкретный язык программирования и позволяют в процессе ввода текста выделять ключевые слова и идентификаторы разными цветами и шрифтами. Подобные редакторы созданы для всех популярных языков программирования и дополнительно могут автоматически проверять правильность синтаксиса программы непосредственно во время ее ввода.
Исходный текст с помощью программы-транслятора переводится в машинный код. Если обнаружены синтаксические ошибки, то результирующий код создан не будет.
На этом этапе уже возможно получение готовой программы, но чаще всего в ней не хватает некоторых компонентов, поэтому компилятор обычно выдает промежуточный объектный код (двоичный файл, стандартное расширение .OBJ).
При создании программ часто пользуются готовыми подпрограммами, реализующими стандартные функции (например, вычисляющих математические функции sin или ln). Такие функции содержатся в библиотеках, которые поставляются вместе с компилятором.
Исходный текст большой программы состоит, как правило, из нескольких модулей (файлов с исходными текстами), потому что хранить все тексты в одном файле неудобно — в них сложно ориентироваться. Каждый модуль компилируется в отдельный файл с объектным кодом. Сгенерированный код модулей и подключенные к нему стандартные функции надо не просто объединить в одно целое, а выполнить такое объединение с учетом требований операционной системы, то есть получить на выходе программу, отвечающую определенному формату. Для этого объектный код обрабатывается специальной программой — редактором связей или сборщиком, который выполняет связывание объектных модулей и машинного кода стандартных функций, находя их в библиотеках, и формирует на выходе работоспособное приложение — исполнимый код.
Если по каким-то причинам один из объектных модулей или нужная библиотека не обнаружены (например, неправильно указан каталог с библиотекой), то сборщик сообщает об ошибке и готовой программы не получается. Исполнимый код — это законченная программа, которую можно запустить на любом компьютере, где установлена операционная система, для которой эта программа создавалась. Как правило, итоговый файл имеет расширение .EXЕ или .СОМ.