Пр о ц е с с о р TMS 3 2 0C4 x
38
Нормализация
числа с ПТ выполняется за один машинный цикл и со-
стоит из трех шагов:
•
отыскивается старший значащий бит, не равный знаковому;
•
осуществляется левый сдвиг;
•
выравнивается экспонента числа.
Округление
осуществляет преобразование числа ПТ расширенной точ-
ности в число ПТ одинарной точности, при этом учитывается содержимое от-
брасываемых младших разрядов. В общем случае правило преобразования
c
=
am
⋅
2
ae
+ (1
⋅
2
ae
-
24
)
Преобразование из ПТ в целое
возможно, если число находится в диа-
пазоне -2
31
≤
a
≤
2
31
-1. Если 0
≤
a
< 1 , то возвращается 0, если -1
≤
a
< 0 , то
возвращается -1.
Преобразование из целого в ПТ
производится за один машинный цикл
для любых значений операндов и особенностей не имеет.
Вычисление обратной величины (1/
V
)
- специальная команда (RCPF),
которая возвращает приближенное значение величины, обратной
V
, с точно-
стью восемь двоичных разрядов мантиссы. Для увеличения точности использу-
ется
итерационный
алгоритм
Ньютона-Рафсона
(см. п.2.6)
X
[
n
+1] =
X
[
n
](2 -
VX
[
n
]) , где
X
[
n
] - значение величины, вычисленное на преды-
дущем шаге. Первое приближение X[0] возвращается командой RCPF.
Деление
X
/
Y
выполняется через вычисление обратной величины 1
/
Y
и
последующего умножения результата на
X
.
Вычисление величины, обратной корню из числа (
1 /
V
)
- команда
RSQRF, которая работает аналогично предыдущей. Для увеличения точности
используется вычисление
X
[
n
+1] =
X
[
n
](1.5 - (
V
/2)
X
[
n
]
2
) по методу Ньютона-
Рафсона (см. п.2.6).
Пример программы вычисления 1/V с точностью 32 разряда
RCPF R0,R1
; R0 = V, R1 = X[0]
MPYFR1,R0,R2
; R2 = V X[0]
SUBRF
2.0,R2
; R2 = 2-VX[0]
MPYFR2,R1
; R1 = X[1]= X[0](2 - VX[0]) точность 16 разрядов
MPYFR1,R0,R2
; R2 = VX[1]
SUBRF
2.0,R2
; R2 = 2-VX[1]
MPYFR2,R1
; R1 = X[1] ( 2 - VX[1] ) точность 32 разряда
1.9. Методы адресации операндов
В процессоре TMS320C4x используются пять типов адресации
операндов:
•
регистровая;
•
непосредственная;
•
прямая;
•
относительная (относительно про-
граммного счетчика PC) .
•
косвенная;