Need help! перевод с С++ на ассемблер...

Тема в разделе "WASM.WIN32", создана пользователем hellobody, 2 июн 2008.

  1. hellobody

    hellobody New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2008
    Сообщения:
    48
    Добрый вечер!
    Кто ни будь может подсказать как правильно передеть ссылку на структуру (синтаксис масм32)?
    на С это выглядит так : StartDoc(hdcPrint, &di)
    как это правильно написать под масм32?
    OFFSET di ?
    ADDR di ?
    или как ?
     
  2. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    hellobody
    А сама di как у вас описана?

    наилучший вариант напишите это на плюсах, скомпильте и гляньте отладчиком.
     
  3. hellobody

    hellobody New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2008
    Сообщения:
    48
    di это обычная структра, та вроде разобрался через offset работает, вроде...
    да, и на "вы" не обязательно... ;)
     
  4. n0name

    n0name New Member

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

    hellobody New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2008
    Сообщения:
    48
    что значит для регистров никак?
     
  6. jhons

    jhons New Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2007
    Сообщения:
    26
    помойму что offset что addr - различия тока в толковании сего компилятором.
    a di в асме - зарезервированое имя.
     
  7. hellobody

    hellobody New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2008
    Сообщения:
    48
    да di - действительно зарезервированное имя, его пришлось изменить...
     
  8. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    если хранишь данные в регистре (di - это имя регистра), то указатель на этот регистр никак не получишь.
     
  9. hellobody

    hellobody New Member

    Публикаций:
    0
    Регистрация:
    7 янв 2008
    Сообщения:
    48
    А, та не, в этом плане я в курсе, в данном случае di, это был кусок кода С++, и означал имя структуры а не регистр... масм32 сразу ругатся начал, и di пришлось заменить на другое имя...
    Кстати никто не знает случайно, как форматировать текст для вывода на принтер, а то мой лазерный почему то во-первых сначала прогоняет одну пустую страницу, а на второй уже печатает, а во-вторых строка начинается не сначала...