02.02.2013 Views

1. First steps in Reaktor Core - Native Instruments

1. First steps in Reaktor Core - Native Instruments

1. First steps in Reaktor Core - Native Instruments

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Normal float<strong>in</strong>g po<strong>in</strong>t signals of 32 and 64 bit precision are fully compatible<br />

with each other and can be freely <strong>in</strong>terconnected. OBC signals<br />

of different precision are not compatible with each other (because you<br />

cannot have storage that is simultaneously 32 and 64 bit). Also, for<br />

OBC signals ‘default’, ’32 bit’ and ’64 bit’ sett<strong>in</strong>gs are all considered<br />

different and <strong>in</strong>compatible, because the effective default precision can<br />

be changed by chang<strong>in</strong>g the properties of one of the own<strong>in</strong>g macros.<br />

The <strong>in</strong>put and output modules of top-level structures of core cells always<br />

send and receive 32 bit floats, because that is the type of the signal<br />

used for <strong>Reaktor</strong> primary-level event and audio connections.<br />

7.2. Integer signals<br />

There is another data type commonly supported by modern CPUs, and actually<br />

this one is more fundamental to the digital world than floats. It is the <strong>in</strong>teger<br />

type. Integer numbers are represented and processed with <strong>in</strong>f<strong>in</strong>ite precision.<br />

Although the precision of <strong>in</strong>tegers is <strong>in</strong>f<strong>in</strong>ite, the range of representable <strong>in</strong>teger<br />

values is limited. For 32 bit <strong>in</strong>tegers the values can go up to more than 10 9 .<br />

Inf<strong>in</strong>ite precision for storage and process<strong>in</strong>g of <strong>in</strong>teger values is<br />

possible because they don’t have any decimal digits after the<br />

period, so you can write them us<strong>in</strong>g a f<strong>in</strong>ite number of digits.<br />

Let’s write down the number of seconds <strong>in</strong> an hour: 3, 6, 0,<br />

0, done. It’s that easy. If you try to write down the value of π<br />

you cannot do it completely: 3, 1, 4, 1, stop. Not complete, OK<br />

let’s write a couple more digits: 5, 9, stop. Still not complete,<br />

and so on. With an <strong>in</strong>teger number you can do it completely and<br />

precisely: 3600, that’s it.<br />

While float<strong>in</strong>g po<strong>in</strong>t is a natural choice for values that are chang<strong>in</strong>g cont<strong>in</strong>uously,<br />

as are audio signals, for discretely chang<strong>in</strong>g values (for example, counters)<br />

<strong>in</strong>tegers may be a more appropriate choice.<br />

Many <strong>Reaktor</strong> <strong>Core</strong> modules can be switched to <strong>in</strong>teger mode, <strong>in</strong> which case<br />

they expect <strong>in</strong>teger signals at their <strong>in</strong>puts; they process them as <strong>in</strong>tegers (that<br />

means with <strong>in</strong>f<strong>in</strong>ite precision); and they produce the <strong>in</strong>teger outputs. Examples<br />

of such modules <strong>in</strong>clude arithmetic modules like adder, multiplier, or subtractor.<br />

There are even some modules that can be used only on <strong>in</strong>tegers.<br />

M<strong>in</strong>imum 32 bit length is guaranteed for <strong>Reaktor</strong> <strong>Core</strong> <strong>in</strong>teger values.<br />

112 – REAKTOR CORE

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!