определить установлен ли флаг. HELP

Тема в разделе "WASM.ASSEMBLER", создана пользователем Marik, 19 апр 2007.

  1. Marik

    Marik New Member

    Публикаций:
    0
    Регистрация:
    21 июн 2006
    Сообщения:
    166
    Адрес:
    Russia
    Вопрос по сути очень постой. Просто не знаю какую команду использовать
    Суть: нужно проверить в одном параметре размером dword установлен ли флаг FILE_REMOVABLE_MEDIA, проблема в том что он может комбинироваться с другими флагами. сам флаг имеет значение 00000001h. При комбинации может иметь 00010001h или 00000081h. Какую команду в MASMe лучше использовать, что бы определить этот флаг и чтобы было все красиво;))???
    ЗЫ: сильно не пинать, знаю что можно воспользоваться командой ROR, и по CF определить, НО хочется все на MASME и чтобы красивый код был!!!
     
  2. n0name

    n0name New Member

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

    rmn Well-Known Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2004
    Сообщения:
    2.348
    Код (Text):
    1. mov eax, dwFlag
    2. and eax, FILE_REMOVABLE_MEDIA
    3. jz  loc1
    4. ; флаг установлен
    5. jmp loc2
    6. loc1:
    7. ; флаг не установлен
    8. loc2:
    ну или test dwFlag, FILE_REMOVABLE_MEDIA :)
     
  4. Marik

    Marik New Member

    Публикаций:
    0
    Регистрация:
    21 июн 2006
    Сообщения:
    166
    Адрес:
    Russia
    Всем спасибо!!!! Тема закрыта!!!