8085微处理器中两个8位数的除法程序


这里我们将看到一个8085程序。这个程序将使用8085微处理器将两个8位数相除。

问题陈述

编写一个8085汇编语言程序,将两个8位数相除,并将结果存储在8020H和8021H位置。

讨论

8085没有除法运算。要得到除法的结果,我们应该使用重复减法的方法。

使用此程序,我们将得到商和余数。8020H将保存商,8021H将保存余数。

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

输入

被除数:0EH

除数:04H

商将为3,余数将为2

流程图

程序

地址
十六进制代码
标签
指令
注释
F000
21, 0E, 00
START
LXI H,0CH
将8位被除数加载到HL寄存器对中
F003
06, 04


MVI B,04H
将除数加载到B中以执行num1 / num2
F005
0E, 08


MVI C, 08
初始化计数器
F007
29
UP
DAD H
左移1位 HL = HL + HL
F008
7C


MOV A, H
将H加载到A中
F009
90


SUB B
执行 A = A – B
F00A
DA, 0F, F0


JC DOWN
如果MSB<除数,则左移
F00D
67


MOV H,A
如果MSB>除数,则将A的当前值存储到H中
F00E
2C


INR L
跟踪商
F00F
0D
DOWN
DCR C
递减计数器
F010
C2, 07, F0


JNZ UP
如果未耗尽,则再次执行
F013
22, 20, 80


SHLD 8020
将结果存储在8020 H中
F016
76


HLT
停止

 

输出

地址
数据


8020
03
8021
02


更新于:2019年10月9日

2K+ 次浏览

启动你的职业生涯

完成课程获得认证

开始学习
广告