TURBO PASCAL

Новости

Программы   

Turbo Pascal 

Игры

Документация   

Странности

FAQ

Ссылки

Форум

Гостевая книга

Рассылка

Благодарности

Об авторе

 

 

Турбо Ассемблер и Borland Pascal 

             Турбо Ассемблер  (TASM)  значительно  облегчает   разработку
        программ  на  языке  ассемблера  и организации в них интерфейса с
        программами Borland Pascal. Турбо Ассемблер поддерживает специфи-
        ческое использование сегментов, схему памяти и языковую поддержку
        для программистов, работающих на Borland Pascal.

             Используя ключевое  слово  PASCAL и директиву .MODEL,  можно
        обеспечить соблюдение соглашений о вызовах с Borland Pascal,  оп-
        ределить имена сегментов,  выполнить инструкции  PUSH  BP  и  MOV
        PB,SP, а также обеспечить возврат управления с помощью операторов
        POP BP и RET N (где N - это число байт параметра). Директива
        .MODEL имеет следующий синтаксис:

             .MODEL xxxx, PASCAL

        где xxxx - это модель памяти (обычно LARGE).

             Задание в  директиве  .MODEL  языка  PASCAL  сообщает  Турбо
        Ассемблеру, что параметры были занесены в стек слева-направо -  в
        том порядке, в котором они обнаружены в исходном операторе, вызы-
        вающем процедуру.

         B.Pascal 7 & Objects/LR     - 439 -


             Директива PROC позволяет вам задать параметры в том  же  по-
        рядке, как они определены в программе Borland Pascal. Если вы оп-
        ределяете функцию,  которая возвращает строку,  обратите внимание
        на  то,  что директива PROC имеет опцию RETURNS,  позволяющую вам
        получить доступ к временному указателю строки в стеке и не оказы-
        вающую  влияния на число байт параметра,  добавляемых в операторе
        RET.

             Приведем примеры  кода,  в  которых  используются  директивы
        .MODEL и PROC:

             .MODEL LARGE, PASCAL
             .CODE
             MyProc PROC  FAR 1:BYTE, j : BYTE RETURNS result : DWORD
              PUBLIC MyProc
              les di,result            ; получить адрес временной строки
              mov al,i                 ; получить первый параметр i
              mov bl,j                 ; получить второй параметр j
                .
                .
                .
              ret

             Определение функции в Borland Pascal будет выглядеть следую-
        щим образом:

             function MyProc(i,j : char) : string; external;

Содержание

На первую страницу

Rambler's Top100 Rambler's Top100
PROext: Top 1000

(с)Все права защищены

По всем интересующим вопросам прошу писать на электронный адрес

Hosted by uCoz