微机显示程序实验

简介:

今天要交的微机实验报告分享。

显示程序实验

一,实验目的

1. 掌握在PC机上以十六进制形式显示数据的方法。

2. 掌握部分DOS功能调用使用方法。

二,实验设备

PC微机一台

三,实验内容

一般来说,有很多程序需要显示输出提示运行的状况和结果,有的还需要将数据区中的内容显示在屏幕上。本实验要求将指定数据区的数据以十六进制数形式显示在屏幕上,并利用DOS功能调用完成一些提示信息的显示。

四,实验清单

STACK1 SEGMENT STACK ;堆栈段开始

DW 256 DUP(?)

STACK1 ENDS

DATA SEGMENT ;数据段开始

MES DB 'Press any key to exit!',0AH,0DH,0AH,0DH,'$'

MES1 DB 'Show a as hex:',0AH,0DH,'$'

SD DB 'a'

DATA ENDS

CODE SEGMENT ;代码段开始

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA ;设置DS 寄存器

MOV DS,AX

MOV DX,OFFSET MES ;取字符串首地址,显示退出提示

MOV AH,09H ;在DOS 界面显示字符串

INT 21H

MOV DX,OFFSET MES1 ;取字符串首地址,显示字符串

24

MOV AH,09H

INT 21H

MOV SI,OFFSET SD

MOV AL,DS:[SI] ;把’a’送到AL中

AND AL,0F0H ;取字节的高4位

MOV CL,4

SHR AL,CL

CMP AL,0AH ;判断是否是A以上的数

JB C2

ADD AL,07H ;大于等于A,数值加7H

C2: ADD AL,30H ;数值加30H,转换成ASCII码

MOV DL,AL

MOV AH,02H ;将转换的相应ASCII码在DOS界面下显示

INT 21H

MOV AL,DS:[SI]

AND AL,0FH ;取字节的低4位

CMP AL,0AH

JB C3

ADD AL,07H

C3: ADD AL,30H

MOV DL,AL ;显示字符

MOV AH,02H

INT 21H

KEY: MOV AH,1 ;判断是否有按键按下?

INT 16H ;(为观察运行结果,使程序有控制的退出)

JZ KEY

MOV AX,4C00H ;结束程序,退出

INT 21H

CODE ENDS

END START

四,实验结果

Press any key to exit!

Show a as hex:

61



本文转自 寂岚峰 51CTO博客,原文链接:http://blog.51cto.com/13271983/1977628,如需转载请自行联系原作者

相关文章
利用OllyDbg对程序内容进行修改实验
利用OllyDbg对程序内容进行修改实验
|
6月前
|
存储 开发工具 数据库
认识HIS系统 HIS系统的主要功能解释说明
HIS系统即医院信息系统(全称为Hospital information System) ,是指利用计算机软硬件技术和网络通信技术等现代化手段,对医院及其所属各部门的人流、物流、财流进行综合管理,对在医疗活动各阶段产生的数据进行采集、存储、处理、提取、传输、汇总,加工形成各种信息,从而为医院的整体运行提供全面的自动化管理及各种服务的信息系统。
510 5
|
6月前
|
算法 数据挖掘 Python
python图工具中基于随机块模型动态网络社团检测
python图工具中基于随机块模型动态网络社团检测
|
6月前
|
XML 算法 C语言
【C/C++ 静态代码检查工具 Cppcheck 】Cppcheck 检测器列表和检查规则大全一览
【C/C++ 静态代码检查工具 Cppcheck 】Cppcheck 检测器列表和检查规则大全一览
613 0
|
6月前
|
网络协议 Linux 网络安全
实验内容参考
实验内容参考
36 0
|
编译器 C++ Windows
程序环境的内容
程序环境的内容
|
存储 程序员 图形学
Win知识 - 程序是怎样跑起来的——文字及图片的显示机制
Win知识 - 程序是怎样跑起来的——文字及图片的显示机制
220 0
Win知识 - 程序是怎样跑起来的——文字及图片的显示机制
|
Python
Python 技术篇-在cmd命令提示行里模拟动态下载进度条实例演示,cmd清除日志、打印动态内容方法
Python 技术篇-在cmd命令提示行里模拟动态下载进度条实例演示,cmd清除日志、打印动态内容方法
534 0
Python 技术篇-在cmd命令提示行里模拟动态下载进度条实例演示,cmd清除日志、打印动态内容方法
|
XML 测试技术 数据安全/隐私保护
VS2010测试功能之旅:编码的“.NET研究”UI测试(2)-操作动作的录制原理(上)
  回顾    在之前我们介绍了如何用VS2010的UI测试功能创建一个简单的示例,大致描述了如何使用编码的UI测试进行录制和回放,在这章会着重描述VS2010是如何录制操作,并且生成代码,以及初步介绍如何通过自己写代码的方式进行测试。
1079 0
|
测试技术 数据安全/隐私保护
VS2010测试功能之旅:编码的UI测试(2)-操作“.NET研究”动作的录制原理(下)
  回顾   在本章上部分介绍了操作动作的录制原理,描述了操作动作是如何录制,UIMap.uitest和UIMap.Designer.cs的代码如何生成,以及他们的结构。在这个部分,将着重说明如何通过修改UIMap1.uitest文件的操作动作部分的代码来控制UIMap1.Designer.cs操作动作部分代码的生成,实现第一种方式的自定义编码。
944 0
下一篇
无影云桌面