[Tech] OT: C, linux e la rappresentazione in mem

Simone Piccardi piccardi@softwarelibero.it
Lun 1 Mar 2004 16:50:45 CET


On Mon, 2004-03-01 at 16:35, Valerio Montagnani wrote:
> Ciao amici, vi vorri sottoporre questo quisito:
Se per favore poi manenessi le e-mail a 80 colonne sarebbero un pelo
piu` leggibili.

> p=(float *)calloc(size,sizeof(float));
Mi spieghi perche` per contenere degli interi devi allocare numeri in
virgola mobile?


> Qui viene il mio dubbio. La scheda audio quantizza il suono con 16 bit
> (come richiesto). Un tipo float usa 32 bit per la rappresentazione di
> un numero. Quindi nel mio buffer avrò i 16 bit più rappresentativi
> tutti con il valore 0, mentre i meno significativi saranno
> effettivamente impiegati per la rappresentazione del campione audio.
No, se usi numeri in virgola mobile la rappresentazione e` mantissa piu`
esponente e quello che trovi nei vari bit dipende dalla rappresentazione
e dal valore del numero.

Usa degli interi normali per l'acuisizione e dei float (se ti servono)
per farci i conti sopra. E stai attento a come mischi le cose.

Ciao
Simone


Ciao
Simone




Maggiori informazioni sulla lista flug-tech