Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.04.2012, 22:20   #1
kypck
Пользователь
 
Регистрация: 23.10.2011
Сообщений: 35
По умолчанию Конвертация single float в double float

Нашел команду cvtss2sd которая делает то, что мне нужно, но компилятор masm32 ругается на нее. Пишет "syntax error:xmm"

Код:
.data
m dd 4 dup(?)
..............................
.code
cvtss2sd xmm(0), m[eax]
movss m[eax], xmm(0)
Что не так? Либо если есть какой-либо аналог этой команды, буду рад
kypck вне форума Ответить с цитированием
Старый 22.04.2012, 22:54   #2
f.hump
C/C++, Asm
Участник клуба
 
Аватар для f.hump
 
Регистрация: 02.03.2010
Сообщений: 1,323
По умолчанию

Код:
CVTSS2SD xmm0, [m]
MOVSD QWORD PTR [m], xmm0
ну, или

Код:
FLD DWORD PTR [m]
FSTP QWORD PTR [m]

Последний раз редактировалось f.hump; 22.04.2012 в 23:00.
f.hump вне форума Ответить с цитированием
Старый 22.04.2012, 23:07   #3
kypck
Пользователь
 
Регистрация: 23.10.2011
Сообщений: 35
По умолчанию

Цитата:
Сообщение от f.hump Посмотреть сообщение
Код:
CVTSS2SD xmm0, [m]
MOVSD QWORD PTR [m], xmm0
ну, или

Код:
FLD DWORD PTR [m]
FSTP QWORD PTR [m]
В первом случае при компиляции выдает ту же ошибку, а второй работает, спасибо. Но все же хочется разобратся в чем дело и почему не работает SSE2 команда

Последний раз редактировалось kypck; 22.04.2012 в 23:11.
kypck вне форума Ответить с цитированием
Старый 22.04.2012, 23:12   #4
f.hump
C/C++, Asm
Участник клуба
 
Аватар для f.hump
 
Регистрация: 02.03.2010
Сообщений: 1,323
По умолчанию

в двух случаях не может быть, разве что используете xmm где-то еще и не добавили директиву .xmm
f.hump вне форума Ответить с цитированием
Старый 22.04.2012, 23:23   #5
kypck
Пользователь
 
Регистрация: 23.10.2011
Сообщений: 35
По умолчанию

Цитата:
Сообщение от f.hump Посмотреть сообщение
в двух случаях не может быть, разве что используете xmm где-то еще и не добавили директиву .xmm
Отредактировал пост, во втором случае все нормально, но в первом всеравно там же ошибка
kypck вне форума Ответить с цитированием
Старый 22.04.2012, 23:37   #6
f.hump
C/C++, Asm
Участник клуба
 
Аватар для f.hump
 
Регистрация: 02.03.2010
Сообщений: 1,323
По умолчанию

какая версия MASM?

что говорит ml.exe если вызвать без параметров?

если правильно помню, то все что старее 8.0 не умеет работать с xmm

Последний раз редактировалось f.hump; 22.04.2012 в 23:51.
f.hump вне форума Ответить с цитированием
Старый 22.04.2012, 23:59   #7
kypck
Пользователь
 
Регистрация: 23.10.2011
Сообщений: 35
По умолчанию

стоит masm32 версии 11
kypck вне форума Ответить с цитированием
Старый 23.04.2012, 00:01   #8
f.hump
C/C++, Asm
Участник клуба
 
Аватар для f.hump
 
Регистрация: 02.03.2010
Сообщений: 1,323
По умолчанию

какая версия ml.exe?
(что говорит ml.exe если вызвать без параметров?)
f.hump вне форума Ответить с цитированием
Старый 23.04.2012, 00:09   #9
kypck
Пользователь
 
Регистрация: 23.10.2011
Сообщений: 35
По умолчанию

C:\masm32\bin>ml.exe
Microsoft (R) Macro Assembler Version 6.14.8444
Copyright (C) Microsoft Corp 1981-1997. All rights reserved.

usage: ML [ options ] filelist [ /link linkoptions]
Run "ML /help" or "ML /?" for more info
kypck вне форума Ответить с цитированием
Старый 23.04.2012, 00:19   #10
f.hump
C/C++, Asm
Участник клуба
 
Аватар для f.hump
 
Регистрация: 02.03.2010
Сообщений: 1,323
По умолчанию

Цитата:
Copyright (C) Microsoft Corp 1981-1997
весьма красноречиво.

рекомендую проапгрейдить.
f.hump вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Float и Double crawter C# (си шарп) 1 19.03.2012 15:46
Ошибка типа cannot convert `float*' to `float' for argument `1' ... Trackman Помощь студентам 3 23.05.2011 17:09
Отображение значений переменных типа float и double(Языки Pascal и C) Сырно Помощь студентам 3 17.10.2010 18:37
В чём различия между float и double Rafff Общие вопросы C/C++ 6 04.04.2010 10:50
float или double? zgest Общие вопросы C/C++ 10 20.03.2010 15:14