Сборка для цикла -> for (i = -n; i <n; i ++) - PullRequest
1 голос
/ 17 марта 2012

Может ли кто-нибудь помочь мне написать простой пример цикла for на языке ассемблера для этого кода:

for (i = -n; i < n; ++i)
{
   ...
}

, где n! = 0 Я не могу найти ни одного примера того, как написать дляцикл, где цикл не начинается с 0. Пока у меня есть эта структура

mov ax, n
mov cx, n
neg cx

cmp cx, ax
JGE ENDFOR01 
DO01:
; output
LOOP DO01
ENDFOR01:

1 Ответ

5 голосов
/ 17 марта 2012

Рассмотрим способ «длинной руки» написать его на C:

i = -n;
loop:
  if (!(i < n))
    goto end;
  ...
  ++i;
  goto loop;
end:

Надеюсь, что это даст некоторые идеи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...