| imho.ws |
![]() |
|
|
|
# 1 |
|
Junior Member
Регистрация: 02.11.2003
Адрес: г. Таганрог
Сообщения: 63
![]() |
Перевод дробных чисел в бинарное представление
Люди, поможите плиз!
Существуют ли какие-нибудь функции перевода дробных чисел с плавающей точкой в двоичную систему счисления??? Самому ужасно влом писать! Заранее благодарен!
__________________
Америка, Америка - это красиво, но Россия вот где есть СИЛА!!! |
|
|
|
|
# 2 |
|
Junior Member
Регистрация: 10.08.2004
Адрес: Завис в конторе
Пол: Male
Сообщения: 180
![]() ![]() ![]() ![]() ![]() ![]() |
Как-то препод просил выводить числа с плавающе точкой в двоичное представление.
Код:
void PrintHEXView(float f); // функция печатает 16-тиричное представление числа
void PrintBINView(float f); // функция печатает двоичное представление числа
int main(int argc, char* argv[])
{
float f = 12.140625;
PrintHEXView(f);
printf("\n");
PrintBINView(f);
printf("\n");
return 0;
}
/////////////////////////////////////////////
void PrintHEXView(float f)
{
void *b = (BYTE*)&f;
int i = sizeof(f)-1;
printf("0x");
for (; i >= 0; i--)
{
if (*((BYTE*)b+i) == 0)
printf("00");
else
printf("%X", *((BYTE*)b+i));
}
}
/////////////////////////////////////////////
char *table[16] =
{
"0000",
"0001",
"0010",
"0011",
"0100",
"0101",
"0110",
"0111",
"1000",
"1001",
"1010",
"1011",
"1100",
"1101",
"1110",
"1111"
};
void PrintBINView(float f)
{
void *b = (BYTE*)&f;
int i = sizeof(f)-1;
BYTE bit;
for (; i >= 0; i--)
{
bit = *((BYTE*)b+i);
printf("%s%s", table[bit>>4], table[bit&0xf]);
}
printf("b");
}
__________________
Не нервируйте меня. Мне скоро негде будет прятать трупы! |
|
|
|
|
# 3 |
|
Junior Member
Регистрация: 02.11.2003
Адрес: г. Таганрог
Сообщения: 63
![]() |
Я пишу программу для тестирования цифрового КИХ фильтра, она должна после всех вычислений фильтрации, выдать в файл матрицу двоичных чисел, которые естественно дробные и устройство об этом знает. Никогда, если честно не думал, что это вызовет затруднение, но вот так получилось, что вызвало
![]() Код отличный, то что мне нужно! Спасибо за то что избавил от необходимости писать самому!
__________________
Америка, Америка - это красиво, но Россия вот где есть СИЛА!!! Последний раз редактировалось Rundll; 02.05.2006 в 23:29. |
|
|