首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
1991年第1期上的《内存动态分配策略及实现》一文(以下简称《内》文)的确很有实用价值,再加上第五期杨竟同志对该文的补充,更显得实用。我们可以采用另一种简便方法来达到上述目的。一、确定应用程序所占用的内存空间的确切位置在DOS提示符下,当键入一个DOS外部命令或执行一个程序时,DOS首先确定当时内存最低的可用地址作为该程序的装入起始点(这正是《内》文方法的依据),并从此点开始为用户程序建立程序前缀PSP,即PSP段地址就是用户程序所占用内存空间的起始地址。因此,只要知道了程序段前缀地址(PSP),自然就确定出了用户程序所占用的内存起始地址了。DOS在建立程序段前缀PSP时,要将DS、ES寄存器赋以PSP的段地址,也就是说ES(DS)的内容代表用户程序  相似文献   

2.
本文讨论了高级语言调用DOS命令的内存分配和返回问题,并给出了可与FORTRAN程序连接的调用操作系统级命令的汇编子程序。  相似文献   

3.
马林 《软件世界》1997,(1):49-50
4.高位存储区(HMA):是指1024K以上的第一个64K,即1024-1088K之间的存储区,严格讲它不算是内存的一个分类,只是扩展内存中的一个小区域,为了DOS自身对内存的需要,可用DOS=HIGH配置命令使DOS直接使用这部分内存(当DOS在扩展内存中运行时,它使用的是第一个64K字节的指定区域,所以我们称为高地址内存区或HMA)。如图4:在使用DEVICE=C:\DOS\HIMEM.SYSDOS=HIGH把DOS内核程序送到高位存储区HMA中时,应该注意设置缓冲区的个数一定要适当,不可过多也不可过少,下面仍以486DX/40内存机器为例:Config…  相似文献   

4.
本文介绍了一种从高级语言直接调用dBASEⅢ功能的方法.其基本思想是:将用户高级语言程序和dBASEⅢ同时装入内存,用户程序以子程序调用方式直接转入dBASEⅢ进行数据库操作,并将操作结果存入用户程序开设的缓冲区中.本文对其主要实现技术,即dBASEⅢ修改、DOS操作系统扩充和接口处理做了详细介绍.  相似文献   

5.
夏克昆 《电脑》1994,(6):21-21
一个应用程序在运行时,通常只限于执行本程序的内容,但也可以通过调用DOS的EXEC功能加载另一个程序(称其子程序),当这个子程序结束退出时,又将返回到应用程序,因此,相对子程序而言,应用程序是个父程序。只要堆栈深度足够,DOS还允许这个被加载的子程序再嵌套加载另一个子程序,直至内存耗尽。应用软件采用DOS的EXEC功能调用编程,不仅有利于编制模块化结构的大型程序,加强了程序开发的能力,而且也能有效地解决内存空间不足的矛盾,倘若被加载的子程序是不能独立被执行的,则更使应用软件具有了较强的反跟踪能  相似文献   

6.
读《微型机与应用》1995年第4期《优化微机内存管理的技术与方法》补充如下,供参考.1CPU寻址能力与DOS内存分区i80-系列CPU寻找线性地址的能力依顺序1M、16M及4G,其对应的线性地址分别为0~FFFFFH、0~FFFFFFH及0~FFFFFFFFH.1981年IBMPC面世的MS(PC)DOSV1.0将CPU8088管理的1M线性地址划分为常规内存区640K,地址0~9FFFFH,亦名’用户区’;其余384K,地址A0000~FFFFFH,在初称作保留内存区留予系统硬件.此分区法沿用至今.随着CPU寻址能力的扩大,将超过1M即100000H以上的线性地址取名扩展内存区(ExtendedMemoryArea).DOS不能直接用它,需凭籍遵循XMS的管理程序(如HIMEM.SYS)或INT15H扩充中断  相似文献   

7.
一般用BASIC语言调用机器码子程序的方法是: 1.用DEBUG将机器码子程序装入一块空闲的内存(下一步装入BASIC时也不用的内存),并记下此时的段地址。2.装入BASIC,在BASIC状态下将机器码子程序以文件形式存盘:首先用“DEF SEG=”语句定义此时机器码子程序所在的段地址,然后用“BSAVE”语句将机器码子程序存盘。3.在BASIC状态下调用机器码子程序,首先用“DEF SEG=”语句定义机器码子程序将要装入的段  相似文献   

8.
本人经查阅有关资料,摸索出了一种利用DOS的保留中断INT21H的52H号功能调用来实现TSR程序一次性驻留内存的方法,其原理如下:INT21H的52H号中断功能调用主要是确定内存控制链中第一个内存控制块MCB的具体地址,根据第一个MCB的地址,利用公式可计算出下一个MCB的具体地址。下一个内存控制块MCB段地址二本内存控制块MCB段地址+本内存分配块MAB大小+1)。其调用格式为:MOVah,52HINT21H该操作的返回值为:ES:[BX-2]指向第一个MCB段地址,其偏移值为0。该方法是通过在TSR程序的内存分配块MAB的100H(即内存驻留…  相似文献   

9.
给出了一种“多通道随机数据流的中为驻留接收技术方案”,详细描述了内存驻留中断接收、开设数据缓冲区、数据段地址保存、驻留/解除和数据缓冲区读取,讨论了高级语言程序信息处理,举出了该技术方案在“水泥生产线微机全自动配为测控系统”中应用的实例,介绍了测试方法和步骤,给出了高级语言读取数据缓冲区数据及调用源程序  相似文献   

10.
本文详细分析了 MS-DOS 的内存管理策略,从 DOS 各版本的比较指出了其内存管理功能的局限性,并结合 DOS 所提供的用于内存管理的系统调用给出了在软件开发中的若干应用。  相似文献   

11.
在实时控制或数据处理应用场合,经常需要用高级语言调用汇编语言子程序,以提高处理速度、节省内存或直接驱动过程通道。BASIC语言有专门的语句或函数(USR,CALL,…),调用汇编语言子程序的方法一般资料中都有介绍,但是用户要确定汇编子程序在内存中的绝对地址,另外BASIC程序本身运算速度慢,子程序功能不强(GOSUB语句不能传送数据,主程序和子程序中变量名要完全一致),开发多模块程序时十分不便。FORTRAN语言比BASIC运行速度快,子程序功能强,便于多模块连接,用户不需要确定汇编子程序在内存中的绝对地址,因此用FORTRAN和汇编混合编程更适于实时控制或数据处理应用,但是FORTRAN调用汇编语言子程序的方法在资料中介绍很少,使用户颇感困  相似文献   

12.
为了实现Windows与DOS通讯,先通过DOSTSR.EXE重置多路复用中断(int2FH)入口地址,在内存中申请一块缓冲区,并放入给定的字符串;在Windows环境中,WINTSR.EXE通过中断调用接口int86()调用int2FH获取DOSTSR传回的缓冲区地址,并转换成保护模式地址。  相似文献   

13.
本文给出了一种“双通道随机数据流的中断驻留接收技术方案”,详细描述了内存驻留中断接收、开设数据缓冲区、数据段地址保存、驻留/解除和数据缓冲区读取,讨论了高级语言程序信息处理,举出了该技术方案在“水泥生产线微机全自动配料测控系统”中应用的实例,介绍了调试方法和步骤,给出了汇编语言中断驻留接收源程序和高级语言读取数据缓冲区数据及调用源程序。  相似文献   

14.
BASIC程序调用汇编子程序的难点在于如何正确地找出汇编子程序在内存存放的位置。字符串法使你不必考虑这个问题,从而避开了这个难点。因为字符串法是将子程序的机器码作为主程序的一个字符串由机器将它存于内存的字符串区。根本用不着用户操心子程序如何存放。当然,这样存放起来的子程序,既不会复盖其它程序,也不会被其它程序复盖,十分稳妥可靠。至于子程序的机器码,只要使用debug的u命令,就可由机器准确地给出,也不用用户发愁。而子  相似文献   

15.
控制转移类指令学习单片机有一定的智能作用,主要是控制转移类指令的功劳。这一类指令的功能主要是控制程序从原顺序执行地址转移到其他指令地址上(需要改变程序运行方向,或者需要调用子程序,或需要从子程序中返回)。由于该类指令用于控制程序的走向,所以其作用区间  相似文献   

16.
本刊第三期发表的《控制DOS命令的使用权限》一文,可控制某些危险的内部命令的使用,提高计算机系统的安全性。通过修改内部命令处理模块(该文为DEL)的偏移指针,键入DEL便会先调用附加的口令输入模块,口令正确时才能执行真正的DEL调用。此附加口令输入模块篇幅较短,很有实用价值。笔者经过试验,发现该文的程序存在两个问题:(1)DEL命令处理模块的偏移指针有误;(2)即使改正了偏移指针,执行了某些内部命令后可能引起死机!下面笔者简要地作一分析,并给出一个对所有内部命令有效的口令检测程序。  相似文献   

17.
目前,在微机上开发的应用软件,其编程语言基本上都采用高级语言或数据库管理系统。大家知道:dBASE Ⅲ有一RUN命令,它可运行DOS操作命令,这一功能为用户组织设计一个系统时,提供了与操作系统的透明接口,但dBASE Ⅲ又有其不足之处,即占用内存大,运行速度慢。因而,仍有大多数用户在要求较高的软件中采用BASIC,PASCAL,C等高级语言编程,而这些语言本身并不提供直接调用DOS命令的功能,如何实现呢?由于各种高级语言一般都具有调用汇编语言子程序的功能,因此,编一运行DOS操作命令的汇编子  相似文献   

18.
采用直接存取屏幕缓冲区技术的优点主要是:具有比通常的DOS或BIOS调用更快的执行速度。文本方式下,屏幕缓冲区(彩显)的首址是十六进制的B800,其一个字对应屏幕上的一个字节,分别为字符和属性。故程序中首先定义了一个记录型数据结构,用以存放屏幕字符及其属性,由于无法事先知道保存屏幕一定区域的内容要用多大的内存空间,因而采用了指针类型的数据结构。在恢复之后程序将自行释放所用内存。如果不希望立即释放,可对程序略作修改,另外,如果屏幕缓冲区的首地址不是B800(如单显等),由仍要进行修改。此处不再赘述。  相似文献   

19.
本文在剖析APPLESOFT BASIC中变量类型及存贮格式的基础上着重介绍了驻机解释程序中各类常用子程序模块的功能,入口地址及其调用方法。并且文中对相当多的子程序作了调用示范。如果掌握了这种调用技术,在设计汇编语言程序时,将会感到省力、省时、事半功倍。  相似文献   

20.
钟华 《电脑》1995,(8):38-39
看到《电脑》94年第10期中《始料未及——高版本DOS的一个缺陷》一文,对其发生了浓厚兴趣.该文作者在调试一个修改D盘首隐藏扇区的程序时,由于计算错误,导致修改后硬盘和软盘均不能启动的罕见现象.该文作者正确地分析这一现象的产生是高版本DOS在引导过程中循环读取分区表所致,并提出一个解决办法是用DOS2.0启动系统,再用INT 13H恢复硬盘.但DOS2.0版本是很难弄到的,那么有没有更方便实用的方法修复硬盘呢?大家都知道,正常情况下软盘的启动,大致要经过以下几步:①硬件自测;②软盘引导扇区装入内存0:7C00处并取得控制权;③引导程序读入IO.SYS和MS-DOS.SYS;④IO.SYS和MSDOS.SYS依次对系统初始化;⑤COMMAND.COM装入内存并初始化;⑥进入正常DOS系统.以上各步不论在哪一环节出现问题,都将导致启动失败.而《始》一文中出现的问题,就是第④步中DOS在建立磁盘参数表时出现死循环造成的.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号