Path: csiph.com!usenet.pasdenom.info!news.ortolo.eu!news.izac.org!reader From: Benoit Izac Newsgroups: fr.comp.lang.python Subject: Re: Usage de ~ qui, ce me semble, veut dire not. Date: Sun, 11 Apr 2021 14:03:20 +0200 Message-ID: <87k0p9uiyf.fsf@izac.org> References: <87v98t85de.fsf@universite-de-strasbourg.fr.invalid> Reply-To: benoit.izac@free.fr Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: keg.izac.org; logging-data="22272"; mail-complaints-to="usenet@izac.org" Xref: csiph.com fr.comp.lang.python:3460 Bonjour, Le 11/04/2021 à 13:53, Olivier Miakinen a écrit dans le message  : >> Les autres opérations apparentées sont & | ^ (autres opérations binaires >> bit-à-bit : "and" "or" "xor"), ainsi que << et >> (décalages). Exercice >> pour le lecteur : pourquoi est-ce que "-1 >> d" vaut -1 quelle que soit >> la valeur de d ? > > Je suppose que le décalage à droite propage le bit de signe, afin que > "-6 >> 1" vaille 3 tout comme "6 >> 1" vaut 3. Mais existe-t-il un type ^ -3 > d'entier non signé ? Un truc qui ferait que "unsigned(-1)" vaudrait un > de moins qu'une grande puissance de 2 ? Moi je pense que « a >> 1 == ~(~a >> 1) » donc vu que « -1 == ~0 » et que « 0 >> d » vaut toujours 0, « ~(~0 >> d) == -1 ». -- Benoit Izac