Dev-C++ и ассемблер.кто знает?

Тема в разделе "WASM.SOFTWARE", создана пользователем goga2007, 9 май 2007.

  1. goga2007

    goga2007 New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2007
    Сообщения:
    184
    если ктонить сталкивался с DEV-C++ , скажите есть ли в нем встроенный ассемблер и если есть ,то как он активируется (синтаксис)? спасибо.
     
  2. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    насколько я помню, он построен на компиляторе MingW - порте gcc под Windows.
    Поэтому и синтаксис там соответствующий, насколько я помню, asm() или __asm__()
    причем синтаксис вроде бы AT&T и еще там некоторые примудрости

    пример:
    asm( "shrl $8, %0" : "=r" (answer) : "r" (operand) : "cc" );
     
  3. goga2007

    goga2007 New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2007
    Сообщения:
    184
    не понимаю... а можно так:
    Код (Text):
    1. ...
    2. asm( mov  al,1
    3.  mov  al,2
    4.  ret)...
    ?
    типа ДЕЛЬФИ. я почему спрашиваю - потому что тока начал си учить и не могу пока туда по-всякому асм-код посувать...а в справке этого нет и доки тоже...
     
  4. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    goga2007
    начнем с того, что синтаксис AT&T ;)
    с учетом этого писать твой пример надо так:
    Код (Text):
    1.     asm(
    2.         "movb $1, %al;"
    3.         "movb $2, %al;"
    4.         "ret"
    5.         );
    кавычки не забудь.

    это откомпилируется в:
    (в Intel'овском виде)
     
  5. goga2007

    goga2007 New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2007
    Сообщения:
    184
    ...и скажи еще пожалуйста, где почитать про этот асмовский синтаксис в С++/С
     
  6. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    goga2007
    это называется синтаксис AT&T.
    Гуглом можно найти любые доки, это второй из двух мне известных (Intel и AT&T) синтаксисов ассемблера для IA-32 и широко применяется. Правда Intel я встречаю чаще :) Судя по всему, ты встречал только Intelовский
     
  7. goga2007

    goga2007 New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2007
    Сообщения:
    184
    спасибо, иду вгугл
     
  8. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    лучше взместо ';' писать '\n'.
     
  9. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    goga2007
    В официальной документации:
    http://www.ibiblio.org/gferg/ldp/GCC-Inline-Assembly-HOWTO.html