[an error occurred while processing this directive] [an error occurred while processing this directive]
реализация вычислений с фиксированной запятой.
(«Телесистемы»: Конференция «Цифровые сигнальные процессоры (DSP) и их применение»)
[an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive]

Отправлено Евгений 21 августа 2001 г. 14:19

Доброе время суток, добрые люди. Не могу никак понять, каким образом реализовать алгоритм умножения целочисленного числа на число с фиксированной десятичной запятой. Дело вот в чем. Имеется кусок программы:

.section/dm data1;
.var A=10;
.var B=0.56r;
.section/pm program;
_start:
I1=A; M1=1;
MX0=dm(I1,M1);
MY0=dm(I1,M1);
mr=mx0 * my0(rnd);

То есть, в программе происходит умножение 10*0.56. В дебагере в регистрах mr0 и mr1 после умножения хранятся следующие значения: mr0=1998; mr1=0005. Так как теперь преобразовать эти значения в понятную величину в формате 1.15??? (1 бит на знак, 15 бит на значение после запятой).
Может кто знает. Или ссылку подкинет. Занимаюсь программированием кодека G.728 - без этого никуда.

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru