1.1.2. Установка среды

При передаче управления из модуля, составленного на одном языке, в модуль, составленный на другом языке, требуется устанавливать программную среду, представляющую собой совокупность программ обработки прерываний и аварийных завершений, установки регистров, содержащих адреса областей, использующихся на протяжении выполнения задачи и др. Поэтому при организации вызова модулей, составленных на различных языках, необходимо всякий раз устанавливать среду вызываемого модуля. Рассмотрим процесс установления среды в языках ассемблера, ФОРТРАН, ПЛ/1.

В алгоритмическом языке ФОРТРАН среда устанавливается модулем IBCOM, находящимся в библиотеке компилятора. Помимо установки среды этот модуль выполняет операции ввода-вывода и др. Для программ, не содержащих операций ввода-вывода и прерываний, среда может не создаваться. Вызов модуля, составленного на языке ФОРТРАН, и установка среды этого языка представляют собой различные, самостоятельные действия.

В алгоритмическом языке ПЛ/1 установка среды обеспечивается совокупностью модулей библиотечных, сгенерированных компилятором ПЛ/1, а также построенных пользователем. Место расположения программной среды определяется вызовом модуля. Таким образом, установка среды в языке ПЛ/1 и вызов самого модуля представляют собой неразрывное целое и считаются одной операцией.

Для модулей, написанных на языке ассемблера, компилятор среды не создает. Чтобы обеспечить нормальное функционирование программы для обработки программных прерываний и аварийных ситуаций, пользователь должен сам включить в свою программу соответствующие средства, например макрокоманды SPIE, STAE, ABEND и др. Механизм задания среды определяется также пользователем, который располагается в любом месте исходного модуля макрокоманды задания среды.

Способ обращения к модулю определяется языковыми средствами организации связи по управлению, которое реализуется через активизацию модуля и возврат управления.

Средства передачи управления алгоритмических языков проиллюстрированы в таблице. /1/

Алгоритмиче-ские языки Характеристика средств передачи управления
Средство Этап соединения Тип загрузки
ПЛ/1 CALL

Компиляция

Редактирование

Предварительно

По запросу

Ассемблера

ATACH

LINK

FETCH

XCTL

CALL

 

Выполнение

 Компиляция

Редактирование


Предварительно

По запросу

ФОРТРАН

CALL

Вызов

Функции

Компиляция

Редактирование

Предварительно

По запросу


1.1.3. Согласование типов

 

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

К эквивалентным типам данных относятся типы данных, для которых внутреннее представление, сгенерированное компиляторами, идентично.

К косвенно-эквивалентным типам данных относятся типы данных, для которых нет эквивалентного описания, но с помощью имеющихся языковых средств их можно совместить.

К неэквивалентным типам данных относят данные, которые невозможно свести друг к другу с помощью имеющихся языковых средств.

Рассматриваемые алгоритмические языки различаются не только типами, а также заданиями длины отдельных элементов данных. Длина элеметов данных может указываться явно или неявно (по умолчанию). Кроме того, необходимо отметить следующие организационные особенности каждого языка:

1) обратное расположение массивов (в языке ФОРТРАН массив располагается в памяти по столбцам, а в языке ПЛ/1 - по строкам);

2) наличие информационного вектора для переменных в языке ПЛ/1 [поскольку в языке ПЛ/1 память под данные может выделяться динамически, компилятор генерирует информационный вектор, который содержит сведения о переменных, строках и массивах (адрес, длина, количество элементов и пр.)] и имеет различный вид для различных структур данных;

3) выравнивание полей, которое определяется тем, что компилятор располагает данные в соответствии с описаниями, выравнивая их, если необходимо, на границы слов и полуслов. /1/

 

1.1.4. Обмен данными

 

Наиболее распространен способ обмена данных с помощью операторов CALL и LINK. При этом осуществляется формирование списка передаваемых данных и списка их адресов. Адрес списка адресов передается вызываемой программе через регистр 1.

Другим распространенным способом обмена данными является использование общих областей - статически распределеных участков памяти, к которым может обращаться любой модуль независимо от того, на каком языке он написан. Память под общую область отводит редактор связей во время создания загрузочной программы из совокупности общих областей отдельных модулей. Каждый из рассматриваемых языков имеет средства для описания общих областей: в языке ФОРТРАН - оператор COMMON, в языке ПЛ/1 - оператор STATIC EXTERNAL, в языке ассемблера - оператор COM. /1/


Информация о работе «Разработка программного обеспечения»
Раздел: Математика
Количество знаков с пробелами: 20547
Количество таблиц: 1
Количество изображений: 4

Похожие работы

Скачать
147348
16
12

... недостаточно). Возможно включение комплекса в план учебного процесса, для обучения студентов. 2. Специальная часть разработка программного обеспечения для организации интерфейса программно-методического комплекса   2.1 Разработка технического задания на реализацию специальной части дипломного проекта Наименование программного изделия - "Интерфейс программно - методического комплекса для ...

Скачать
33122
0
3

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

Скачать
151086
8
13

... пользоваться и которая не подведет; - операционная система Windows XP Home Edition более удобная и более быстрая. 2. Разработка компьютерной сети на предприятии по разработке программного обеспечения 2.1 Постановка задачи Необходимо разработать локальную сеть из 70 компьютеров. Выбор технологии подключения к Интернет произволен. Удаленный участок сети необходимо разместить в диаметре 1 ...

Скачать
117942
2
4

... обращений к реестру были проконтролированы при помощи Registry Monitor от Sysinternals Corp. 4.4 Описание программы Автоматизированная система для оценки уровня знаний студентов с применением технологии «Клиент-сервер» предназначена для проведения централизованных итоговых занятий по разным дисциплинам в виде интерактивного тестирования. Данный проект поддерживает совместимость с пакетом ...

0 комментариев


Наверх