Тема: Переведення float в зручний для FPU вигляд
Хай.
От у нас лаба такая, написати C++сну прогу з використанням inline assembler'a.
Пишу тут, тому що мені потрібно розібратись в алгоритмі переведення отого float'а в двійкове число, аби проводити над ним операції на FPU.
Нам казали, що саме це число має бути розширене до 80 бітиків, але зараз не про це.
От з переведенням цілої частини в двійкову систему числення все зрозуміло
float number = 3.0165f;
int integer = (int)number;
vector<int> integerPart;
for (int i = 0; integer > 0; i++)
{
integerPart.insert(integerPart.begin(),integer%2);
integer /= 2;
}
Тут ми знаємо, що кількість операції буде кінцева.
А от як бути з переведенням даних після коми?
Там же треба множити число на 2 і перевіряти цілу частину, а скільки разів його тре множити?