中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-01 02:23
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » 请推荐一个好的实模式语言组合 查看 1,278 回复 0
楼 主 请推荐一个好的实模式语言组合 发表于 2009-09-10 04:40 ·  中国 四川 成都 电信
新手上路
积分 14
发帖 4
注册 2008-11-08 12:57
17年会员
UID 130369
性别 男
状态 离线
1,我试过 nasm+gcc,gcc有三种选项.code16 .code16gcc .code32
缺点:
(1)GCC的.code16模式编出来的代码是有错的。直接同一个C文件函数调用就出错.
(2).code16gcc能编出正确的代码,但如果要调用汇编,则汇编代码需要注意压进来的地址是32位的,因些压进来的参数偏移稍有不同,并且ret指令必须变为66前缀的ret指令。这个模式生成的所有代码都有66或67前缀.
(3) nasm 如果要生成中间文件(obj coff elf等),不能使用ORG指令
优点:
(1) nasm 可以生成多种格式的中间文件,能在多个平台使用
(2) ld 命令可以指定代码起始地址

2. masm6.15+msvc1.52,始终没搞懂
msvc1.52生出来的文件老是含有一些我没有引用的函数(_fmemcpy之类的)
而且link不能指令代码开始地址

请各位推荐一个好点的组合,主要考虑到易于编译及编译工具易于下载。(像msvc1.52很难找)
论坛跳转: