8085程序:加N个8位数


在本程序中,我们将了解如何使用 8085 微处理器添加数据块。

问题陈述

编写 8085 汇编语言程序,以添加 N 个 1 字节数字。N 的值已提供。

讨论

在这个问题中,我们使用地址 8000H 来保存块的长度。主块从地址 8010H 开始存储。我们将结果存储在地址 9000H 和 9001H。9000H 保存低字节,9001H 保存高字节。

我们反复从内存中获取数字,然后将其与累加器相加,并在进位标志设置时增加寄存器 E 的内容。最初,E 被清零。

输入

地址
数据
.
.
.
.
.
.
8000
08
.
.
.
.
.
.
8010
AF
8011
2E
8012
7C
8013
81
8014
2C
8015
BF
8016
FB
8017
1C
.
.
.
.
.
.

流程图

程序

地址
十六进制代码
标签
助记符
注释
F000
21, 00, 80


LXI H, 8000H
加载地址以获取数字的计数
F003
4E


MOV C, M
将计数值加载到 C 中
F004
21,10, 80


LXI H, 8010H
将 HL 加载到起始地址
F007
AF


XRA A
清零累加器
F008
5F


MOV E, A
也清零 E 寄存器
F009
86
LOOP
ADD M
将内存内容与累加器相加
F00A
D2, 0E, F0


JNC SKIP
当进位为假时,跳过下一个任务
F00D
1C


INR E
增加 E,当 C 标志被设置时
F00E
0D
SKIP
DCR C
将 C 寄存器减 1
F00F
23


INX H
指向下一个位置
F010
C2, 09, F0


JNZ LOOP
当零为假时,转到 LOOP
F013
21, 00, 90


LXIH, 9000H
加载地址以存储结果
F016
77


MOV M, A
保存累加器内容
F017
23


INX H
增加 HL 对
F018
73


MOV M, E
存储进位
F019
76


HLT
终止程序

输出

地址
数据
.
.
.
.
.
.
9000
DC
9001
03
.
.
.
.
.
.

更新于: 2020-06-26

7K+ 浏览量

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告