Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БИЛЕТЫ по Алгоритмизации_отв.doc
Скачиваний:
1
Добавлен:
30.08.2019
Размер:
329.22 Кб
Скачать

К лассификация языков программирования.

Языки программирования делятся на:

  1. языки пр-ия низкого уровня,

  2. языки пр-ия высокого уровня.

Языки пр-ия низкого уровня называют машинно-ориентированными или машинными. Языки высокого уровня называют проблемно-ориентированными или алгоритмическими. К ним относятся языки: Фортран, Basic, C,Pascal, Ada и др.

Кроме различий между языками существуют различия внутри самого языка. Развитые языки имеют модификации или версии. TP 6.0, TP 7.0, BP 7.0, Object Pascal 7.1 -> Delphi.

Программа на алгоритмическом языке называется исходным кодом. ПК не понимает программного кода, он может работать только с машинным кодом. Для перевода исходного кода в машинный используются устройства называемые трансляторы.

Для каждого языка существует свой транслятор. Трансляторы делятся на

- интерпретаторы

- компиляторы

Интерпретатор переводит исходный код построчно с параллельным исполнением. При обнаружении ошибки исполнение программы приостанавливается. Выдается код и местоположение ошибки, которую программист должен исправить. После исправления трансляция и выполнение программы будет продолжено.

Работа компилятора заключается в том, что в машинный код переводится весь исходный код сразу, а исполнение программы производится только после получения всего машинного кода.

В языке символического кодирования, в отличие от машинного, цифровые коды заменены буквенными или буквенно-цифровыми (мнемоническими) обозначениями. Это облегчает работу по составлению программы и позволяет автоматизировать действия, связанные с размещениями программы и данных в памяти ЭВМ. Каждой команде языка символического кодирования при трансляции соответствует одна машинная команда. Такие языки называются мнемокодами или языками ассемблеров.

Язык более высокого уровня - макроязык - включает наряду с мнемоническими обозначениями машинных команд отдельные макрокоманды, которые при трансляции заменяются группами команд машинного языка (подпрограммами). Это сокращает запись исходной программы и упрощает программирование, так как исключаются записи часто повторяющихся фрагментов программы. В настоящее время все языки ассемблерного типа допускают использование макросредств, то есть являются макроассемблерами.

Машинно-ориентированные языки содержат все необходимые средства для программирования любых задач. Однако они применяются, когда требуется создать особо быстродействующие программы при минимальных объемах используемой памяти. В частности, на этих языках пишут программы управления устройствами ЭВМ и предварительной обработки данных.

Большинство производственных задач решают с помощью программ, написанных на процедурно - ориентированных языках. Средства этих языков позволяют наиболее просто описать часто встречающиеся фрагменты действий в соответствующих задачах. Процедурно-ориентированные языки предполагают знания пользователя в области математических (численных) методов и основ алгоритмизации (базовый язык для научно-технических расчетов ФОРТРАН, БЕЙСИК (персональные ЭВМ - основной), современный ПАСКАЛЬ).

В процессе развития созданы многоцелевые (универсальные) языки программирования, объединяющие основные средства и возможности многих процедурно - ориентированных языков, например: ПЛ/1 - используемый для решения задач обработки экономической и научно-технической информации, задач управления объектами и т.п.; язык АДА - многоцелевой стандартный язык, способный заменить множество других языков и на длительный период обеспечить разработку и совершенствования программ обеспечения; язык МОДУЛА - объединяет средства и особенности машинно-ориентированных и процедурно - ориентированных языков; включает средства для написания подпрограмм управления устройствами, управления потоками сообщений, для чего традиционно использовались языки ассемблерного типа.

Для пользователей, не имеющих специальной подготовки, но нуждающихся в оперативном использовании ЭВМ для решения стереотипных задач, разрабатываются специальные проблемно-ориентированные языки (непроцедурные), которые не требуют подробной записи алгоритма решения задачи. На таком языке лишь формулируется задача и указывается последовательность подзадач из готового набора с указанием исходных данных и форм требуемых документов. Специальные средства программы-генераторы из готовых блоков автоматически формируют программу для решения поставленной задачи. Эти языки ещё более высокого уровня, т.е. удалены от машины более чем процедурно - ориентируемые языки. К ним относятся языки для задания и обработки таблиц данных при решении экономических задач, а также языки моделирования сложных систем СИМУЛА, НЕДИС и другие (СИМСКРИПТ