Проблема с видимостью функций в TASM

Тема в разделе "WASM.BEGINNERS", создана пользователем igorkov, 28 окт 2009.

  1. igorkov

    igorkov New Member

    Публикаций:
    0
    Регистрация:
    13 май 2007
    Сообщения:
    2
    Столкнулся со следующей проблемой, при трансляции простейшего примера:

    Код (Text):
    1. IDEAL
    2. P386
    3. MODEL MEDIUM
    4.  
    5. CODESEG
    6.  
    7. main:
    8.     call func1
    9.     ret
    10. END main
    11.  
    12. PROC func1
    13.     ret
    14. ENDP func1
    15.  
    16. ENDS
    17.  
    18. END
    командой "tasm.exe TTT.asm" вылезает ошибка:

    Код (Text):
    1. Turbo Assembler  Version 4.1  Copyright (c) 1988, 1996 Borland International
    2.  
    3. Assembling file:   TTT.ASM
    4. **Error** TTT.ASM(8) Undefined symbol: FUNC1
    5. Error messages:    1
    6. Warning messages:  None
    7. Passes:            1
    8. Remaining memory:  416k
    Если в примере перенести функцию func1 выше main, и соотв. вызова из main, то все собирается нормально. TASM.EXE взят с WASM-а. Бьюсь уже довольно длительное время, но ничего внятного по областям видимости не нашел.

    Вопрос: можно как-то сделать, чтобы функция func1 была видна вне зависимости от того, где она расположена: до или после вызова?
     
  2. InsidE

    InsidE Member

    Публикаций:
    0
    Регистрация:
    28 май 2009
    Сообщения:
    357
    Адрес:
    Over the hills and far away...
    igorkov
    незнаю есть подобное в тасме,в масме( да и вообше везде ) это реашается с помощью прототипов функций
     
  3. ava

    ava New Member

    Публикаций:
    0
    Регистрация:
    11 окт 2003
    Сообщения:
    169
    Вообще-то END означает конец программы:
    (официальная документация).

    Т. е. все, что идет после первого END попросту игнорируется.
     
  4. ava

    ava New Member

    Публикаций:
    0
    Регистрация:
    11 окт 2003
    Сообщения:
    169
    И вообще надо почаще читать документацию (\doc\tasm.hlp в пакете TASM 5+).
     
  5. igorkov

    igorkov New Member

    Публикаций:
    0
    Регистрация:
    13 май 2007
    Сообщения:
    2
    Да уж...

    ava
    Спасибо!