Je réfléchissais à la façon d’obtenir la valeur absolue d’un entier sans utiliser l’instruction ni
. Au début, j’utilisais des bits de décalage à gauche ( `` ), en essayant d’obtenir un signe négatif hors de la plage, puis de décaler des bits à l’endroit où il se trouve, mais malheureusement, cela ne fonctionne pas pour moi. S’il vous plaît laissez-moi savoir pourquoi cela ne fonctionne pas et d’autres moyens alternatifs de le faire.
Réponses
Trop de publicités?
phresnel
Points
20082
Quản Bá Hồng Nguyễn
Points
119
flanglet
Points
51
En supposant des entiers signés 32 bits (Java), vous pouvez écrire :
Pas de multiplication, pas de branche.
BTW, `` fonctionnerait aussi bien mais il est breveté. Oui!
Remarque : Ce code peut prendre plus de 10 fois plus de temps que l’instruction conditionnelle (Verison 8 bits). Cela peut être utile pour la programmation matérielle du système C, etc.