Newsgroup: it.comp.lang.c++
Titolo: Not su bit

Come si digita sulla tastiera il carattere"not su bit", per capirci quella
specie di "onda"?
Poi mi assilla un dubbio: č vero che la differenza tra gli operatori logici
e  gli operatori logici su bit č che i primi operano su tipi tradizionali, e
i secondi su stringhe di
bit?
mi fate qualche esempio che mi aiuta a capire meglio?

Per onda intendi la tilde (~)  ?
devi tenere premuto ALT + 126
Ma il NOT su bit non si fa con ! (punto esclamativo) ?
--
Non è stato rilevato nessun bug nel sistema.
Si desidera crearne uno?
-- 
Posted from [151.39.48.6] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Ma il NOT su bit non si fa con ! (punto esclamativo) ?
Infatti la tilde è il complemento a uno...
Massimo

 wrote in message 8sc70q$jda$1...@news.mclink.it...

 Sei sicuro?
Da quello che sò il punto esclamativo è il not logico, mentre la tilde(non
ricordavo come si chiamava...) è il not su bit, almeno questo credevo dal
mio libro.
Comunque premendo alt +126 non succede niente(ho provato a premerli sia
contemporaneamente che in sequenza tenendo premuto il tasto alt...) perchè?


Scusa la mia ignoranza, ma che vuol dire complemento a uno?

 contemporaneamente che in sequenza tenendo premuto il tasto alt...)
perchč?
tieni premuto ALT, poi dal tastierino numerico (quello a dx) premi 1, 2 e 6,
e poi rilascia ALT
--
ciao
xAERO

E già hai ragione, il punto esclamativo è per il not logico, ricordavo male.
Per la tilde tieni premuto ALT e poi premi 1, 2, 6  del tastierino numerico.
Controlla se è attivo, a volte non ci si fa caso se è disattivato, anche se
mi sembra improbabile.


Scusa la mia ignoranza, ma che vuol dire complemento a uno?
"complemento a uno", lo dice la parola stessa, cioe' per ogni bit 1
meno il suo valore.
Nel caso di due valori corrisponde alla negazione del valore stesso
(1-0 = 1, 1-1 = 0).
In ogni caso, il NOT sui bit si ottiene con ~
Il NOT logico si ottiene con !
--
Andrea Laforgia (ICQ 87230455)
------------------------------ 
#exclude <windows.h>

Infatti la tilde è il complemento a uno...
Vale a dire "NOT su bit". L'operatore complemento ~ esegue un not su
ogni singolo bit, (es. ~11001100==00110011), mentre l'operatore NOT
logico esegue un NOT su tutta la variabile (es. NOT
11001100==false==(bool)00000000)
Anto

meno il suo valore.
Perche' per ogni bit? e' semplicemente 1-<valore>
es:
complemente ad uno di 12 ( bin 1100 ) e' -11
la tilde ( ~ )invece darebbe 3 ( bin 0011 )

 la tilde ( ~ )invece darebbe 3 ( bin 0011 )
Quello che scrivi e' impreciso, perche' confondi operazioni su numeri
decimali con operazioni su sequenze di bit:
- La rappresentazione di 12 e' come minimo 00001100, nelle tre
  rappresentazioni piu' comuni, ovvero complemento a 2, complemento
  a 1, segno e valore;
- Le corrispondenti rappresentazioni di -12 sono: 11110100, 11110011 e
  10001011;
- ~12 corrisponde a 11110011, ovvero -13, -12 e -115;
Ciao,
Nicola

 - ~12 corrisponde a 11110011, ovvero -13, -12 e -115;
Il complemento a 1 di una stringa di bit corrisponde all'applicazione
dell'operatore ~ del C++, ovvero all'inversione di tutti i bit. A cosa
corrisponda in base decimale dipende dalla rappresentazione utilizzata.
Ciao,
Nicola


Il complemento ad uno ( quello che ho sempre visto applicato ) e' dovuto
all'architettura della CPU ? ( io tale convenzione l'ho imparata quando
studiavo l'assempler del 7501 ... ed ho sempre dato per scontato che fosse
universalmente accettata .... )

gh...@sphera.bhome (Goffredo Baroncelli) writes:

ci sono altre due convenzioni per i numeri negativi: complemento a due
e sign-magnitude.  dipende dall'architettura quale adottare.
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it
Murphy's law: "Anything that can go wr
/bin/fortune: segmentation fault - core dumped

 e sign-magnitude.  dipende dall'architettura quale adottare.
Io ho anche incontrato la rappresentazione 'XS' (excess). Ad esempio
un byte puo' rappresentare un numero fra -128...+127 se si utilizza
la rappresentazione XS128
  00000000 -> -128
  00000001 -> -127
  00000010 -> -126
  ...
  01111110 -> -2
  01111111 -> -1
  10000000 ->  0
  10000001 -> +1
  10000010 -> +2
  ...
  11111110 -> +126
  11111111 -> +127
Andrea
--
----------------------------------------------------------------
 <\___/>  Andrea        email: agriff at tin dot it
 / . . \  "6502"          irc: _6502_@EFNET#italia
(  (")  ) Griffini   homepage: 
http://www.netservers.com/~agriff
Sent via Deja.com 
http://www.deja.com/
Before you buy.