FASM: proc и @

Тема в разделе "WASM.BEGINNERS", создана пользователем Pavia, 1 окт 2006.

  1. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    Есть два вопросса как в FASM делать процедуры и как создовать локальные метки?
     
  2. SiruS

    SiruS Алекс

    Публикаций:
    0
    Регистрация:
    19 фев 2005
    Сообщения:
    145
    Адрес:
    Львов
    Pavia

    На это ответит тебе мануал по фасму (раздел 3.1)
     
  3. asmfan

    asmfan New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2006
    Сообщения:
    1.004
    Адрес:
    Abaddon
    на Pavia не похоже;)
    поиск слов "dot" и "proc" в этом самом мануале...удачи
     
  4. SiruS

    SiruS Алекс

    Публикаций:
    0
    Регистрация:
    19 фев 2005
    Сообщения:
    145
    Адрес:
    Львов
    asmfan

    А я сказал не тоже? Носом ткнул где именно искать
     
  5. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    Посмотрел, мануэл пришлось фасм про опгрейдить.
    Proc endp это через макросы объявляются. С этим все ястно.
    А вот dot меня не устраивает, хочу так что бы FASM выберал локальною метку из процедуры.

    Код (Text):
    1. proc a1
    2.      ...
    3. @a:
    4.      ...
    5.      jmp @a
    6.      ...
    7. endp
    8.  
    9. proc a2
    10.      ...
    11.      jmp @a
    12.      ...
    13. @a:
    14.      ...
    15. endp
    Здесь второй jmp должен вызывать вторую метку, такое возможно, без использования @f и @@?
     
  6. asmfan

    asmfan New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2006
    Сообщения:
    1.004
    Адрес:
    Abaddon
    а почему она "." не подходит? точечка . как раз то и будет решением. замени @ на . и доложи об успехах.
     
  7. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    asmfan
    Заменил и прада работает.
    Все вопрос снят просто с английским туго. Долго врубался в то что в мануэли описанно.
     
  8. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    Pavia
    специально для вас сделали перевод мануала, искать на форуме фасма ;)
     
  9. OFFSIDE

    OFFSIDE New Member

    Публикаций:
    0
    Регистрация:
    23 сен 2006
    Сообщения:
    106
    Asterix

    А по масму есть русский мануал?
     
  10. Cyber_Mozg

    Cyber_Mozg Andrey

    Публикаций:
    0
    Регистрация:
    4 апр 2005
    Сообщения:
    214
    Адрес:
    Russia
    вот качай
     
  11. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    есть перевод официального help'а пакета masm32, ссылка пробегала где-то на этом форуме
     
  12. _animaTOR_

    _animaTOR_ New Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    58
    можно уточнение по поводу переходов.
    Код (Text):
    1. proc a1
    2.      ...
    3. @@:
    4. __1:
    5.      ...
    6.      je   @F ; переход на метку __2
    7.      ...
    8.      jmp @B ; переход на метку __1
    9.      ...
    10. @@:
    11. __2:
    12.      ...
    13. endp
    Правильно я понимаю правила использования этого @F , @B и @@ ?
     
  13. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    угу.
     
  14. _animaTOR_

    _animaTOR_ New Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    58
    и еще вопрос, если написать так
    Код (Text):
    1. proc a1
    2.      ...
    3. @@:
    4. __1:
    5.      ...
    6.      je   @F ; переход на метку __2
    7.      ...
    8.      jmp @B ; переход на метку __1
    9.      ...
    10. @@:
    11. __2:
    12.      ...
    13.      ... ...  
    14.      ...
    15. @@:
    16. __3:
    17.      ...
    18.      je   @F ; переход на метку __4
    19.      ...
    20.      jmp @B ; переход на метку __3
    21.      ...
    22. @@:
    23. __4:
    24.      ...
    25. endp
    то все эти @ - "помирятся" ?
     
  15. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    @F (F - Forward) т.е. вперед на ближайшую @@:
    @B (B - Backward) т.е. назад на ближайшую @@:
     
  16. _animaTOR_

    _animaTOR_ New Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    58
    т.е. вперед на ближайшую @@:

    - если на ближайшую значит "помирятся"
    Спасибо.
     
  17. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    _animaTOR_