jwxian 发表于 2013-1-20 21:05:30

line number information for segment without class 'CODE' : code是什么意思?

本帖最后由 jwxian 于 2013-1-21 01:18 编辑

用的是EasyCode可视化汇编,程序是照抄书上的,居然编译错误,我没写错一个字啊,谁知道这句话是什么意思?
Module1.asm(4) : warning A4012: line number information for segment without class 'CODE' : code
发生错误.
程序是
Assume Cs:code
code Segment
DW 0123H, 0456H, 0789H, 0ABCH, 0DEFH, 0FEDH, 0CBAH, 0987H
Mov Bx, 0
Mov Ax, 0
Mov Cx, 8
s:Add Ax, Cs:
Add Bx, 2
Loop s
Mov Ax, 4C00H
Int 21H
code EndS
End

把assume cs:*
* segment
.........
.........
.........
* ends
end
编译器就会提示:Module1.asm(4) : warning A4012: line number information for segment without class 'CODE' : *



NGtailang 发表于 2013-1-20 21:37:44

code 伪指令,masm编译器认识的,汇编第四章有讲啊,没认真看吗

jwxian 发表于 2013-1-21 01:18:58

NGtailang 发表于 2013-1-20 21:37 static/image/common/back.gif
code 伪指令,masm编译器认识的,汇编第四章有讲啊,没认真看吗

把assume cs:*

* segment

.........

.........

.........

* ends

end

编译器就会提示:Module1.asm(4) : warning A4012: line number information for segment without class 'CODE' : *

NGtailang 发表于 2013-1-21 10:05:37

jwxian 发表于 2013-1-21 01:18 static/image/common/back.gif
把assume cs:*

* segment


那可能是有的字符,在编译器里有特定的含义,所以你不可用,比如 c就是

张国祥 发表于 2013-1-28 09:56:37

首先你把数据放在代码段,程序没有正确的入口,请在Mov Bx, 0前加start:,然后在end后加start;code翻译过来就是代码的意思

jeset 发表于 2013-1-28 17:17:57

正确的格式为:
assume cs:codeds:data
data segment
*********
data ends

code segment
*********
code ends

end

如果加了开始段,那么就是以下格式
正确的格式为:
assume cs:codeds:data
data segment
*********
data ends

code segment
start: *********
code ends

end start
这个start是一个标号,是给编译器看的。意思就是为代码开始

ywsswy 发表于 2016-12-7 17:58:11

line number information for segment without class 'CODE' : code

I also have the same problem as you,but i changed it a little and happily saw the warning gone.

I JUST CHANGE THE[code Segment]TO[code        segment        para public        'code'].YOU CAN HAVE A TRY!
页: [1]
查看完整版本: line number information for segment without class 'CODE' : code是什么意思?