汇编语言课程设计:简易数值运算程序

需积分: 16 1 下载量 137 浏览量 更新于2024-12-19 收藏 28KB DOC 举报
汇编语言课程设计文档主要关注于一个基础的数值计算器程序,用于实现四则运算功能,支持在指定范围内(-32768到32767)进行计算,并允许用户通过按下 'P' 或 'p' 退出程序。以下是该程序的关键知识点: 1. **程序结构**: - 程序分为 DSEG 段和 CSEG 段,分别存储数据和代码。 - DSEG 段定义了一系列字符串常量(STR1-STR10),用于显示欢迎消息、程序介绍和操作提示。 - 数据段 (DATA) 包含变量如 SIGN1, SIGN2, NUMB, MARK, DB10 等,用于存储输入、运算符状态和错误信息。 2. **中断服务子程序 (ISRs)**: - `DISPMACROM` 宏调用用于屏幕输出,它设置 AX=9 后执行 INT 21H 命令,显示字符串。 - `CHOICEMACRO` 是一个宏定义,用于根据输入的字符判断运算符类型并赋权值,通过 CMP 和 JNE 条件转移实现。 3. **主程序流程**: - 在 `START` 段,首先调用 `CLEAR` 子程序初始化屏幕和数据。 - 然后通过 `LEADI` 和 `LEASI` 指针读取用户输入,并依次显示欢迎消息、范围提示等字符串。 - 用户输入处理在 `INPUT` 循环中,读取字符并与 'P' 或 'p' 进行比较,决定是否退出程序。 4. **错误处理**: - 程序中包含 `DISPERROR` 部分,用于显示错误信息,当用户的输入不符合预期时,会跳转到此处。 5. **输入控制**: - 通过 `CMPAL` 和 `JE`(跳跃如果条件满足)指令,检查输入字符是否为 'P' 或 'p',如果是则结束程序 (`J_SHU0`)。 这个程序设计的核心目标是教授初学者汇编语言编程的基础概念,包括数据段定义、内存管理、输入输出操作以及简单的控制流结构。通过这个实例,学生可以理解如何用汇编语言实现基本的用户交互和逻辑判断。