Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Вычислить арктангенс2 комплексного числа на ассемблере / 1 сообщений из 1, страница 1 из 1
06.02.2013, 09:28
    #38139365
iPOJO
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычислить арктангенс2 комплексного числа на ассемблере
Приветствую!

Вопрос по ассемблеру.

В одном из регистров группы XMM (128-битный регистр для операций над парами чисел блока SSE2 P4 и выше) находится комплексное число.
Мне необходимо вычислить арктангенс2 по нему, т.е. найти угол:
arg = atan(Im/Re);
Im и Re лежат в младших и старших 64 битах регистра XMM соответственно.
Какими командами это можно сделать?
Команды для нахождения аргумента для SSE2 я не нашел.

Есть идея использовать математический сопроцессор, тогда получается:

FLD (младшие 64 бита XMM0, мнимая часть)
FLD (старшие 64 бита XMM0, действительная часть)
FPATAN (какой-то 64-битный регистр)

Но тут две проблемы:
1) я не знаю какие 64 битные регистры выбрать для частей и результата и как туда загрузить эти части из XMM0
2) возможно, сопроцессор может не понять, что это тип double.

Помогите, пожалуйста, решить задачу.
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Вычислить арктангенс2 комплексного числа на ассемблере / 1 сообщений из 1, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]