Языки программирования
Под термином «язык программирования» подразумевается совокупность символов, соглашений и правил для описания данных и алгоритмов решения задач на компьютере. Другими словами язык программирования представляет собой специальный формализованный язык для составления программ. Развитие языков программирования осуществлялось параллельно с развитием вычислительной техники, и в настоящее время существует достаточно большое количество различных языков.
В общем смысле программа представляет собой набор машинных команд, которые следует выполнить компьютеру для реализации соответствующего ей алгоритма. Для каждого языка программирования предельно четко формулируются правила написания программ, которые не допускают вольного расположения отдельных элементов команд и знаков препинания. Каждая команда имеет определенный синтаксис - правила записи. Программа с лишней запятой или пробелом между символами не сможет быть запущена на компьютере.
Языки программирования можно условно разделить на следующие классы:
1. МАШИННЫЕ ЯЗЫКИ. Машинный язык представляет собой свод правил кодирования в числовом виде определенных действий и операций (машинные коды). Каждое действие, выполняемое компьютером, представляется в виде команды, которая определяет некоторую элементарную часть процесса обработки информации. В команде в общем случае должны быть указаны вид действия, место хранения в компьютере исходной информации, над которой производится машинная операция, адрес результата. Например, если операция сложения имеет код 01, то команда сложения двух чисел из ячеек с номерами 2001 и 2267 с помещением результата в ячейку 2375 выглядит следующим образом:
01 2001 2267 2375
Программы, написанные на машинном языке, получаются высокого качества, хотя программирование на этом языке часто называют программированием на низком уровне. Однако составление программы на машинном языке трудоемко, сопровождается большим количеством ошибок и носит характер решения сложной комбинаторной задачи. Одновременно с составлением команд программисту необходимо распределять память, так как команды можно составлять лишь после того, когда будут известны номера ячеек для хранения всей необходимой для этих команд информации. С другой стороны, трудно произвести размещение информации в памяти компьютера, если неизвестно количество команд программы. Составление программ для электронно-вычислительных машин первого поколения осуществлялось исключительно на машинном языке.
Необходимо подчеркнуть, что компьютер может исполнить только программу, написанную на машинном языке. Использование других языков программирования требует наличия «переводчика» для перевода программы на понятный компьютеру машинный язык. Перевод программы на машинный язык выполняется самим компьютером с помощью специально созданной для используемого языка программирования программы, называемой транслятором.
2. МАШИННО-ОРИЕНТИРОВАННЫЕ ЯЗЫКИ. Первым усовершенствованием процесса программирования явилось введение символических адресов, позволившее составление команд и распределение памяти выполнять раздельно. На базе этого были созданы машинно-ориентированные языки или ассемблеры, в основу которых закладывалась система команд какой-либо конкретной электронно-вычислительной машины или определенного класса ЭВМ, что являлось основным их недостатком. Каждая команда на языке ассемблера чаще всего представляет собой одну машинную команду, записанную символическим кодом, поэтому он очень близок с машинным языком. Язык ассемблера позволяет создавать наиболее эффективные программы, однако он очень трудоемок и требует высокой квалификации программиста.
3. АЛГОРИТМИЧЕСКИЕ ЯЗЫКИ. Этот класс языков программирования возник одновременно с ЭВМ второго поколения. Алгоритмические языки целиком ориентированы на отражение структуры конкретного алгоритма и не зависят от архитектуры компьютера. К алгоритмическому языку предъявляются следующие требования:
- наглядность (использование общепринятой математической символики и других легко понимаемых средств);
- гибкость (возможность описания любого алгоритма без излишнего усложнения);
- однозначность (недопустимость различных толкований при записи любого алгоритма);
- единство (небольшое число изобразительных средств, возможность использования одних и тех же средств для отображения родственных понятий).
Каждой команде алгоритмического языка обычно соответствует либо несколько машинных команд, либо целая подпрограмма в машинном коде. Основным достоинством алгоритмических языков является удобство и простота их освоения и составления программ любой сложности.
К алгоритмическим относятся такие широко применяемые языки программирования, как Паскаль, Фортран, Бейсик и другие.
4. ПРОЦЕДУРНО-ОРИЕНТИРОВАННЫЕ ЯЗЫКИ. Процедурно-ориентированные языки представляют собой разновидность алгоритмических языков, у которых имеется возможность описания программы как совокупности процедур (подпрограмм).
5. ПРОБЛЕМНО-ОРИЕНТИРОВАННЫЕ ЯЗЫКИ. Проблемно-ориентированные языки так же, как и предыдущие, представляют собой разновидность алгоритмических языков, которые предназначены для решения задач определенного класса. К ним относятся такие языки как Лисп, РПГ, Симула и другие.
6. ИНТЕГРИРОВАННЫЕ СИСТЕМЫ ПРОГРАММИРОВАНИЯ. Интегрированная система программирования представляет собой систему автоматизации процесса программирования, образуемую языком программирования, транслятором, а также вспомогательными средствами для подготовки программ к выполнению.
Совокупность команд на любом языке программирования, реализующая какой-либо алгоритм, называется программой на исходном языке или исходным кодом. Кроме исходного конкретная программа может иметь еще и машинный (объектный) код на машинном языке, который называется рабочей программой.
Процесс перевода программы на машинный язык (трансляция) и процесс выполнения компьютером этой программы могут сочетаться двумя способами. Первый способ, называемый компиляцией, заключается в том, что процесс выполнения программы компьютером осуществляется после того, как полностью завершится процесс перевода. Программа-компилятор переводит исходный текст в машинный код и записывает его в компьютер в форме исполняемого файла. После этого программа выполняется независимо от исходного текста.
Второй способ сочетания процессов перевода и выполнения программы называется интерпретацией и предполагает, что отдельные команды или части исходной программы сразу после их трансляции выполняются, после чего та же процедура совершается над следующими командами и т.д. В этом случае файл для записи программы на машинном языке не создается. Программа в режиме интерпретации исполняется медленнее, чем такая же программа в машинном коде, однако в этом режиме проще отлаживать программу.
- Конспект лекций по дисциплине «информатика»
- 1. Автоматизированная обработка информации: основные понятия и технологии
- 1.1. Информация, информационные процессы и информационное общество Структура информационного процесса
- Контрольные вопросы
- 1.2.Технологии обработки информации. Управление базами данных. Компьютерные коммуникации
- Информационный продукт
- Способность к взаимодействию
- Ликвидация промежуточных звеньев
- Глобализация
- Конвергенция
- Контрольные вопросы
- 2. Общий состав и структура персональных эвм и вычислительных систем, их программное обеспечение
- 2.1. Архитектура персонального компьютера, структура вычислительных систем. Программное обеспечение вычислительной техники.
- Сведения о некоторых важных характеристиках микропроцессоров фирмы Intel.
- Стандартные устройства ввода-вывода
- Клавиатура
- Модем и акустический адаптер
- Дискеты и жесткие диски
- * Винчестеры типа at-Bus
- Принтер
- Накопитель на лазерном диске (cd-rom)
- Устройства ввода изображений
- Коммуникационное оборудование
- Подготовка компьютера к работе
- Чтобы включить...
- И чтобы выключить…
- Аппаратные средства персонального компьютера
- Архитектура персонального компьютера
- Функциональные и технические характеристики устройств персонального компьютера
- 1. Процессор
- 2. Основная память
- 3. Электронные платы.
- 4. Системный интерфейс
- 5. Устройства внешней памяти
- 6. Устройства ввода информации
- 7. Мониторы и видеоконтроллеры
- 8. Принтеры
- 9. Другие устройства, подключаемые к компьютеру
- 10. Портативные и мультимедийные компьютеры
- Выбор конфигурации персонального компьютера
- Сведения об операционной системе ms dos
- Диалог пользователя с ms dos
- Обзор команд ms dos
- 2.2. Операционные системы и оболочки Программная оболочка Norton Commander Работа с программой Norton Commander
- 2.3. Операционные системы и оболочки. Графическая Операционная Система Windows Общие сведения о Windows
- Пользовательский интерфейс
- Составляющие части окна
- Значок “Корзина”
- Контрольные вопросы
- 2.4. Прикладное программное обеспечение: файловые менеджеры, программы – архиваторы, утилиты. Обслуживание дисков
- Размещение информации на дисках и форматирование дисков.
- Уборка и проверка дисков.
- Оптимизация размещения файлов на диске.
- Восстановление на дисках удаленной информации.
- Программы-архиваторы. Начало работы и вид окна программы-архиватора WinRar
- Контрольные вопросы
- 3. Организация размещения, обработки, поиска, хранения и передачи информации, антивирусные средства зашиты информации. Понятие компьютерного вируса.
- Контрольные вопросы
- 4. Локальные и глобальные компьютерные сети, сетевые технологии обработки информации
- Контрольные вопросы
- 5. Прикладные программные средства
- 5.1. Текстовые процессоры Введение
- Управление курсором.
- Подготовка текстового документа.
- 1. Набор текста.
- 2. Редактирование текста.
- 3. Форматирование текста.
- 4. Печать текста.
- 5. Ведение архива текстов.
- 1. Выделение фрагмента текста.
- 3. Поиск, замена символов, фрагментов текста и параметров форматирования.
- Контрольные вопросы
- 5.2. Электронные таблицы
- 1. Основы работы с табличным процессором.
- 1.1. Назначение и области применения табличных процессоров.
- 1.2. История и тенденции развития.
- 1.3. Основные понятия.
- 1.3.1. Типовая структура интерфейса.
- 1.3.2. Данные, хранимые в ячейках электронной таблицы.
- 1.4. Функциональные возможности табличных процессоров.
- 1.4.1. Характеристика режимов и команд.
- 1.4.2. Графические возможности.
- 1.5.2. Проектирование электронной таблицы.
- 1.5.3. Объединение электронных таблиц.
- 1.5.4. Электронная таблица для поддержки принятия решений.
- 2. Табличный процессор ms Excel.
- 2.1. Знакомство с табличным процессором ms Excel.
- 2.1.1. Запуск ms Excel.
- 2.1.2. Знакомство с экраном ms Excel.
- 2.1.3. Панели инструментов в окне ms Excel.
- 2.1.4. Основное меню ms Excel.
- 2.1.5. Получение справочной информации.
- 2.1.6. Работа с файлами в ms Excel.
- 2.2. Ввод и редактирование данных.
- 2.2.1. Ввод и восстановление информации в ячейке.
- 2.2.2. Формат данных.
- 2.2.3. Ввод чисел и текста.
- 2.2.4. Стиль представления данных.
- 2.2.5. Ввод даты и времени.
- 2.2.6. Ввод последовательных рядов данных.
- 2.2.7. Формирование заголовков таблиц.
- 2.3. Работа с функциями и формулами.
- 2.3.1. Внесение изменений в формулу.
- 2.3.2. Использование ссылок.
- 2.3.3. Значения ошибок в формулах.
- 2.3.4. Перемещение и копирование формул.
- 2.3.5. Распространение формул.
- 2.3.6. Формулы преобразования текста.
- 2.3.7. Функции даты и времени.
- 2.3.8. Логические функции.
- 2.4. Диаграммы и графики.
- 2.5. Работа с базами данных.
- Контрольные вопросы
- 5.3. Системы управления базами данных. Основные понятия теории баз данных
- 3.6.4. Форма-диаграмма.
- 3.7.7. Простой отчет.
- Контрольные вопросы
- 5.4. Информационно – поисковые системы Эффективная технология работы с растущими потоками несистематизированной текстовой информации
- Контрольные вопросы
- 6. Знакомство с языком программирования. Этапы решения задач с помощью персональных компьютеров
- Основные понятия теории алгоритмов
- Языки программирования
- Основные понятия языка программирования Паскаль
- 1.2. Основные определения языка
- Davlenie 5 Пробел недопустим в составе имени
- 1.3. Составные части программы
- Контрольные вопросы
- 7. Автоматизированные системы: понятие, состав, виды.
- Контрольные вопросы
- Список литературы: