8085程序查找数字的n次幂


在本程序中,我们将了解如何查找数字的n次幂。

问题陈述

编写8085汇编语言程序以查找数字的n次幂。底数存储在8000H位置,指数存储在8001H。将结果存储在8002H。

讨论

在8085中,我们不能直接执行乘法运算。这里我们正在编写一个子程序,通过重复加法来执行乘法。要执行数字的n次幂,我们必须将数字乘以n次。n值用作计数器。如果底数为03H,指数为05H,则结果为F3H (243D)

输入

地址
数据


8000
03
8001
05

流程图

 

程序

地址
十六进制代码
标签
助记符
注释
F000
21, 00, 80
 
LXI H,8000H
初始化HL对
F003
46
 
MOV B,M
将底数取到B
F004
23
 
INX H
指向下一个位置
F005
4E
 
MOV C,M
将指数取到C
F006
16, 01
 
MVI D, 01H
用01H初始化D
F008
CD, 12, F0
LOOP
CALL MUL
调用子程序进行乘法
F00B
0D
 
DCR C
将C减1
F00C
C2, 08, F0
 
JNZ LOOP
跳转到Loop
F00F
23
 
INX H
指向下一个位置
F010
72
 
MOV M,D
将D存储到内存中
F011
76
 
HLT
终止程序
F012
58
MUL
MOV E,B
将B加载到E
F013
AF
 
XRA A
清除累加器以存储结果
F014
82
ML
ADD D
将D加到A
F015
1D
 
DCR E
递减E
F016
C2, 12, F0
 
JNZ ML
如果Z = 0,则跳转到ML
F019
57
 
MOV D,A
将A的内容传输到D
F01A
C9
 
RET
返回结果

输出

地址
数据
8002
F3

更新于: 2019年7月30日

691 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.