0 / 0 / 0
Регистрация: 14.11.2013
Сообщений: 17
|
|
1 | |
Обмен значений двух четырехбайтовых переменных без использования xchg01.02.2014, 01:11. Показов 2740. Ответов 5
Метки нет (Все метки)
Добрый вечер!
Подскажите, пожалуйста, как можно реализовать обмен значений двух четырехбайтовых переменных без использования xchg? Спасибо!
0
|
01.02.2014, 01:11 | |
Ответы с готовыми решениями:
5
Обмен значений двух переменных без использования дополнительной переменной Обмен значениями двух переменных А и В без использования вспомогательной переменной Нужно реализовать обмен данными переменных между C# и PHP без использования сервера Обмен значений двух переменных |
Эксперт быдлокодинга
2091 / 525 / 69
Регистрация: 04.11.2010
Сообщений: 1,310
|
||||||
01.02.2014, 01:35 | 2 | |||||
Сообщение было отмечено tezaurismosis как решение
Решение
FASM
1
|
6770 / 2739 / 384
Регистрация: 17.02.2013
Сообщений: 4,048
|
||||||
01.02.2014, 02:58 | 3 | |||||
Сообщение было отмечено tezaurismosis как решение
Решение
То-же самое, но с использованием одного регистра :
1
|
Ушел с форума
16281 / 7605 / 1066
Регистрация: 11.11.2010
Сообщений: 13,618
|
||||||||||||||||
01.02.2014, 05:08 | 4 | |||||||||||||||
то же самое с использованием стековых команд
PS использование нескольких команд XOR вместо команды XCHG при одинаковом содержимом [Per_1] и [Per_2] может привести к обнулению обеих переменных, поэтому желательно перед обменом проверить их содержимое на равенство и если равны, то отказаться от обмена
1
|
6770 / 2739 / 384
Регистрация: 17.02.2013
Сообщений: 4,048
|
|
01.02.2014, 05:38 | 5 |
Сообщение было отмечено Mikl___ как решение
Решение
Это не так. Пусть Per_1 = Per_2. Тогда
mov EAX,[Per_1] xor EAX,[Per_2] ; даст в регистре EAX ноль и xor [Per_1],EAX ; не изменит Per_1 xor [Per_2],EAX ; не изменит Per_2
2
|
Ушел с форума
16281 / 7605 / 1066
Регистрация: 11.11.2010
Сообщений: 13,618
|
||||||
01.02.2014, 05:54 | 6 | |||||
1
|
01.02.2014, 05:54 | |
01.02.2014, 05:54 | |
Помогаю со студенческими работами здесь
6
Обмен значений двух целочисленных переменных Обмен значений двух переменных типа char Обмен значений двух переменных типа char Обмен значений соседних пар символов файла местами (без использования дополнительных контейнеров) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |