DOS下汇编编程:内存驻留程序与中断机制探索
"这篇文档是关于如何用汇编语言编写DOS下的内存驻留程序,主要探讨了TSR(Terminate and Stay Resident Program)的概念、应用和实现方式。内存驻留程序在执行完任务后仍保留在内存中,等待特定条件触发再次执行。常见的TSR类型包括弹出式实用工具、日历系统、网络服务器、通讯程序和DOS扩展。文档提到了TSR程序的调度通常依赖于硬件和软件中断,如键盘中断INT9H、时钟中断INT8H等。TSR程序的设计与PC的中断系统密切相关,中断向量表存储了指向中断处理程序的地址。" 在编写DOS下的内存驻留程序时,首先要理解DOS操作系统的工作原理。DOS是一个单任务、单用户的操作系统,但通过TSR技术,可以实现类似多任务的效果。TSR程序的核心在于它能够在执行完初始任务后,不被卸载,而是继续占用内存空间,等待特定事件(比如用户特定键入序列或硬件事件)触发执行。 在DOS中,中断是系统与外部设备交互的关键,也是TSR程序实现调度的基础。中断向量表位于内存的低地址段,包含了256个中断向量,每个向量指向一个中断处理程序,由4字节组成,前两个字节是处理程序的段地址,后两个字节是偏移地址。例如,要找到第X号中断向量的地址,可以使用公式:0000H + X * 4。 在编写TSR程序时,开发者需要熟悉如何截取和处理中断,例如通过修改中断向量来插入自定义的处理程序,或者在原处理程序前后添加自己的代码。此外,TSR程序还需要考虑如何安全地与DOS和其他程序共享内存,避免冲突,并确保在适当的时候恢复原中断处理程序,以保持系统的稳定性。 文档还暗示了TSR技术可以用于制作实用工具,但也可能被滥用,如制作病毒程序。因此,理解TSR的工作原理对于防止恶意软件和编写安全的系统扩展至关重要。 这个文档将引导读者深入理解DOS环境下的汇编编程,特别是涉及中断处理和内存驻留技术的高级概念。对于想要深入了解DOS系统或复古编程的读者来说,这是一个宝贵的资源。
![](https://csdnimg.cn/release/download_crawler_static/3656281/bg8.jpg)
![](https://csdnimg.cn/release/download_crawler_static/3656281/bg9.jpg)
剩余40页未读,继续阅读
![asm](https://img-home.csdnimg.cn/images/20210720083646.png)
![asm](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/3fcc5a7bf4124784a6853a6d47061957_sdaofeng.jpg!1)
- 粉丝: 6
- 资源: 34
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- 构建Cadence PSpice仿真模型库教程
- VMware 10.0安装指南:步骤详解与网络、文件共享解决方案
- 中国互联网20周年必读:影响行业的100本经典书籍
- SQL Server 2000 Analysis Services的经典MDX查询示例
- VC6.0 MFC操作Excel教程:亲测Win7下的应用与保存技巧
- 使用Python NetworkX处理网络图
- 科技驱动:计算机控制技术的革新与应用
- MF-1型机器人硬件与robobasic编程详解
- ADC性能指标解析:超越位数、SNR和谐波
- 通用示波器改造为逻辑分析仪:0-1字符显示与电路设计
- C++实现TCP控制台客户端
- SOA架构下ESB在卷烟厂的信息整合与决策支持
- 三维人脸识别:技术进展与应用解析
- 单张人脸图像的眼镜边框自动去除方法
- C语言绘制图形:余弦曲线与正弦函数示例
- Matlab 文件操作入门:fopen、fclose、fprintf、fscanf 等函数使用详解
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)