【发布时间】:2013-03-29 21:49:35
【问题描述】:
问题想从输入循环遍历一个小数,直到剩下的唯一数字是一。但是,一旦第一个循环达到 0,它应该像这样从第一个数字负 1 再次循环,
Input decimal for loop: 4
Your loop result is: 4321 321 21 1
或者,
Input decimal for loop: 6
Your loop result is: 654321 54321 4321 321 21 1
我现在有,
DoWhileLoop:
DoWhileBody:
stdout.put( " I => ", I );
dec( I );
DoWhileTermination:
cmp( I, 0 );
jng DoWhileLoopDone;
jmp DoWhileLoopBody;
DoWhileLoopDone:
如果输入为 4 则打印,
I => 4 I => 3 I => 2 I => 1
我已尝试在内部嵌套 for 循环以获得所需的连续性,但我不知道如何在不使计算机崩溃的情况下增加它...帮助?
【问题讨论】:
-
你肯定需要嵌套循环。外部循环应该减少你的计数器,你的内部循环应该使用一个临时计数器从外部计数器值倒数到一。伪代码:while (co > 0) ci = co; while (ci > 0) 输出 c1; c1--; endwhile 输出空间;合作——;结束。
-
谢谢,我需要的是了解如何在变量之间传递值并习惯汇编中的“嵌套”循环语法。
标签: loops assembly count continuous hla