X86 emu8086中的斐波那契级数

X86 emu8086中的斐波那契级数,x86,X86,我的微处理器实验室工作要求我 编写一个代码,将前二十个“斐波那契数”打印到任何寄存器。 (您不必将这些数字打印到屏幕上,并且必须使用循环结构) 我在emu8086 emulator中编写了以下简单代码: name "fibo-series" org 100h mov ax, 1 mov bx, 1 mov cx, 9 fibo: add ax, bx add bx, ax loop fibo ret 而且效果很好,我的意思是它能打印出我想要的一切。但当我在互联网上看到

我的微处理器实验室工作要求我

编写一个代码,将前二十个“斐波那契数”打印到任何寄存器。 (您不必将这些数字打印到屏幕上,并且必须使用循环结构)

我在emu8086 emulator中编写了以下简单代码:

name "fibo-series"

org 100h

mov ax, 1
mov bx, 1


mov cx, 9

fibo: add ax, bx
      add bx, ax
loop fibo


ret

而且效果很好,我的意思是它能打印出我想要的一切。但当我在互联网上看到其他斐波那契数列的例子时,代码样本比我的要大得多。我做错什么了吗?我是说这对我的处境够了吗?我想听听你的意见。谢谢。

你没有做错什么。但大多数程序都比较大,因为它们想打印(如屏幕)或存储(磁盘或阵列)找到的值。大多数人不看登记簿。不过,我认为这个程序完全符合作业要求。很多时候斐波那契被用作一个例子来教递归。在我看来,这是一个糟糕的例子,因为迭代计算要快得多。递归实现需要“记忆”来缓存循环值,使其与简单循环处于相同的O(n)复杂度类中。很好地完成了编写代码,不吸!我刚才写了一个答案。文本有点凌乱和冗长,但代码在我看来很好,可能会让人读起来很有趣:)