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

Discussion in 'WASM.ASSEMBLER' started by Lin, Jul 2, 2008.

  1. Serjuk

    Serjuk New Member

    Blog Posts:
    0
    Joined:
    Jan 28, 2011
    Messages:
    17
    Mikl___
    а может быть несовместимость ОС и masm6.15? просто у меня он и на такой код:
    Code (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___ Супермодератор Staff Member

    Blog Posts:
    14
    Joined:
    Jun 25, 2008
    Messages:
    3,914
    Serjuk
    Возможно, в слове TITLE русские буквы, на текст программы твой заголовок не влияет никак, убери его и посмотри, где будут следующие ошибки
     
  3. Serjuk

    Serjuk New Member

    Blog Posts:
    0
    Joined:
    Jan 28, 2011
    Messages:
    17
    Убрал строчку , вот что выдало:
    Сейчас прогнал эту программу на XP c началом в программе
    и она нормально скомпилировалась, а вот на Семерке выдает ту же ошибку в первой строчке...
     
  4. Serjuk

    Serjuk New Member

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

    Koketka New Member

    Blog Posts:
    0
    Joined:
    Oct 18, 2011
    Messages:
    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___ Супермодератор Staff Member

    Blog Posts:
    14
    Joined:
    Jun 25, 2008
    Messages:
    3,914
    Koketka
    1) или помести irvin32.lib в папку "c:\masm32\lib"
    2) или исправь строку "includelib c:\masm32\lib\irvin32.lib" на соответствующую действительности
     
  7. Dmitry_Milk

    Dmitry_Milk Member

    Blog Posts:
    0
    Joined:
    Nov 20, 2007
    Messages:
    540
    ...deleted...
     
  8. Psionic

    Psionic Member

    Blog Posts:
    0
    Joined:
    Sep 25, 2008
    Messages:
    156
    - а она там таки есть эта "irvin32.lib"? Может стоит прописать другой путь вместо