Turbo Assembler 3.0. Руководство пользователя


Результаты функции в Турбо Паскале


В зависимости от типа результата функции Турбо Паскаля возв- ращают свои результаты различными способами.

Результаты функции скалярного типа

Результаты функции скалярных типов возвращаются в регистрах центрального процессора (ЦП). Байтовые значения возвращаются в регистре AL, значения размером в 2 байта - в регистре AX, 4-байтовые значения - в паре регистров DX:AX (старшее слово нахо- дится в регистре DX).

Результаты функции вещественного типа

Результаты используемого в Турбо Паскале 6-байтового прог- раммно эмулируемого вещественного типа возвращаются в трех ре- гистрах ЦП. Наиболее значащее (старшее) слово возвращается в DX, среднее - в BX, а наименее значащее - в AX.

Результаты функции типов сопроцессора 8087

Результаты типов, использующихся сопроцессором 8087, возвра- щаются в регистре вершины стека ST(0) (или просто ST).

Результаты функции строкового типа

Результаты строкового типа возвращаются во временной рабочей области, выделяемой Турбо Паскалем перед вызовом. Указатель даль- него типа на эту область заносится в стек перед занесением перво- го параметра. Заметим, что этот указатель не является частью списка параметров.

Примечание: Не удаляйте из стека полученный в резуль- тате указатель, так как Турбо Паскаль ожидает, что после вызова он будет доступен.

Результаты функции типа указатель

Результаты указатель возвращаются в паре регистров DX:AX (сегмент:смещение).



Содержание раздела