CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  其他开发语言 >  汇编语言

还有专家在线吗?为什么用MASM v7 来编译连接《IBM-PC 汇编语言程序》设计上的例子程序都会出错?

楼主Auto_And_Elec(追命)2002-02-09 14:27:43 在 其他开发语言 / 汇编语言 提问

MASM   v7的版本是高,而清华的那本书上的却还是8086处理器的东东。我不知道是什么原因出错。  
  一下我抄一个极简单的例子给大家看看:  
   
  TITLE   GRAPHIX.COM  
  codeseg   segment  
  main   proc   far  
          assume   cs   :   codeseg,   ds   :   codeseg,   ss   :   codeseg  
          org   100h  
          mov   ah,   0  
          mov   al,   04  
          int   10h  
   
          mov   ah,   0bh  
          mov   bh,   0  
          mov   bl,   0  
          int   10h  
   
          mov   ah,   0bh  
          mov   bh,   01  
          mov   bl,   0  
          int   10h  
   
          mov   bx,   0  
          mov   cx,   0  
          mov   dx,   0  
   
  line:   mov   ah,   0ch  
          mov   al,   bl  
          int   10h  
          inc   cx  
          cmp   cx,   320  
          jne   line  
          mov   cx,   0  
          inc   bl  
          and   bl,   03  
          inc   dx  
          cmp   dx,   200  
          jne   line  
          ret  
  main   endp  
  codeseg   ends  
  end   main       ;     ×××××××这一行有警告错误:warning   A4032,   with   /coff   switch,   leading   underscore   required   for   start   address   :   main  
   
  编译的时候有警告错误:写在上面出错的地方  
  连接的时候出现错误:unresolved   external   symbol   _main  
   
   
  这是怎么回事?   高手帮忙! 问题点数:20、回复次数:7Top

1 楼Auto_And_Elec(追命)回复于 2002-02-09 14:33:05 得分 0

这个例子就是在屏幕上以图形的方式显示彩条  
   
  Top

2 楼natureshuo()回复于 2002-02-09 16:55:39 得分 4

main好像是关键字,不能用作地址标号吧!?  
  好像是吧?Top

3 楼awinder(风)回复于 2002-02-09 19:23:36 得分 4

masm32v7一般用来编译32位程序。你的程序在masm5.0和tasm3.1下都可以编译通过。Top

4 楼vBin(彬)回复于 2002-02-10 18:15:09 得分 4

用TASM编写吧,TASM不管是32位还是16位都没问题.Top

5 楼wowocock(机器猫)回复于 2002-03-04 19:18:34 得分 4

你忘了加说明  
  。8086  
  .model   tiny  
  还有MASM默认编译是WIN32PE格式,所以要去掉COFF参数。Top

6 楼yayv(yayv)回复于 2002-03-05 19:40:49 得分 4

COFF格式的目标文件中,不能以过程名作为入口地址。你可以在  
  main   endp  
  后加上  
  start:  
          call   main  
   
  再把end   main改为   end   start   试试Top

7 楼yayv(yayv)回复于 2002-03-05 19:41:50 得分 0

masm   v7   只生成32位的COFF格式目标代码  
  Top

相关问题

  • linux 下有没有类似masm的汇编语言编译器?
  • 怎样用bcb编译汇编语言?
  • 为什么tasm可以在数据段插入汇编语言,而`masm则无法编译通过
  • Casl汇编语言,是在什么环境下编译,和IBM汇编语言有什么区别呢?
  • 那里可以下载汇编语言的编译嚣.
  • 请推荐汇编语言、编译原理好书
  • 请问如何安装汇编语言,masm,青帮帮菜鸟!
  • 谁有汇编语言得编译器吗?请给我一份好吗?
  • 那里有汇编语言的编译程序下载?小弟急用
  • 如何能稍微看懂点VC编译器的汇编语言???

关键词

  • 编译
  • start
  • v7
  • masm
  • 出错
  • 程序
  • 例子
  • codeseg
  • bl
  • coff

得分解答快速导航

  • 帖主:Auto_And_Elec
  • natureshuo
  • awinder
  • vBin
  • wowocock
  • yayv

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo