第一个程序程序就错了,不知道怎么改

iamlinjian 2003-09-16 09:55:42
这两天来这里发现一个好地方,于是决定开始学汇编语言)周日买了本电子工业出版社出版的高等专科教材《80486(80X86)汇编语言程序设计》按这里大家的推荐下载了masm8,可是按书上第一个程序输进去运行就出错了,程序是求两数和:
dat segment 'data'
x db 10h
y db 20h
dat ends
sta segment stack 'stack'
db 100 dup(?)
sta ends
cod segment 'code'
assume cs:cod,ds:dat,ss:sta
start:mov ax,dat
mov ds,ax
mov al,x
add al,y
mov dl,al
or dl,30h
mov ah,2
int 21h
mov ah,4ch
int 21h
cod ends
end start

错误信息:
Assembling: C:\masm32\source\a.asm
C:\masm32\source\a.asm(10) : error A2004: symbol type conflict
C:\masm32\source\a.asm(21) : warning A4023: with /coff switch, leading underscore required for start address : start

是不是说start有问题??)我英语不好(可是start有什么问题呢??
...全文
155 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
gengpengfei 2003-09-17
  • 打赏
  • 举报
回复
在masm5 下可以运行.0error.0waring.
你最好换成masm5 的编译器.
bluedreammer 2003-09-16
  • 打赏
  • 举报
回复
樓上的說的是```
我用了masm5.0可以編譯`
dunkel 2003-09-16
  • 打赏
  • 举报
回复
masm5 asm.yeah.net(罗云彬的编程乐园)有下载
masm6.x 则要到 ftp 站点去找: ftp://202.117.48.78/pub/software/masm611
dunkel 2003-09-16
  • 打赏
  • 举报
回复
还是编译程序版本的问题, 你的这个程序是 dos16 的, 而 masm8 适用于 win32 的程序, 所以还是去下载 masm5/6.x 来做比较好, masm5 用起来比较简单, 但 masm6.x 功能比较强.
csdsjkk 2003-09-16
  • 打赏
  • 举报
回复
dos 汇编用masm5
dunkel 2003-09-16
  • 打赏
  • 举报
回复
dos16 和 win32 的不同首先是文件格式的不同, 还有就是运行环境的要求的不同. 所谓的向下兼容不是指创建这些程序的编译链接程序, 而主要是针对运行环境的要求而言的, 但也不可能是100%的兼容. 很多的dos程序在win2000下运行不了, 具体是什么错误? 有些dos的软件由于直接操作了硬件, 这是win2000不允许的, 可能运行是会有问题, 但多数的一般的程序应该是可以正常运行的, 只是缺省情况下不能显示汉字, 否则须对ntvdm.exe进行修改.
iamlinjian 2003-09-16
  • 打赏
  • 举报
回复
另外我的机器是WIN2000好象很多DOS的程序运行不了,不知道怎么回事?
iamlinjian 2003-09-16
  • 打赏
  • 举报
回复
dos16 和 win32 的汇编有什么不同??高级的不是要向下兼容吗??
qiume 2003-09-16
  • 打赏
  • 举报
回复
楼上的是了

21,453

社区成员

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

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