中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-01 15:32
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » 有没有DJGPP的编程高手?帮忙看看。 查看 1,222 回复 10
楼 主 有没有DJGPP的编程高手?帮忙看看。 发表于 2003-06-08 00:00 ·  中国 陕西 西安 教育网
初级用户
积分 122
发帖 5
注册 2003-06-08 00:00
23年会员
UID 4406
性别 男
状态 离线
最近用DJGPP编了一个比较大的图形程序,刚运行时一切正常(包括浮点运算),但运行一段时间后,就会出现无法访问协处理器的异常,出现异常的运行时间不定,但出现异常时IP的值都是一样的,程序终止时显示CS和SS的选择子均为无效。
机子配置:CPU:Cyrix MMX-S 233
内存:128M
硬盘(电子盘):32M
哪位大侠帮忙分析一下是什么问题,我弄了近一个月,没有半点头绪。

3X


2 发表于 2003-06-08 00:00 ·  中国 台湾 远传电信
元老会员
★★★★★
积分 8,312
发帖 3,551
注册 2003-03-22 00:00
23年会员
UID 1225
性别 男
状态 离线
要不要換Intel的處理器試試~
MSN:tiqit2@hotmail.com
3 发表于 2003-06-08 00:00 ·  中国 陕西 西安 教育网
初级用户
积分 122
发帖 5
注册 2003-06-08 00:00
23年会员
UID 4406
性别 男
状态 离线
呵呵,因为产品已经定型,所以换处理器基本上是不可能的。:)

有没有别的办法?
4 发表于 2003-06-08 00:00 ·  中国 江西 吉安 电信
版主
★★★★
积分 7,296
发帖 1,628
注册 2002-10-16 12:00
23年会员
UID 10
性别 男
状态 离线
就这样(简短)的信息?别人想帮忙都帮不上。
ko20010214
=================================
大功告成,打个Kiss!
ko20010214@MSN.com
神州优雅Q300C
Intel CeleronM 370处理器 | 256MbDDR内存
40G硬盘 | USB2.0 | IEEE 1394
13.3 ' WXGA 宽屏(16:10) | COMBO光驱
10/100M网卡 | 四合一读卡器
5 发表于 2003-06-08 00:00 ·  美国 肯塔基州 费耶特县 列克星敦 Charter_Communications
系统支持
★★★★★★
“新DOS时代”站长
积分 27,736
发帖 10,521
注册 2002-10-09 12:00
23年会员
UID 9
状态 离线
请具体说一下吧。
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

6 发表于 2003-06-08 00:00 ·  中国 陕西 西安 教育网
初级用户
积分 122
发帖 5
注册 2003-06-08 00:00
23年会员
UID 4406
性别 男
状态 离线
Coprocessor not available at eip=000011f7
eax=0000030c ebx=00001000 ecx=f00a90f8 edx=000003cf esi=00000054
edi=00092b38 ebp=00112a08 esp=0000236e program=c:\cncsys\cncsys.exe

cs: sel=002b invalid
ds: sel=00af base=10000000 limit=ffffffff
es: sel=00af base=10000000 limit=ffffffff
fs: sel=00bf base=00000000 limit=0010ffff
gs: sel=00bf base=00000000 limit=0010ffff
ss: sel=0033 invalid

APP stack: Exceptn stack:

以上是程序异常退出时在屏幕上显示的全部信息,其中CS和SS的值有点奇怪,在正常运行时按CTRL+BREAK退出时显示的值如下:
cs:sel=00a7 base=10000000 limit=0012ffff
ss:sel=00af base=10000000 limit=ffffffff

有点不明白的是,我的内存是128M,硬盘也就32M,为什么代码段的基地址能为0x10000000 (即256M)?

每次程序退出时,eip的值都是000011f7

麻烦大侠帮忙看看,万分感谢啊。:)

7 发表于 2003-06-09 00:00 ·  中国 陕西 西安 教育网
初级用户
积分 122
发帖 5
注册 2003-06-08 00:00
23年会员
UID 4406
性别 男
状态 离线
详细信息在上面,请帮忙看看。

谢谢!
8 发表于 2003-06-09 00:00 ·  美国 肯塔基州 费耶特县 列克星敦 Charter_Communications
系统支持
★★★★★★
“新DOS时代”站长
积分 27,736
发帖 10,521
注册 2002-10-09 12:00
23年会员
UID 9
状态 离线
有两种可能:

1:程序本身编得可能有点错误;
2:所用的DJGPP的版本太旧,可以更新一下。
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

9 发表于 2003-06-09 00:00 ·  中国 陕西 西安 教育网
初级用户
积分 122
发帖 5
注册 2003-06-08 00:00
23年会员
UID 4406
性别 男
状态 离线
1,程序在PII350的机子上运行没有问题,不知道这是不是可以排除程序本身的问题;
2,我用的DJGPP版本是2.01,不知道最新版本是多少?哪儿有下?
10 发表于 2003-06-09 00:00 ·  美国 肯塔基州 费耶特县 列克星敦 Charter_Communications
系统支持
★★★★★★
“新DOS时代”站长
积分 27,736
发帖 10,521
注册 2002-10-09 12:00
23年会员
UID 9
状态 离线
在这儿下载DJGPP的最新版吧:
http://www.delorie.com/djgpp/
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

11 发表于 2006-02-18 10:17 ·  中国 广东 佛山 禅城区 电信
初级用户
积分 28
发帖 10
注册 2006-02-13 11:10
20年会员
UID 50286
状态 离线
可能是你反复调用读图形函数,以至内存溢出。
论坛跳转: