Ошибка при ассемблировании программы.

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

  1. max7C4

    max7C4 New Member

    Публикаций:
    0
    Регистрация:
    17 мар 2008
    Сообщения:
    1.203
    Sajaxt
    можно и для пользователя.
     
  2. max7C4

    max7C4 New Member

    Публикаций:
    0
    Регистрация:
    17 мар 2008
    Сообщения:
    1.203
    %PATH%;c:\masm32\bin\
    где %PATH% то что уже было. если создать новую переменную, то в нее достаточно поместить
    c:\masm32\bin\
     
  3. Sajaxt

    Sajaxt New Member

    Публикаций:
    0
    Регистрация:
    20 окт 2009
    Сообщения:
    9
    Вроде работает, правда он только prog.obj создаёт и выскакивает ошибка

    prog.obj: fatal error LNK1190: invalid fixup found, type 0x0001
     
  4. max7C4

    max7C4 New Member

    Публикаций:
    0
    Регистрация:
    17 мар 2008
    Сообщения:
    1.203
    наверное у вас встретилось что-то типа lea eax, offset label1 - offset label2. обчно это из-за этого
     
  5. Sajaxt

    Sajaxt New Member

    Публикаций:
    0
    Регистрация:
    20 окт 2009
    Сообщения:
    9
    есть такое дело:

    Код (Text):
    1. CSEG segment
    2. org 100h
    3.  
    4. Begin:
    5.     mov ah,9
    6.     mov dx, offset Message
    7.     int 21h
    8.     int 20h
    9.  
    10. Message db 'Hello, World! $'
    11. CSEG ends
    12. end Begin
    а можно его ечмнить заменить?
     
  6. masadaa

    masadaa New Member

    Публикаций:
    0
    Регистрация:
    13 окт 2009
    Сообщения:
    6
    Зайди на сайт Калашникова http://rfpro.ru/, выбери Программирование, далее Assembler (Ассемблер), там про эту ошибку сотни раз писалось. Только, возможно, там регистрация сейчас платная. Вот это:
    "c:\MASM61\BIN\ML.EXE не допущеное Win32-приложение." - правильно пишет, потому что у тебя 2 ошибки. У Калашникова не MASM61, а MASM611, пиши правильнее путь: c:\masm611\bin. И второе, нет просто команды ml.exe, её нужно писать с именем программы +расширение. Не забудь, кстати, расширение на .asm сменить. Если у тебя программа называется Prog1, то пиши: ml.exe Prog1.asm /AT. AT - обязательно с большой буквы, это для .com-файлов, раз в проге один сегмент. У Калашникова же в книге про всё это написано. MASM32 тебе никакой версии не подойдёт, этот компилятор для 32-битных регистров, а у Калашникова только 16-битные программы под ДОС. Уроки Iczelion'а тебе тоже не нужны, по крайней мере, пока не нужны.
     
  7. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    masadaa Советы конечно правильные, но для 64-битной Винды почти бесполезные :)
     
  8. Rockphorr

    Rockphorr Well-Known Member

    Публикаций:
    0
    Регистрация:
    9 июн 2004
    Сообщения:
    2.622
    Адрес:
    Russia
    Sajaxt
    конэшно - в туориалах изелиона несколько примеров хело мир разного уровня навороченности
     
  9. Rockphorr

    Rockphorr Well-Known Member

    Публикаций:
    0
    Регистрация:
    9 июн 2004
    Сообщения:
    2.622
    Адрес:
    Russia
    только собирать вы будете уже win32 приложения .... а так теже яйца только в прфиль
     
  10. Rockphorr

    Rockphorr Well-Known Member

    Публикаций:
    0
    Регистрация:
    9 июн 2004
    Сообщения:
    2.622
    Адрес:
    Russia
    *профиль