汇编语言打字练习程序设计:计时与中断处理
2星 需积分: 9 152 浏览量
更新于2024-08-02
2
收藏 209KB DOC 举报
"这篇文档是关于一门汇编语言课程设计的项目,名为‘打字计时练习’。项目目标是创建一个程序,用户可以在键盘上练习打字,并且程序能够统计打字时间。设计思路涉及使用中断程序检测键盘输入,转换扫描码为ASCII码,并在屏幕上显示输入的字符。此外,程序还包含一个计时模块,用于计算用户完成每个句子的时间,采用自定时器中断处理来实现。当用户输入回车表示完成一个句子时,程序会显示打字时间,并进入下一个句子的练习。如果所有句子都已练习过,程序会重新开始。用户可以通过特定功能键(如Esc或Shift键)退出。"
在此次课程设计中,学生需要掌握以下几个核心知识点:
1. **汇编语言编程**:学生需熟悉汇编语言,理解指令集和数据段的概念,以便编写处理键盘中断和计时的程序。
2. **中断处理**:设计自编中断程序`kbint`,模拟ROM09键盘中断例程,但仅处理可显示字符的ASCII码,忽略其他特殊键。中断向量的管理和中断屏蔽位的设置是关键。
3. **键盘输入处理**:学生需编写代码读取缓冲区中的字符,检查回车键以识别句子的结束,并调用显示时间的子程序。
4. **计时系统**:利用自定时器中断处理程序`clint`,每当输入完一个句子,中断计数并更新分钟和秒的计数。设计中计数器的阈值设置为18次中断代表1秒,60秒后增加分钟计数。
5. **时间显示**:子程序`disptime`将二进制时间转换为十进制,并以分钟:秒:毫秒的格式呈现。
6. **DOS功能调用**:在程序开始和结束时,使用DOS功能恢复和设置键盘中断向量,确保程序启动和退出的正确性。
7. **系统资源管理**:了解如何利用系统资源,如数据段的预置和内存管理,以及如何在程序执行过程中保持系统的稳定。
通过这个课程设计,学生不仅提升了汇编语言的实际应用能力,也学习了如何查找和利用设计资料,锻炼了分析问题和解决问题的能力。同时,对计算机系统的内部工作原理有了更深入的理解,为后续的学习和系统开发打下坚实的基础。
144 浏览量
155 浏览量
2024-10-30 上传
2024-10-30 上传
2024-10-31 上传
2024-11-08 上传
126 浏览量
2024-06-24 上传
zhouyun881121
- 粉丝: 5
- 资源: 6
最新资源
- 著名的GPS数据处理软件介绍.zip
- java笔试题算法-pulse:一个具有教学意义的Java/C++国际象棋引擎
- test-management-folder:测试文件夹
- 如何做精终端陈列
- 埃比尼泽即时现金
- testng:ng样圈ci
- PHP-Druid:具有PECL扩展名PHP的Druid驱动程序
- 便利店的商品陈列技巧
- 易语言源码易语言使用通用型源码.rar
- Công Cụ Đặt Hàng TopTaobao-crx插件
- deanyoung.github.io
- BTPollingTest:测试应用程序以确定 Bt 轮询作为在 android 上定位附近服务设备的方法
- AlexZortex.github.io
- 超市商品分类——卧具、家具类
- newrelic-vertica:在Vertica驱动程序的NewRelic RPM中启用SQL监视
- PriceReminder Plugin-crx插件