注册 登录
编程论坛 汇编论坛

visual studio 2008中编译《Intel汇编语言程序设计》里的例子出错

littlewing 发布于 2008-10-29 06:57, 3351 次点击
我在https://bbs.bccn.net/thread-197533-1-1.html,看到了如何在visual studio编译的例子,用作者给给的例子main.sam,没有问题,如下:
TITLE MASM Template                        (main.asm)
; Description:
; Revision date:
INCLUDE Irvine32.inc
.data
myMessage BYTE "MASM program example",0dh,0ah,0
.code
main PROC
    call Clrscr
    mov     edx,OFFSET myMessage
    call WriteString
    exit
main ENDP


当换成书中的例子,例如:
TITLE Add and Subtract, Version 2         (AddSub2.asm)

; This program adds and subtracts 32-bit integers
; and stores the sum in a variable.
; Last update: 06/01/2006

include Irvine32.inc
INCLUDELIB irvine32.lib
INCLUDELIB kernel32.lib

.data
val1     dword  10000h
val2     dword  40000h
val3     dword  20000h
finalVal dword  ?

.code
main PROC

    mov    eax,val1            ; start with 10000h
    add    eax,val2            ; add 40000h
    sub    eax,val3            ; subtract 20000h
    mov    finalVal,eax        ; store the result (30000h)
    call    DumpRegs            ; display the registers

    exit
main ENDP
END main

就出问题,报了两个错误:
MASM : warning A4018: invalid command-line option : /errorReport:prompt
MASM : fatal error A1017: missing source filename
应该设置对了吧,否则第一个例子就不会成功,第二个错在哪里了呢
6 回复
#2
ONEPROBLEM2008-10-29 07:26
既然用到 INCLUDELIB kernel32.lib
那是不是少了 include kernel32.inc  ?
#3
littlewing2008-10-29 08:16
由于irvine32.inc是作者自己定义的,所以才加了一个kernel32.lib,要不然在masm32上会报错,所以在visual studio 2008也加了

加了include kernel32.inc,还是报同样的错
#4
zklhp2008-10-29 12:54
[bo][un]littlewing[/un] 在 2008-10-29 08:16 的发言:[/bo]

由于irvine32.inc是作者自己定义的,所以才加了一个kernel32.lib,要不然在masm32上会报错,所以在visual studio 2008也加了

加了include kernel32.inc,还是报同样的错


有这个文件吗?
#5
littlewing2008-10-30 07:22
这个irvine32.inc是作者自己定义的,书里的例子大部分用到这个
#6
zklhp2008-10-30 12:32
[bo][un]littlewing[/un] 在 2008-10-30 07:22 的发言:[/bo]

这个irvine32.inc是作者自己定义的,书里的例子大部分用到这个


这些文件有没有放好 要不怎么找不到?
#7
littlewing2008-10-31 07:13
我的错,我一直以为 2008 visual c++,是集成masm 9.0的,可是,08年5月后的版本才集成的,我的是5月份以前的,换了5月后的就没问题了
1