 |
Primi programmi |
|
Nota sui compilatori
Nota su octave
creazione di un file.cdr in C
Il file creasuono.c è un semplice
programma in C che crea un file contenente 1 secondo di suono con frequenza di
campionamento di 44100HZ, stereo, 16 bit, big-endian.
Il suono è una sinusoide di frequenza di 400Hz e ampiezza massima (32766).
Per compilarlo si usa il comando:
cc creasuono.c -o creasuono -lm
Il flag -lm serve ad accedere alla libreria /usr/lib/libm.a che contiene le funzioni
matematiche elementari, come sin(x).
Una volta compilato, il comando
creasuono sinus400.cdr
crea il file sinus400.cdr, che si può ascoltare con
playcdr sinus400.cdr ( su alcuni sistemi semplicemente: play sinus400.cdr ).
creazione di un file.cdr in fortran
Il file creasuono.f90 è un semplice
programma in fortran90 che crea un file contenente 1 secondo di suono con frequenza di
campionamento di 44100HZ, stereo, 16 bit, big-endian.
Il suono è una sinusoide di frequenza di 400Hz e ampiezza massima (32766).
Per compilarlo si usa il comando:
f95 creasuono.f90 -o creasuono
Una volta compilato, il comando
creasuono sinus400.cdr
crea il file sinus400.cdr, che si può ascoltare con
playcdr sinus400.cdr ( su alcuni sistemi semplicemente: play sinus400.cdr ).
Si noti che le variabili ii, iids,iisn sono interi a 2 BYTES, e si noti
le chiamate all routine MVBITS che scambia di posto i primi 8 bit con
i secondi 8 bit per passare da little-endian a big-endian.
Il file è stato aperto in modo UNFORMATTED con accesso DIRECT dichiarando
i record di lunghezza RECL=4 (bytes).
L'istruzione di scrittura deve indicare quale record si vuole scrivere (rec=i),
e in effetti si devono scrivere ogni volta non più di 4 bytes.
 |
Laboratorio Sperimentale di Matematica Computazionale - parte III
Sergio Steffè - AA 2012/2013 - PISA |
|