Миландр

Ключевым подразделением нашей компании
является Центр Проектирования интегральных микросхем
Текущее время: 2020-май-28 15:40

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: Реализация декрементных циклов
СообщениеДобавлено: 2014-мар-28 13:56 
Не в сети
Аватара пользователя

Зарегистрирован: 2013-июн-21 15:27
Сообщения: 106
Организация: АО "НПО НИИИП-НЗиК"
Откуда: Новосибирск
В среде CodeMaster-ARM декрементный цикл вида
i = cnt;
do
{
...
} while (--i);

реализован примерно так:
MOV Ri, #cnt
loop:
...
SUBS Ri, Ri, #1
CMP Ri, #0
BNE loop

Зачем в данном случае нужна команда CMP? Ведь командой SUBS уже установлены необходимые флаги. В реализации декрементных циклов вида
for (i = cnt; i > 0; i--) {...}
также имеется команда CMP Ri, #0 между SUBS Ri, Ri, #1 и BNE loop и я тоже не понимаю, зачем она там нужна?

_________________
Странник


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти: 

Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB