8085汇编语言程序,用于查找数组中的最大数


在本程序中,我们将了解如何使用8085从一段字节中找到最大数。

问题陈述

编写8085汇编语言程序,用于从一段字节中找到最大数。

讨论

在本程序中,数据存储在8001H开始的地址处。8000H包含块的大小。执行此程序后,它将返回最大数并将其存储在9000H地址处。

逻辑很简单,我们将第一个数字存储到寄存器B中以开始工作。在每次迭代中,我们从内存中获取数字并将其存储到寄存器A中。然后,如果B < A,则我们只需将B的值更新为A,否则继续进行下一次迭代。因此,我们可以找到一段字节中的最小数。

输入

地址数据
......
800006
800155
800222
800344
800411
800533
800666
......


流程图

程序

地址十六进制代码标签助记符注释
F00021, 00, 80
LXI H,8000H指向获取数组大小的地址
F0034E
MOV C,M获取数组的大小
F00423
INX H   指向实际数组的地址
F00546
MOV B,M将第一个数字加载到B中
F0060D
DCR C   C减1
F00723LOOPINX H   指向下一个位置
F0087E
MOV A,M将下一个数字从内存获取到累加器
F009B8
CMP B   比较累加器和B
F00ADA, 0E, F0
JC SKIP如果B > A,则跳过
F00D47
MOV B,A如果CY为0,则更新B
F00E0DSKIPDCR C   C减1
F00FC2, 07, F0
JNZ LOOP    当计数不为0时,跳转到LOOP
F01221, 00, 90
LXI H,9000H指向目标地址
F01570
MOV M,B存储最小数
F01676
HLT终止程序


输出

地址数据
......
900066
......

更新于: 2019年7月30日

3K+ 浏览量

启动你的职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.