8085程序:累加存储在寄存器中的三个16位数


在这个程序中,我们将学习如何将存储在寄存器对中的三个16位数相加。

问题陈述

编写8085汇编语言程序,将存储在寄存器对BC、DE和HL中的三个16位数相加。将结果存储在DE寄存器对中。

讨论

在这个程序中,我们将16位数存储到BC、DE和HL寄存器对中。我们有DAD D指令,它可以将HL和DE寄存器对相加,并将结果存储到HL寄存器对中。之后将BC复制到DE,然后再次执行DAD D进行相加。最后使用XCHG指令将结果存储到DE寄存器对中。

这里我们将0502H + 1211H + 2133H = 3846H相加

Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.

输入

寄存器
数据
BC
0502
DE
1211
HL
2133

流程图

 

程序

地址
十六进制代码
标签
助记符
注释
F000
01, 02, 05
 
LXI B,0502H
 
F003
11, 11, 12
 
LXI D,1211H
 
F006
21, 33, 21
 
LXI H,2133H
 
F009
19
 
DAD D
将DE和HL相加,结果存储到HL
F00A
50
 
MOV D,B
将B复制到D
F00B
59
 
MOV E,C
将C复制到E
F00C
19
 
DAD D
将DE和HL(实际上是BC)相加,结果存储到HL
F00D
EB
 
XCHG
交换DE和HL
F00E
76
 
HLT
结束程序

输出

寄存器
数据
DE
3846

更新于:2019年7月30日

2K+ 浏览量

启动你的职业生涯

完成课程获得认证

开始学习
广告