网站大量收购独家精品文档,联系QQ:2885784924

FOXPRO25与汇编语言的接口技术研究.pdf

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4 一 396 FOXPRO2.5与汇编语言的接口技术 杨晓荣 王 凉 (西藏大学〕 摘 要 本文结合实例全面系统地介绍FoxPro2.5与汇编语言的接口技术,包括汇编语盲子程序、汇编 语言外部函数的开发及调用方法,以及外部程序库API的建立和使用。 关,词 FOXPR02.5汇编语言 接口 子程序 外部函数 外部程序库API 1 引 言 FOXPRO2.5数据库系统是MICROSOFT公司的新一代数据库系统,它以运行速度高、良好的 界面、丰富的功能颇受用户青睐。然而,它也存在着系统本身占用内存空间较大,对计算机的低层 结构访问和处理能力差以及绘图功能不强的缺点,限制了它的使用范圈。 与FOXPRO2.5语言相反,汇编语言低层功能很强大,速度快。我们可采用FOXPRO2.5的 RUN八功能调用一些用汇编语言编写的外部可执行程序.以弥补其不足,条件是必须有足够的空 闲内存。但是,操作系统、中文DOC以及FOXPRO2.5几乎用尽了常规内存,特别是加上网络系 统,内存就更紧张了。这样用RUN/!命令只能调用一些较小的程序。况且外部文件执行完返回 FOXPRO时,原来的屏幕常常被破坏了,这对程序员来说简直是一种灾难! 由此,我们不得不回到FOXPRO2.5与汇编语言的接口上来。我们在用FOXPRO编写用户程 序时,结合汇编语言,利用其开发具有某些特殊功能的子程序.值为FOXPRO的外部函数,充分发 挥汇编优势,弥补FOXPRO2.5本身的不足,从而编写出完普可靠的大型软件系统。 本文主要内容有三个方面:-.FOXPRO2.5的汇编语言子程序的产生及调用方法。二FOX- PRO2.5的汇编语言子程序实例。三.FOXPRO2.5的汇编语言外部程序库API的建立及使用。 本文所附程序均在MASM6.0和FOXPRO2.5FORDOS下调试通过。 2 汇编语言子程序的生成及调用方法 2.1趁立一个汇编语官子程序(即二进制文件)必须遵循的规则 . 偏移量100H处必须是一条可执行指令。(说明:作者发现多种资料上认为 “偏移量OOH 处必须是一条可执行指令”.但按其说法上机并不能通过。 . 程序运行过程中,不能通过参数改变FOXPRO的内存变量的长度,即不得改变DS-.bx传 递过来的变量长度。 . 程序运行所用的空间不得超过实际程序的大小,因为LOAD命令是以文件的长度确定所 需内存的大小的.也就是说程序不能在运行中动态申请内存。 : 在控制返回到FOXPRO之前,必须恢复寄存器ss和c,的原值。 程序结束时用远返回把控制权交给FOXPRO.即用RETF指令结束程序,或指定子程序的 4 一 397 属性为faro 2.2汇编语言子程序的生成步骇 2.2.1使用MASM对汇编语言的源程序进行编译,生成.OBI目标代码文件。 2.2.2 使用LINK对目标代码文件进行链接,生成EXE可执行文件。 2.2.3 使用EXE2BIN将可执行文件转换成BIN文件。 至此FOXPRO2,5汇编语言子程序(.BIN文件)生成,下面我们介绍其调用所需的三个命令。 2.3LOAD命令 LOAD命令的一般格式为: LOAD(FILENAME)[SAVEH[NOSAVE] LOAD命令将二进制文件从磁盘装入内存中.FOXPRO允许同时装入内存16个程序,且每个 程序最大可达64K,二进制程序的默认扩展名为.BIN。文件装入时,文件为模块名,扩展名不再使 用。 LOAD命令中可以指定选项SAVE或NOSAVE,狱认值是NONAME 。如果指定了SAVE选 项,FOXPRO在从二进制程序返回时,将视屏幕显示存贮区(VIDERAM)中的内容拷贝到DESK- TOP(假定二进制程序直接写了视屏显示存贮区),这就意味着FOXPRO把所有由二进制程序输出 的信息.看成FOXPRO本身输出的信息。 除非特殊需要,一般不要使用SAVE选项,因为在一次从二进制程序返回时.FOXPRO

文档评论(0)

带头大哥 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档