请教为什么会编译不通过。

jacky_shen 2004-06-23 01:22:34
TITLE ABSOLT

DATA SEGMENT
OPER1 DW 12
OPER2 DW 230
RESULT DW ?

ARRAY DW 1, 2, 3
DATA ENDS

CODE SEGMENT
ASSUME DS:DATA, CS:CODE

START:
MOV AX, DATA
MOV DS, AX
MOV AX, OPER1
ADD AX, OPER2
JGE STORE
NEG AX

STORE:
MOV RESULT, AX
HLT

CODE ENDS
END START

编译不通过
提示如下:
C:\ASM>ML 1002.ASM
Microsoft (R) Macro Assembler Version 6.15.8803
Patched for you by promethee [ECL] in the year 2001 - enjoy
Copyright (C) Microsoft Corp 1981-2000. All rights reserved.

Assembling: 1002.ASM
Microsoft (R) Incremental Linker Version 6.00.8447
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.

/z2
"1002.obj"
"1002.exe"
NUL
LINK : warning LNK4044: unrecognized option "z2"; ignored
LINK : error : Segment reference in fixup record
1002.obj : fatal error LNK1123: failure during conversion to COFF: file invalid
or corrupt
...全文
90 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
紫郢剑侠 2004-06-23
  • 打赏
  • 举报
回复
MASM6.X提供了集成开发环境pwb.为什么不用呢?
jacky_shen 2004-06-23
  • 打赏
  • 举报
回复
我又试了试。

发现MASM6.x可以编译了。

把ASM文件放在MASM同目录中,就可以编译通过了。

csdsjkk 2004-06-23
  • 打赏
  • 举报
回复
和ml版本无关,
ml本质上只是个汇编器,
它是通过调用连接器link来最后生成程序
dunkel 2004-06-23
  • 打赏
  • 举报
回复
还是版本高了. 我的 masm32v7 的 ml 不过是: 6.14.8444 你的 ml 都已经是: 6.15.xxxx 了
csdsjkk 2004-06-23
  • 打赏
  • 举报
回复
去找个for dos的link.exe
jacky_shen 2004-06-23
  • 打赏
  • 举报
回复
使用 masm6.x 来编译的。
我是初学者,请问如何解决这个问题呢?
dunkel 2004-06-23
  • 打赏
  • 举报
回复
楼主是拿 masm32 来编译的? 用 masm5 或者是 masm6.x 吧.
不过, 你的程序也只能是在 debug 里 p 单步执行的

21,459

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧