8086程序计算阶乘
在这个程序中,我们将学习如何计算一个数的阶乘。
问题陈述
编写8086汇编语言程序,计算存储在内存偏移地址500处的数的阶乘。将结果存储在内存偏移地址600和601处。
讨论
要计算一个数n的阶乘,我们必须重复地将从1到n的数字相乘。我们可以通过乘以该数字并将其递减直到达到1来做到这一点。所以序列将是
在这个程序中,我们将数字放入计数器寄存器,然后递减并相乘。如果结果超过16位范围,则可以在寄存器DX和AX中找到32位结果。之后,我们将结果存储到内存偏移地址600和601。
输入
地址 | 数据 |
---|---|
… | … |
500 | 06 |
… | … |
流程图
程序
输出
地址 | 数据 |
---|---|
… | … |
600 | D0 |
601 | 02 |
… | … |
广告