Процедуры (FASM)

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

  1. Morte

    Morte New Member

    Публикаций:
    0
    Регистрация:
    13 мар 2009
    Сообщения:
    14
    Не пойму как правильно создать процедуру на компиляторе FASM. Например, пишу:

    Код (Text):
    1. format binary
    2. use16
    3. org 100h
    4.  
    5. call abc
    6.  
    7. int 20h
    8.  
    9. ; Тело процедуры
    10. abc:
    11. push BP
    12. mov BP, SP
    13.  
    14. ; ...
    15.  
    16. pop BP
    17. ret
    Пошагово исполняю код в отладчике. call abc проходит вообще без каких-то заметных действий: типа того, если бы там nop стоял...
    Следующий шаг: int 20h, т.е. программа завершается.

    Я не понимаю, почему не произошёл переход к метке abc.

    Пока хочу разобраться с этим, но есть еще один вопрос: зачем stdcall в FASM? Чем это лучше?
     
  2. jaja

    jaja New Member

    Публикаций:
    0
    Регистрация:
    23 июл 2008
    Сообщения:
    243
    Есть step in, есть step out
    Вам нужен именно степ ин. Степ аут их проскакивает.
     
  3. Morte

    Morte New Member

    Публикаций:
    0
    Регистрация:
    13 мар 2009
    Сообщения:
    14
    Ага, спасибо! Сам бы я не догадался, что это дело в отладчике. Там две кнопки: Trace и Step. Я жал до этого последнюю. :)