![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-10-31 18:58 |
共 47,815 主题排行 / 349,930 发帖 / 今日 0 篇 / 48,290 会员排行 |
| DOS开发编程 & 发展交流 (开发室) » 请问有否DOS上的支持实模式且可使用32位寄存器和大内存的C |
| 可打印版本 1,655 / 7 |
| 第1楼 marchsnow | 发表于 2005-04-20 00:00 |
| 初级用户 发帖 3 积分 110 | |
|
请问有否DOS上的支持实模式且可使用32位寄存器和大内存的C 因开发底层软件,一直使用DOS环境下的BORLANDC3.1,但这个软件可能太老些了吧,不但不能使用大内存,而且连32位寄存器也无法使用,据说DGJPP比较好,但只支持保护模式,本人开发的程序必须运行在实模式下(要进行直接I/O操作和中断调用),请问各位老师,有否DOS上的支持实模式且可使用32位寄存器和大内存的类似BC语言集成调试环境?谢谢![email protected]
|
|
| 第2楼 郭恒 | 发表于 2005-04-21 00:00 |
| 中级用户 发帖 39 积分 225 | |
|
不能怪“BC31”,看到您这个问题,颇有同感,它也困扰了我好几年,我始终相 信Borland公司不是傻蛋。您提出这个问题后,刺激我去试一试。“天啊”,我自己都 不敢相信自己的眼睛:OK了!!! 我高兴,我欢呼,我好激动......在菜单------选中-> 或者是 选中->32位寄存器从此解决了。谢谢您,亲爱的Marchsnow!您让我改变了对Bc31的态度! 例如:void main(){ asm mov ax, 0 asm mov eax, 0 asm{ mov ax, 0 mov eax, ebx };} |
|
| 第3楼 marchsnow | 发表于 2005-04-22 00:00 |
| 初级用户 发帖 3 积分 110 | |
|
亲爱的郭先生:您好!
首先,非常感谢您的帮助指教! 您说的通过assemble进行编译的办法,前一段时间我也曾试过,不过BC31默认的汇编语言编译器是TASM1.0,它好像也不认识32位寄存器,所以曾尝试用MASM6.11替代TASM1.0进行编译,但不知是否操作问题,没成功,就没再试验。一会再试一下。谢谢您!还有,打开和使用高端内存有什么好的方法吗?请赐教!谢谢您! |
|
| 第4楼 郭恒 | 发表于 2005-04-22 00:00 |
| 中级用户 发帖 39 积分 225 | |
|
关于32位寄存器,我的BC31的Tasm.exe版本是V3.1,编译链接通过。 “打开和使用高端内存”可调用XMS扩展内存管理程序分配获得。由于高位内存大约只有64K不到(65520字节),不知您为什么要使用它,并且它是全局唯一分配的,所 以它可能被其它程序占有,很难分配成功!例如您在Config.Sys中有如下语句 DOS=HIGH,UMB 如果您是直接访问高位内存的话,可以直接打开A20地址线(可查相关x86书籍获得),在实模式下就可以用“Seg:Offset”访问到.。 如果您需要大内存来保存数据,建议用XMS扩展内存来存贮。它在DOS下有4GB,Win9x有4M空间, 在Win2000有2M空间,在WinXp有2M空间.所以“直接访问常规内存”之外的内存是相当危险的,并 且不兼容其它操作系统。 |
|
| 第5楼 marchsnow | 发表于 2005-04-22 00:00 |
| 初级用户 发帖 3 积分 110 | |
|
不好意思,我刚才试了一下,通过了,我的版本号也是TASM3.1,上次估计可能是忘了修改CPU为80386了!非常感谢您!至于大内存问题吧,我现在做一个系统的安装程序,需要在DOS下,加载尽可能少的驻留程序的情况下,完成NTFS分区的格式化工作和类似碎片整理的工作,BC好像最大只能分配不到64K内存,所以要频繁读盘,可现在的硬盘动辄几十G,速度很慢,需等待的时间很难容忍,所以有可能的情况下想通过尽可能多的内存来缓解运行速度。不知是否有方便的方法?
|
|
| 第6楼 jawbin | 发表于 2005-04-25 00:00 |
| 高级用户 发帖 444 积分 994 | |
|
啊....都是高手啊...
|
|
| 第7楼 bigboy2050 | 发表于 2005-08-11 18:41 |
| 初级用户 发帖 4 积分 41 | |
|
大侠啊!!!!!!!
|
|
| 第8楼 boblhh9999 | 发表于 2005-08-11 19:11 |
| 中级用户 发帖 74 积分 316 | |
|
这个问题很经典,希望高手门多多发表见解。
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |