[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
Доброе время суток, добрые люди. Не могу никак понять, каким образом реализовать алгоритм умножения целочисленного числа на число с фиксированной десятичной запятой. Дело вот в чем. Имеется кусок программы:
.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: info@telesys.ru