第一范文网 - 专业文章范例文档资料分享平台

北邮微机原理软件实验报告

来源:用户分享 时间:2025/5/20 22:06:54 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

.

位判断为负数或0。

方法2:用cmp指令将该数与0相比,判断标志寄存器。SF⊕OF=0,为正数或0。否则为负数。

实验三 代码转换程序设计

一.实验目的

1.掌握几种最基本的代码转换方法。 2.运用子程序进行程序设计。 二.实验内容

1.从键盘上输入若干两位十进制数,寻找其中的最小值,然后在屏幕上显示出来。 2.两个十进制数之间的分隔符,输入结束标志自定,但要在报告中说明。 3.对输入要有检错措施,以防止非法字符输入,并有适当的提示。

4.将整个程序分解为若干模块,分别用子程序实现.在报告中要给出模块层次图。 三.模块层次图及流程图

输入数据 排序,显示 START

存储并显示 检错 十进制转换 排序 显示 Word 资料

Word 资料

.

开始 输入数据 错 检错 对 N 回车 Y B,BX,AL初始化 AL中ASCII码值转换为对BX指向的数小于 此数赋值 与B比较 给B 大于 BX=BX+1 比较结束 N Y 输出最小数 结束 .

四.源代码

DATA SEGMENT A DB 100 DUP (0) B DB 100,0,'$'

STRING DB 0DH,0AH,'ERROR INPUT ',0DH,0AH, '$' STRING1 DB 0DH,0AH,'the min number is ',0DH,0AH, '$' DATA ENDS

STACK SEGMENT STACK

DW 50 DUP(?)

STACK ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA,SS:STACK INPUT PROC ;子程序 PUSH AX ;保护寄存器内容 PUSH BX ;保护寄存器内容 PUSH CX ;保护寄存器内容 PUSH DX ;保护寄存器内容

STAR: MOV CX,0 ;开始,表示输入的数是否可以构成两位十进制数

MOV BX,OFFSET A

AGAIN: MOV AH,01H ;输入 INT 21H

Word 资料

.

CMP AL,30H ;比较是否合法 JB SHOW CMP AL,39H JA SHOW

MOV [BX],AL ;存储,判断是否一个字,不是继续输入,否则向下运行 INC BX INC CX AND CX,1

JNZ AGAIN ;CX若为0,输入了两个数,可以构成一个两位十进制数

MOV CX,0 ; 判断下一输入字符 MOV AH,01H ; 输入 INT 21H MOV [BX],AL

INC BX

CMP AL,20H ;判断是否空格:是,继续输入;否,判断是否为回车

JZ AGAIN

CMP AL,0DH ; 判断是否为回车

JNZ SHOW ; 都不是,就输入错误,重新输入 JMP OKEY ; 是回车,就输入结束。否则结束子程序调

Word 资料

搜索更多关于: 北邮微机原理软件实验报告 的文档
北邮微机原理软件实验报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c4juy28vr9j6msol1o4w75dq8n1si8z00uad_2.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top