| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Asm для начинающих > Как обменять данные между 2 регистрами? |
| Автор: froggy82 25.9.2006, 17:45 |
| Собственно вопрос: Есть два регистра EAX и EBX как обменять данные между ними не применяя команды push? Заранее благадарю, очень важно, на носу контрольная. |
| Автор: Sartorius 25.9.2006, 17:48 |
| XCHG EAX, EBX |
| Автор: froggy82 25.9.2006, 17:58 | ||
Нее в том то и дело, препод сказал использовать команды сложения и вычитания |
| Автор: Sartorius 25.9.2006, 18:17 | ||
|
| Автор: Akina 25.9.2006, 19:02 | ||
МОжно вместо xor использовать sub |
| Автор: Sartorius 25.9.2006, 19:43 | ||||||
че-то не получается sub-ами .... или я где - то ошибся? |
| Автор: Akina 25.9.2006, 23:18 |
| Sartorius, да, насчет sub я погорячился. |
| Автор: froggy82 28.9.2006, 14:08 |
| А вот вопрос собственно такой пример пройдет, используя переменную и mov? mov i, EAX mov EAX, EBX mov EBX, i |
| Автор: PatriotRus 28.9.2006, 17:53 |
| froggy82, тема то пройдёт, но если надо обменяться между регистрами, зачем вообще нужна переменная? |
| Автор: froggy82 29.9.2006, 13:15 | ||
По заданию нельзя использовать другие регистры а только команды mov или арифметические... Завтра узнаю... |
| Автор: Akina 29.9.2006, 16:16 |
| froggy82, XOR можно? ну так используй, see above. |
| Автор: PatriotRus 29.9.2006, 20:35 |
| Посмотрел бы я на того, кто будет обмениваться между 2 регистрами при помощи арифметики!!!! |
| Автор: froggy82 2.10.2006, 10:46 | ||
А вот собственно и ответ: add EBX, EAX sub EAX, EBX neg EAX sub EBX, EAX использовали простейшие арифметические команды сложения, вычитания... Спасибо за правильный путь Sartorius |