Analog Devices adsp-2100 Manual page 56

Adsp-2100 family programmable single-chip microprocessors
Table of Contents

Advertisement

2 Computational Units
Two examples of denormalizing a double-precision number are given
below. The first shows a denormalization in which the upper half of the
number is shifted first, followed by the lower half. Since computations
may produce output in either order, the second example shows the same
operation in the other order, i.e. lower half first.
Always select the arithmetic shift for the higher half (HI) of the twos-
complement input (or logical for unsigned). Likewise, the first half
processed does not use the [SR OR] option.
Modifier = HI, No [SR OR], Shift operation = Arithmetic, SE = –3
First Input:
SR:
Now the lower half is processed. Always select a logical shift for the lower
half of the input. Likewise, the second half processed must use the
[SR OR] option to avoid overwriting the previous half of the output value.
Modifier = LO, [SR OR], Shift operation = Logical, SE = –3
Second Input: 01110110 01011101 (lower half of desired result)
SR:
Here is the same input processed in the reverse order. The higher half is
always arithmetically shifted and the lower half is logically shifted. The
first input is passed straight through to SR, but the second half is ORed to
create a double-precision value in SR.
Modifier = LO, No [SR OR], Shift operation = Logical, SE = –3
First Input:
SR:
Modifier = HI, [SR OR], Shift operation = Arithmetic, SE = –3
Second Input: 10110110 10100011 (upper half of desired result)
SR:
2 – 32
10110110 10100011
111 10110 11010100 011 00000 00000000
11110110 11010100 011 01110 11001011
01110110 01011101 (lower half of desired result)
00000000 00000000 000 01110 11001011
111 10110 11010100 011 01110 11001011
(upper half of desired result)

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents