0
문제는 입력에서 소수점까지 하나의 숫자 만 반복 될 때까지 루프를 반복하려고합니다. 첫 번째 루프는 0에 도달하면 그러나, 첫 번째 숫자를 뺀 다음과 같습니다 : 1부터 다시 반복HLA 상위 레벨 어셈블리 연속 루프
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:
을 한 beging한다 입력 값은 4,
I => 4 I => 3 I => 2 I => 1
중첩 된 루프를 사용하여 연속성을 얻으려고 시도했지만 내 컴퓨터를 손상시키지 않고 증가시키는 방법을 모르지만 ... 도움이 필요합니까?
확실히 중첩 된 루프가 필요합니다. 외부 루프는 카운터를 감소시키고 내부 루프는 외부 카운터 값에서 하나까지 카운트하기 위해 임시 카운터를 사용해야합니다. 의사 코드 : while (co> 0) ci = co; (ci> 0)은 c1을 출력한다; c1--; 최종 출력 공간; co--; 끝내. –
감사합니다. 필요한 것은 변수간에 값을 전달하고 어셈블리에서 "중첩 된"루프 구문에 익숙해지는 방법에 대한 감각이었습니다. –