![]() |
|
|
![]()
|
|
| m60 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 5.11.2006 Репутация: нет Всего: нет |
Подскажите:
как выполнить переход типа jmp, - например 3 раза, только Jcc не предлогать. |
|||
|
||||
| digs |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 14.10.2006 Репутация: нет Всего: 1 |
Loop
|
|||
|
||||
| dumb |
|
|||
![]() sceloglauxalbifacies ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2929 Регистрация: 16.6.2006 Репутация: 7 Всего: 158 |
||||
|
||||
| m60 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 5.11.2006 Репутация: нет Всего: нет |
Нет Jcc же использует флаги, а мне надо чтоб без них, просто выполнился нужное количество раз, или так незя?? |
|||
|
||||
| digs |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 14.10.2006 Репутация: нет Всего: 1 |
Можно использовать RET
перед началом выполнения забиваешь в стек адрес ячейки после команды RET, потом нужное количество раз адрес перехода |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 1 Всего: 454 |
После выполнения перехода точка выполнения сместится, и второй переход в той же точке не получится.
Постарайтесь все-таки объяснить задачу. Желательно привести или кусок кода, или хотя бы описание логики этого кода. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| m60 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 5.11.2006 Репутация: нет Всего: нет |
Кода как такового нет, асм я тока учу, и вот вопрос собственно возник, как выполнить нужный участок кода, нужное количество раз не прибегая к операторам сравнения, и условия.
Например: start: .... .... call function jmp start ; как произвести безусловный переход нужное количество раз типа jmp? если можно бы было написать jmp (3) - проблем бы не было.. |
|||
|
||||
| anwe |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 748 Регистрация: 2.9.2006 Репутация: 8 Всего: 23 |
А чем тебе loop не подходит?
|
|||
|
||||
| m60 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 5.11.2006 Репутация: нет Всего: нет |
loop же тоже сравнивает cx, а если у меня сх уже используется? |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 1 Всего: 454 |
Либо не используй, либо сохраняй. И вообще - почти каждый регистр имеет свое собственное специализированное назначение (скажем СХ - счетчик), и использолвать его для иных целей нужно лишь в особых случаях, когда любое иное решение (скажем использование стека или переменной в памяти) еще хуже. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| m60 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 5.11.2006 Репутация: нет Всего: нет |
Akina спс. за заметку..
close topic. |
|||
|
||||
![]()
|
| Правила форума "Asm для начинающих" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Asm для начинающих | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |