8085程序用于乘以两个8位数


在本程序中,我们将了解如何使用 8085 微处理器乘以两个 8 位数。

问题陈述

编写 8085 汇编语言程序,将存储在内存位置的两个 8 位数相乘,并将 16 位结果存储到内存中。

讨论

8085 没有乘法运算。要获得乘法的结果,我们应该使用重复加法的方法。

两个 8 位数相乘后,可能会生成 1 字节或 2 字节的数字,因此我们使用两个寄存器来保存结果。

我们将数据保存在 8000H 和 8001H 位置。结果存储在 8050H 和 8051H 位置。

输入

地址
数据
.
.
.
.
.
.
8000
DC
8001
AC
.
.
.
.
.
.

流程图

程序

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


LXI H,8000H
加载第一个操作数地址
F003
46


MOV B, M
将第一个操作数存储到 B
F004
23


INX H
增加 HL 对
F005
AF


XRA A
清除累加器
F006
4F


MOV C, A
将 00H 存储在寄存器 C 中
F007
86
LOOP
ADD M
将内存元素与累加器相加
F008
D2, 0C, F0


JNC SKIP
当进位标志为 0 时,跳过下一个任务
F00B
0C


INR C
增加 C,当进位为 1 时
F00C
05
SKIP
DCR B
减少 B 寄存器
F00D
C2,07, F0


JNZ LOOP
当 Z 标志不为 1 时跳转到循环
F010
21,50, 80


LXI H,8050H
加载目标地址
F013
71


MOV M, C
将 C 寄存器内容存储到内存中
F014
23


INX H
增加 HL 对
F015
77


MOV M, A
将累加器内容存储到内存中
F016
76


HLT
终止程序


输出

地址
数据
.
.
.
.
.
.
8050
93
8051
D0
.
.
.
.
.
.


更新于: 2020-06-27

767 次查看

启动您的 职业生涯

通过完成课程获得认证

开始
广告