中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-16 12:27
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » 汇编语言编译器使用问题 查看 2,021 回复 6
楼 主 汇编语言编译器使用问题 发表于 2010-04-05 20:51 ·  中国 陕西 西安 电信
初级用户
积分 88
发帖 32
注册 2010-03-27 14:30
UID 163163
性别 男
状态 离线
x-9.asm(7): warning A4016: Reserved word used as symbol: CS
ex-9.asm(8): error A2062: Missing or unreachable CS
ex-9.asm(16): error A2062: Missing or unreachable CS
ex-9.asm(18): error A2062: Missing or unreachable CS

50866 + 415518 Bytes symbol space free
ex-9.asm(18): error A2062: Missing or unreachable CS是什么意思,尤其是 A2062跟错误位置有什么关系
2 发表于 2010-04-06 09:31 ·  中国 黑龙江 哈尔滨 联通
高级用户
★★
苏醒的沉睡者
积分 659
发帖 217
注册 2003-02-15 00:00
UID 930
性别 男
来自 福建
状态 离线
error A2062: Missing or unreachable CS是什么意思

大意应该是,CS段(代码段)丢失或不可到达。。。你看看你的CS段设置对不对

至少也要把源代码给贴出来啊!
编程环境是什么?MASM的版本好,如果是比较新的版本,可以考虑伪代码,这样就可以省去段的设置了。。。而且不容易出错!
好久没碰Dos,手都生了,赶紧回来练练.嘿嘿
3 源程序如下,希望指点一下 发表于 2010-04-06 20:28 ·  中国 陕西 西安 电信
初级用户
积分 88
发帖 32
注册 2010-03-27 14:30
UID 163163
性别 男
状态 离线
题目是统计正数负数和0 的个数
name ex-10
data segment
buff dw 12,43,54,78,34
plus dw ?
minus dw ?
zero dw ?
count dw $-buff
data ends
code segment
assume cs:code ds:data
start:mov ax,data
mov ds,ax
mov cx,count
lea si,buff
begain:cmp ,0
je zero0
jg plus0
jl minus0
zero0:inc ah
jmp com
plus0:inc al
jmp com
minus0:inc bh
jmp com
com:inc si
loop begaim
mov ah,4ch
inc 21h
code ends
end start
错误提示是
ishuqi.asm(1): warning A4001: Extra characters on line
jishuqi.asm(10): warning A4001: Extra characters on line
jishuqi.asm(15): error A2035: Operand must have size
jishuqi.asm(26): error A2009: Symbol not defined: BEGAIM
jishuqi.asm(28): error A2056: Immediate mode illegal

50818 + 415566 Bytes symbol space free

2 Warning Errors
3 Severe Errors
高手能不能给分析一下需错误是什么意思?不胜感激


[ Last edited by chrise on 2010-4-6 at 20:30 ]
4 发表于 2010-04-07 12:32 ·  中国 黑龙江 哈尔滨 联通
高级用户
★★
苏醒的沉睡者
积分 659
发帖 217
注册 2003-02-15 00:00
UID 930
性别 男
来自 福建
状态 离线
第一行,应该是"_",而不是减号"-“
第十行,assume cs:code,ds:data ,你漏了一个逗号
十五行,确实不知道为什么了
二六行,应该为begain,你打错字母了
二八行,应该是int,而不是inc

输入错误太多。。代码写的时候注意一下就好了。
好久没碰Dos,手都生了,赶紧回来练练.嘿嘿
5 很受益 发表于 2010-04-07 20:53 ·  中国 陕西 西安 电信
初级用户
积分 88
发帖 32
注册 2010-03-27 14:30
UID 163163
性别 男
状态 离线
十分感谢,以后会注意
6 发表于 2010-04-08 09:15 ·  中国 江苏 苏州 电信
银牌会员
★★★
积分 2,223
发帖 789
注册 2005-01-27 00:00
UID 35703
性别 男
状态 离线
15行“cmp [si],0”改为“cmp byte ptr [si],0”。
用masm5才会提示出现此错误。MASM6不会。
my major is english----my love is dos----my teacher is the buddha----my friends--how about U
7 发表于 2010-04-08 12:14 ·  中国 黑龙江 哈尔滨 教育网
高级用户
★★
苏醒的沉睡者
积分 659
发帖 217
注册 2003-02-15 00:00
UID 930
性别 男
来自 福建
状态 离线
还是本是大哥厉害。。。!
好久没碰Dos,手都生了,赶紧回来练练.嘿嘿
论坛跳转: