汇编语言程序入门实验一:在dos下对用户输入作出应答

2024-05-04 13:32

本文主要是介绍汇编语言程序入门实验一:在dos下对用户输入作出应答,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

汇编语言程序入门实验一:在dos下对用户输入作出应答

1,背景

 

          成功预测了今天要上计算机操作系统上机实验课,昨天预习后,今天的两个上机实验做得很成功。但是也有一些问题。问题1:学校的系统目前是windows XP,不是windows 7。问题2:学校用的编译器是masm,不是masm32。这两个问题可以归结为1个问题,即跟不上现在主流。至于在dos环境下汇编语言程序设计入门(输出hello world)和masm32的下载、安装与使用,我就不说了,详情请见链接:http://blog.csdn.net/u010043538/article/details/12720447。现在以我自己为例:操作系统:win 7。汇编工具:masm32,我的安装在c盘里。

 

2,具体实验问题

 

 题目,键盘字符操作
    在交互程序中常常需要用户对一个提示作出应答,或通过输入一个字母或数字对菜单的各项进行选择,这是就需要用到INT 21H的单个字符输入功能。请编写一汇编语言程序,功能要求:在程序运行过程中,若通过键盘输入Y,则程序转入标号为YES的程序段显示字符串“YES”;若输入N,则程序转入标号为NO的程序段显示字符串“NO”;输入其它字符,系统无反应;输入字符X,则程序退出。
    试根据上述要求,完成下面的程序

 

3,具体程序

 

     看过本文1,背景中的链接博客后,读者应该知道汇编语言的编写,编译与运行了。因为用记事本写,不具有自动换行与变色等功能,建议读者下载个Notepad++工具,是微软所做的代码编辑器,就像扩大版的记事本功能,类似于word界面。在Notepad++提供了各种语言的自动换行与变色等功能。下载链接为:http://www.duote.com/soft/10265.html

下载后,安装运行。在语言菜单中选择:Assembly。即可运行。下附具体代码截图:

 

 

 

4,备注

 

     自己是个新手,今天是新学期开计算机操作系统上机实验课第一天。如有不足,欢迎指出,不胜感激。

    在此再附上代码吧,方便读者复制:

// @author sunkun
CODE SEGMENT
ASSUME CS:CODE,DS:CODE
ORG 100H
START:JMP GET_KEY
YESSTR DB 'YES','$'
NOSTR DB 'NO','$'
GET_KEY:MOV AH,01HINT 21HCMP AL,'Y'JZ YESCMP AL,'N'JZ NOCMP AL,'X'JZ DONEJMP GET_KEY
YES:  MOV AX,CSMOV DS,AXMOV DX,OFFSET YESSTRMOV AH,09HINT 21HJMP GET_KEY
NO:   MOV AX,CSMOV DS,AXMOV DX,OFFSET NOSTRMOV AH,09HINT 21HJMP GET_KEY
DONE: MOV AH,4CHINT 21H
CODE ENDSEND START


 

 

这篇关于汇编语言程序入门实验一:在dos下对用户输入作出应答的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/959311

相关文章

Python中模块graphviz使用入门

《Python中模块graphviz使用入门》graphviz是一个用于创建和操作图形的Python库,本文主要介绍了Python中模块graphviz使用入门,具有一定的参考价值,感兴趣的可以了解一... 目录1.安装2. 基本用法2.1 输出图像格式2.2 图像style设置2.3 属性2.4 子图和聚

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

SpringBoot UserAgentUtils获取用户浏览器的用法

《SpringBootUserAgentUtils获取用户浏览器的用法》UserAgentUtils是于处理用户代理(User-Agent)字符串的工具类,一般用于解析和处理浏览器、操作系统以及设备... 目录介绍效果图依赖封装客户端工具封装IP工具实体类获取设备信息入库介绍UserAgentUtils

Mysql用户授权(GRANT)语法及示例解读

《Mysql用户授权(GRANT)语法及示例解读》:本文主要介绍Mysql用户授权(GRANT)语法及示例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql用户授权(GRANT)语法授予用户权限语法GRANT语句中的<权限类型>的使用WITH GRANT

将Java程序打包成EXE文件的实现方式

《将Java程序打包成EXE文件的实现方式》:本文主要介绍将Java程序打包成EXE文件的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录如何将Java程序编程打包成EXE文件1.准备Java程序2.生成JAR包3.选择并安装打包工具4.配置Launch4

Java程序进程起来了但是不打印日志的原因分析

《Java程序进程起来了但是不打印日志的原因分析》:本文主要介绍Java程序进程起来了但是不打印日志的原因分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java程序进程起来了但是不打印日志的原因1、日志配置问题2、日志文件权限问题3、日志文件路径问题4、程序

SpringBoot实现微信小程序支付功能

《SpringBoot实现微信小程序支付功能》小程序支付功能已成为众多应用的核心需求之一,本文主要介绍了SpringBoot实现微信小程序支付功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作... 目录一、引言二、准备工作(一)微信支付商户平台配置(二)Spring Boot项目搭建(三)配置文件

使用Python实现一键隐藏屏幕并锁定输入

《使用Python实现一键隐藏屏幕并锁定输入》本文主要介绍了使用Python编写一个一键隐藏屏幕并锁定输入的黑科技程序,能够在指定热键触发后立即遮挡屏幕,并禁止一切键盘鼠标输入,这样就再也不用担心自己... 目录1. 概述2. 功能亮点3.代码实现4.使用方法5. 展示效果6. 代码优化与拓展7. 总结1.

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

mysql删除无用用户的方法实现

《mysql删除无用用户的方法实现》本文主要介绍了mysql删除无用用户的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 1、删除不用的账户(1) 查看当前已存在账户mysql> select user,host,pa