最新微机原理实验求最大值和最小值.docx
《最新微机原理实验求最大值和最小值.docx》由会员分享,可在线阅读,更多相关《最新微机原理实验求最大值和最小值.docx(10页珍藏版)》请在冰豆网上搜索。
![最新微机原理实验求最大值和最小值.docx](https://file1.bdocx.com/fileroot1/2023-2/8/caa12be6-2a65-4fcf-b398-074c71a1664e/caa12be6-2a65-4fcf-b398-074c71a1664e1.gif)
最新微机原理实验求最大值和最小值
微机原理实验求最大值和最小值
实验五求最大值和最小值
实验日期:
2012.10.29指导教师:
刘波星期:
一节次:
5.6实验课时:
2
姓名:
胡敏学号:
10168150专业、班级:
通信2班得分:
1、实验目的
1、学习子程序的定义和调用方法。
2、掌握子程序设计、调试。
2、实验内容
对内存中给定的几个无符号字节数,求其最大值和最小值。
3、实验步骤
在数据段偏移地址为4000H起始地址的存放8个数字
4、实验运行结果:
5、思考题解答
1、程序运行后,最大数和最小数分别存放在何处?
试解释X1和X2标号所在的程序段含义
2、程序开始时,为什么把第一个数既放到BH中,又放到BL中?
3、按如下要求编写程序:
4、设4000H单元开始有10个数,编程计算这十个数的平均值(存放在DH中),并统计这十个数中,大于平均值的个数(存放在DL中)。
找出这十个数的最大值和最小值(存在在BH和BL中)
1、BH、BL、X1处比较AL,BL的值,BL不低于AL的值就跳到X2处,如果BL的值大于或者等于AL的值就将AL的值赋给BL;X2跳到CON2处继续循环
2、第一个数既有肯能是最大数也有可能是最小数,所以开始把第一个数即当最大值也当最小值
3、START0:
MOVSI,4000H
MOVCX,0008
MOVDX,0
MAXMIN:
MOVBH,[SI]
MOVBL,BH
CON1:
LODSB
ADDDL,AL
ADCDH,0
CMPAL,BH
JNAX1
MOVBH,AL
JMPX2
X1:
CMPAL,BL
JNBX2
MOVBL,AL
X2:
LOOPCON1
MOVCX,8
MOVAX,DX
MOVDX,0
DIVCX
MOVDH,AL
MOVSI,4000H
MOVDL,0
CON2:
LODSB
CMPAL,DH
JNAX3
ADDDL,1
X3:
LOOPCON2
MOVAH,4CH
INT21H