проблемма с функциями

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

  1. Serjuk

    Serjuk New Member

    Публикаций:
    0
    Регистрация:
    28 янв 2011
    Сообщения:
    17
    Mikl___
    а может быть несовместимость ОС и masm6.15? просто у меня он и на такой код:
    Код (Text):
    1. TITLE   AddSub   (AddSub.asm)
    2.  
    3. Include Irvine32.inc
    4.  
    5. .code
    6. main PROC
    7.  
    8.     mov    eax,10000h        ; EAX = 10000h
    9.     add    eax,40000h        ; EAX = 50000h
    10.     sub    eax,20000h        ; EAX = 30000h
    11.     call    DumpRegs
    12.     call    WaitMsg
    13.     exit
    14. main ENDP
    15. END main
    Выдает эту же ошибку..
     
  2. Mikl___

    Mikl___ Супермодератор Команда форума

    Публикаций:
    14
    Регистрация:
    25 июн 2008
    Сообщения:
    3.792
    Serjuk
    Возможно, в слове TITLE русские буквы, на текст программы твой заголовок не влияет никак, убери его и посмотри, где будут следующие ошибки
     
  3. Serjuk

    Serjuk New Member

    Публикаций:
    0
    Регистрация:
    28 янв 2011
    Сообщения:
    17
    Убрал строчку , вот что выдало:
    Сейчас прогнал эту программу на XP c началом в программе
    и она нормально скомпилировалась, а вот на Семерке выдает ту же ошибку в первой строчке...
     
  4. Serjuk

    Serjuk New Member

    Публикаций:
    0
    Регистрация:
    28 янв 2011
    Сообщения:
    17
    все я разобрался в чем дело.Проблема была в кодировке, когда я сохранял в блокноте у меня стояла UTF-8 , когда поменял на ANSI все стало нормально компилировать)
    Mikl___,спасибо большое тебе за помощь!!!
     
  5. Koketka

    Koketka New Member

    Публикаций:
    0
    Регистрация:
    18 окт 2011
    Сообщения:
    1
    Добрый вечер!

    вот код моей программы:
    .386
    .MODEL flat,stdcall

    includelib c:\masm32\lib\irvin32.lib
    includelib c:\masm32\lib\kernel32.lib
    ExitProcess PROTO, dwExitCode:lol: WORD
    DumpRegs PROTO
    .data
    varA dw 5
    varB dw 2
    varC dw 0

    .code
    main PROC
    call ADD1
    call SUB2
    call DumpRegs
    ret
    main ENDP

    ADD1 PROC
    mov ax,varA
    mov bx,varB
    add ax,bx
    ret
    ADD1 ENDP

    SUB2 PROC
    mov ax,varA
    mov bx,varB
    sub ax,bx
    ret
    SUB2 ENDP

    INVOKE ExitProcess,0

    END main

    скачала тут Irvin32.lib
    но все равно у меня не заработало(((
    выдает ошибку
    LINK: fatal error LNK1104:cannot open file "c:\masm32\lib\irvin32.lib"
     
  6. Mikl___

    Mikl___ Супермодератор Команда форума

    Публикаций:
    14
    Регистрация:
    25 июн 2008
    Сообщения:
    3.792
    Koketka
    1) или помести irvin32.lib в папку "c:\masm32\lib"
    2) или исправь строку "includelib c:\masm32\lib\irvin32.lib" на соответствующую действительности
     
  7. Dmitry_Milk

    Dmitry_Milk Member

    Публикаций:
    0
    Регистрация:
    20 ноя 2007
    Сообщения:
    540
    ...deleted...
     
  8. Psionic

    Psionic Member

    Публикаций:
    0
    Регистрация:
    25 сен 2008
    Сообщения:
    156
    - а она там таки есть эта "irvin32.lib"? Может стоит прописать другой путь вместо