 |
AppletTalk.com Java discussions newsgroups
|
| View previous topic :: View next topic |
| Author |
Message |
Roberto Guest
|
Posted: Sat Dec 20, 2003 12:02 pm Post subject: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
Ciao a tutti,
devo fare un esercizio che stampi i bit di un numero double. Per far ciò uso
il metodo Double.doubleToLongBits() che ritorna un long dato che gli
operatori bit a bit possono essere utilizzati solo con gli int
(long,short...ecc) e i char. I Double in java sono rappresentati secondo la
regola IEEE 754 che prevede la distribuzione dei 64 bit previsti per il
double in:
1 bit per il segno (il più significativo: bit 63)
11 bit per l'esponente (bits 52-62)
52 bit per la mantissa (bits 0-51)
Per far ciò ho fatto questo programma prendendo come esempio il numero 5
Voi ora direte...si...ma qual è il problema?? un attimino ancora e lo
saprete
----->N.B.: se invece di un double passo un int il programma funziona alla
perfezione!
public class Stampabit{
public static void main(String args[]){
double numero=5;
stampabit(numero);
}
public static void stampabit(long n){
int b;
int num[]=new int[64];
for(int i=63;i>=0;i--){
if( ((1L<
b=1;
else
b=0;
System.out.print(b);
//in 63 c'è il bit di segno
num[i]=b; //memorizzo tutti i bit nell' array num
}
System.out.println();
//Faccio visualizzare i campi del double separati....tanto per maggiore
chiarezza di lettura
System.out.println("Segno = "+num[63]);
//Stampo a video solo la parte dell'esponente
System.out.print("Esponente = ");
for(int i=62;i>=52;i--)
System.out.print(num[i]);
//Stampo a video solo la parte dell'esponente
System.out.print("nMantissa = ");
for(int i=51;i>=0;i--)
System.out.print(num[i]);
System.out.println();
}
//Questo metodo mi consente di "convertire" un double in un long
public static void stampabit (double n){
stampabit(Double.doubleToLongBits(n));
}
} //chiude la dichiarazione della classe Stampabit
Ciò che mi viene stampato è:
0100000000010100000000000000000000000000000000000000000000000000
Segno = 0
Esponente = 10000000001
Mantissa = 0100000000000000000000000000000000000000000000000000
l'esponente è in forma polarizzata ed equivale a 1025 - 1023 = 2
La Mantissa equivale a 2251799813685248
ora....
che relazione c'è tra questi NUMERAZZI e il mio misero 5????????????????????
Grazie mille a coloro che riusciranno a capirci qualcosa
BUON NATALE!
Roberto
:
--
--------------------------------------------------
Ci sono 10 tipi di persone al mondo:
quelli che capiscono il codice binario e quelli che non lo capiscono.
|
|
| Back to top |
|
 |
davideconsonni Guest
|
Posted: Sat Dec 20, 2003 4:52 pm Post subject: Re: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
non crosspostare. è fastiodioso.
--
Davide Consonni <davideconsonni (AT) virgilio (DOT) it>
web: http://hellpenguin.mine.nu
|
|
| Back to top |
|
 |
Roberto Guest
|
Posted: Sat Dec 20, 2003 6:12 pm Post subject: Re: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
"davideconsonni" <davideconsonni (AT) virgilio (DOT) it> ha scritto nel messaggio
| Quote: | non crosspostare. è fastiodioso.
|
e chi crossposta???
invece di sprecare risorse con un post simile verificanella netiquette che
significa crosspost.
Io ho postato su altri ng inerenti a Java, non ho fatto spam, nè
pubblicità,nè ho inserito il fatidico punto e virgola nei ng destinatari del
post.
Se ci sono più ng su java perchè non dovrei sfruttarli?
|
|
| Back to top |
|
 |
davideconsonni Guest
|
Posted: Sat Dec 20, 2003 9:53 pm Post subject: Re: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
| Quote: | Se ci sono più ng su java perchè non dovrei sfruttarli?
|
ci sono persone che frequentano più ng e tutte le volte
si leggono lo stesso messaggio uguale, non trovi sia
fastidioso ? e poi anche perchè ci sono persone che
quando vedono i crosspost non rispondono per principio
(me compreso). penso che bastino.
--
Davide Consonni <davideconsonni (AT) virgilio (DOT) it>
web: http://hellpenguin.mine.nu
|
|
| Back to top |
|
 |
Roberto Guest
|
Posted: Sat Dec 20, 2003 11:18 pm Post subject: Re: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
..
"davideconsonni" <davideconsonni (AT) virgilio (DOT) it> ha scritto nel messaggio
| Quote: | ci sono persone che frequentano più ng e tutte le volte
si leggono lo stesso messaggio uguale, non trovi sia
fastidioso ?
|
ma dato che sai che è un duplicato...perchè lo leggi?
| Quote: | e poi anche perchè ci sono persone che
quando vedono i crosspost non rispondono per principio
(me compreso).
|
e qui ripeto....non è un crosspost!!!
|
|
| Back to top |
|
 |
Giacomo Ciani Guest
|
Posted: Sun Dec 21, 2003 8:31 am Post subject: Re: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
Per quel che vale, sono d'accordo con Roberto. Postare lo stesso messaggio
indirizzandolo contemporaneamente e più ng (col fatidico ";" di cui lui
parla) è scorretto più che altro per ragioni tecniche, perchè chi rispnde
rischia di non accorgersene e rimandare il suo msg ad un sacco di altri ng,
moltiplicando così a dismisura e del tutto inutilmente i bytes mandati a
giro per la rete. Fare invece la stessa domanda su più NG mi sembra del
tutto legittimo... poichè p vero che qualcuno frequenta più NG, ma non tutti
lo fanno, perchè uno deve essere costretto a scegliere fra la tua opinione e
quella di un altro che frequenta un ng altenrativo sullo stesso argomento?
Mi sembra più che normale voler sentire più persone possibile...
A roberto invece direi che dato che ha rispettato così bene la netiquette
riguardo al corsspost, poteva evitarsi di scrivere l'oggetto in maiuscolo:
non è che il suo post sia più importante di quegli che gli stanno intorno...
visto poi che sembra ce l'abbia anche di vizio (vedi il post precedente),
sarebbe buona cosa se sotto natale smettesse di urlare! :-)
Ciao e buone feste
Giacomo
|
|
| Back to top |
|
 |
davideconsonni Guest
|
Posted: Sun Dec 21, 2003 1:42 pm Post subject: Re: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
On Sun, 21 Dec 2003 09:31:03 +0100, Giacomo Ciani wrote:
| Quote: | Per quel che vale, sono d'accordo con Roberto. Postare lo stesso messaggio
indirizzandolo contemporaneamente e più ng (col fatidico ";" di cui lui
parla) è scorretto più che altro per ragioni tecniche, perchè chi rispnde
rischia di non accorgersene e rimandare il suo msg ad un sacco di altri ng,
moltiplicando così a dismisura e del tutto inutilmente i bytes mandati a
giro per la rete. Fare invece la stessa domanda su più NG mi sembra del
tutto legittimo... poichè p vero che qualcuno frequenta più NG, ma non tutti
lo fanno, perchè uno deve essere costretto a scegliere fra la tua opinione e
quella di un altro che frequenta un ng altenrativo sullo stesso argomento?
Mi sembra più che normale voler sentire più persone possibile...
|
----
In generale e' vivamente sconsigliato di ricorrere al "crossposting"
(invio di un articolo contemporaneamente in piu' gruppi) e, cio' che e'
ancora peggio, di inviare lo stesso articolo separatamente in piu' gruppi.
----
preso da
http://www.faqs.org/faqs/usenet/ch-general/intro-italian/index.html
rimane il fatto che da fastidio. proprio come questo inutile 3d.
--
Davide Consonni <davideconsonni (AT) virgilio (DOT) it>
web: http://hellpenguin.mine.nu
|
|
| Back to top |
|
 |
Roberto Guest
|
Posted: Sun Dec 21, 2003 3:32 pm Post subject: Re: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
"Giacomo Ciani" <giacomo.ciani (AT) tiscalinet (DOT) it> ha scritto nel messaggio
| Quote: | A roberto invece direi che dato che ha rispettato così bene la netiquette
riguardo al corsspost, poteva evitarsi di scrivere l'oggetto in maiuscolo:
non è che il suo post sia più importante di quegli che gli stanno
intorno...
visto poi che sembra ce l'abbia anche di vizio (vedi il post precedente),
sarebbe buona cosa se sotto natale smettesse di urlare!
|
su questo sono d'accordo....anche perchè non sapevo che fosse una regola di
netiquette. Lo farò sicuramente in futuro.
| Quote: | Ciao e buone feste
|
A te e famiglia
Roberto
|
|
| Back to top |
|
 |
Giacomo Ciani Guest
|
Posted: Sun Dec 21, 2003 6:54 pm Post subject: Re: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
| Quote: | su questo sono d'accordo....anche perchè non sapevo che fosse una regola
di netiquette.
|
Tanto per info, si dice che equivalga ad urlare... personalmente penso che,
anche senza ricorrere a questo forzato parallelo con la comunicazione
vocale, sia comunque un modo per evidenziare il proprio messaggio rispetto
algi altri, in che mi pare sbagliato sia dal punto di vista teorico che
pratico: riguardo al primo, non credo che chi scriva abbia gli strumento per
giudicare se davvero il suo post sia più urgente o importante degli altri, e
quindi non vedo come possa decidere che meriti più attenzione. Riguardo al
secondo, non è difficile immaginare che, senza regole, tutti scriverebbero i
propri post in maiuscolo (per non correre il rischio di essere meno
evidenti) e ben presto un messaggio maiuscolo sarebbe al pari di tutti gli
altri (così come lo è adesso quello minuscolo), con lo svantaggio che si
sarebbe perso l'uso di una buona percentuale dei caratteri a nostra
disposizione, cioè quelli minuscoli... ;-)
| Quote: | Lo farò sicuramente in futuro.
Ciao e buone feste
A te e famiglia
Roberto
|
Rappresenterò!
Giacomo
|
|
| Back to top |
|
 |
Giacomo Ciani Guest
|
Posted: Sun Dec 21, 2003 6:54 pm Post subject: Re: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
Srovolando sul fatto che l'articolo parla di gruppi svizzeri (faranno razza
a se?), io ricordo di aver letto cose un po' diverse quando ho cominciato a
frequantare i gruppi usenet e ho cercato, di conseguenza, di informarmi
sugli usi e costumi.
Ad ogni modo, siccome tendo ad essere piuttosto polemico e pignolo, in
genere mi piace rispettare le regole se ne capisco (non dico condividere, am
almeno capire) la ragione. Per una regola del genere in tutta sincerità non
vedo affatto la motivazione, e mi paicerebbe che mi venisse spiegata; quella
da te adotta riguarda al fastidio di chi frequanta più NG nel leggere più
volte lo stesso messaggio mi pare a dire il vero poco plausibile: sarebbe
come dire che chi mette un annuncio per vender un oggetto sul "La pulce"
(gionalino di annunci nella zona di Firenze) poi non deve metterlo, per
educazione, anche sul "La Locandina" (distribuito invece in zona Pisa)
perchè senno che come me vive un po' qua e un po' là può ritrovarsi a
leggerlo più volte...
Non è un principio generale, ma spesso nel giudicaere i comportamente
"opportuni" scelgo quelli che fanno un minor "danno globale", e nel caso
specifico mi sembra molto minore il danno arrecato a chi, per sua disgrazia,
si trova a legger due volte l'intestazione dello stesso messaggio (perchè
solo di quella si parla) piuttosto che il danno di chi, di fronte ad un
problema, deve limitarsi ad interpellare solo una parte della comunità di
persone che, più probabiomente di altri, possono risolverglielo...
| Quote: | rimane il fatto che da fastidio.
|
Capisco, ma da fastidio anche il dover per forza scegliere qualcuno da
"escludere" dalla propria richiesta...
| Quote: | proprio come questo inutile 3d.
|
Non credo affatto sia inutile... da che comdo è modo prima di poter
comunicare efficacemente (anche programmare!) si devono stabilire le regole
per farlo, ed è quello di cui si tratta in questo post!
Anzi, sarebbe interessante conoscere l'opinione di altri a riguardo...
Ciao
Giacomo
Giacomo
|
|
| Back to top |
|
 |
Davide Consonni Guest
|
Posted: Mon Dec 22, 2003 12:39 am Post subject: Re: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
| Quote: | almeno capire) la ragione. Per una regola del genere in tutta sincerità
non
vedo affatto la motivazione, e mi paicerebbe che mi venisse spiegata;
quella |
ok allora togliero il subscribe da gli altri ng che parlano di java visto
che secondo te chi ha un problema dovrebbe postarlo anche su gli altri ng.
ma ti sembra ? facessero tutti così ci sarebbero tutti gli ng di un
argomento
uguali.
Davide
|
|
| Back to top |
|
 |
Marco Parmeggiani Guest
|
Posted: Mon Dec 22, 2003 9:08 am Post subject: Re: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
On Sat, 20 Dec 2003 18:12:31 GMT, "Roberto" <gioeroby (AT) NOSPAMlibero (DOT) it>
wrote:
| Quote: |
e chi crossposta???
invece di sprecare risorse con un post simile verificanella netiquette che
significa crosspost.
Io ho postato su altri ng inerenti a Java, non ho fatto spam, nè
pubblicità,nè ho inserito il fatidico punto e virgola nei ng destinatari del
post.
|
in buona fede hai fatto ancora peggio.
Buone fonti di informazione:
http://oakroadsystems.com/genl/unice.htm#xpost
http://www.cs.tut.fi/~jkorpela/usenet/xpost.html
--
Seti@Home Java Applets
http://maruko.webhop.net/
|
|
| Back to top |
|
 |
Giacomo Ciani Guest
|
Posted: Mon Dec 22, 2003 9:51 am Post subject: Re: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
| Quote: | ok allora togliero il subscribe da gli altri ng che parlano di java visto
che secondo te chi ha un problema dovrebbe postarlo anche su gli altri ng.
ma ti sembra ?
|
Non importa inalberarsi così... quello che mi sembra è solo che per te
vedere due volte la stessa intestazione non sia poi un danno così grande; mi
sembra che lo sia un po' di più per lui il perdere un potenziale
"risolutore" del suo problema...
| Quote: | facessero tutti così ci sarebbero tutti gli ng di un
argomento
uguali.
|
In effetti se veramente i NG trattano lo _stesso_ argomento non vedo perchè
dovrebbero essere distinti. Ma se invece, ad esempio, esistono due NG che
parlano di java, uno in inglese e uno in italiano, perchè io che so entrambe
le lingue dovrei limitrmi ad interpellare solo gli inglesi o gli italiani?
E' più sensato che io interpelli _tutti_ quelli che possono risolvermi il
problema... Idem dicasi per i gruppi che hanno argomenti diversi (e quindi è
logico che siano ng diversi) ma con determinate aree di sovrapposizione: se
la mia domanda ricade lì perchè non dovrei porla ad entrambi?
Sarà una questione di opinioni, ma a te non scoccia sapere che puoi perdere
l'occasione di risolvere il tuo problema solo perchè devi selezionare a
priori e in modo esclusivo il gruppo a cui ti rivolgi?
Ciao
Giacomo
|
|
| Back to top |
|
 |
MarcoDuff Guest
|
Posted: Tue Dec 23, 2003 2:00 pm Post subject: Re: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
Rispondo a davideconsonni che in data 20/12/2003 alle 17:52 ha scritto:
| Quote: | non crosspostare. è fastiodioso.
|
Solo per fare un poco di chiarezza e rispondere in un solo colpo a tutti.
Fare un crosspost come regola generale non e' sbagliato ma e' da evitare.
La scaletta da seguire dovrebbe essere questa:
1. Ricerca del problema su internet (i.e. www.google.it)
2. Ricerca del problema su vecchi post (i.e. groups.google.it)
3. Postare sul NG piu' appropiato
4. [Dipende dai casi] In caso di piu' NG appropiati aspettare un lasso di
tempo (medio-lungo) tra il post in un gruppo ed un altro.
C'e' molta differenza pero' tra crosspost e post multipli (quelli che ha
fatto roberto).
I primi si *dovrebbero* evitare, i secondi si *DEVONO* evitare.
Motivazione:
utilizzando un newsreader serio (ovviamente quindi non parlo di Outlook
Express (almeno senza plug-in che lo potenziano)) il post verra' letto e
soprattutto scaricato *una sola volta*. Questo significa che un utente che
legge it.comp.java e pippo.java con un newsreader serio vede e scarica il
post di roberto una sola volta.
In caso di post multipli, l'utente di sopra si ritrova due post uguali in
due NG diversi, il che e' fastidioso.
In conclusione:
se tutti usassimo un NR serio, il crosspost non sarebbe un problema, anzi
un'arma in piu' da poter utilizzare sempre senza causare problemi.
siccome la minoranza utilizza NR seri i crosspost diventano fastidiosi e
sono da evitare.
In ogni caso i post multipli sono banditi.
--
Marco "Duff" Palermo
http://www.marcoduff.com/
|
|
| Back to top |
|
 |
Marco Parmeggiani Guest
|
Posted: Tue Dec 23, 2003 3:42 pm Post subject: Re: [MAH!]STAMPARE I BIT DI UN DOUBLE |
|
|
On Tue, 23 Dec 2003 14:00:11 GMT, MarcoDuff
<la.trovi.nel.sito (AT) marcoduff (DOT) com> wrote:
| Quote: | utilizzando un newsreader serio (ovviamente quindi non parlo di Outlook
|
sono moderatamente sicuro che lo stesso ragionamento si applichi anche
ai server di news che si propagano una sola copia del messaggio invece
di N... con i soliti vantaggi.
--
Seti@Home Java Applets
http://maruko.webhop.net/
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|