Comment puis-je implémenter les opérations rightrotate (et leftrotate) sur des entiers 32 bits sans utiliser d'opérations au niveau du bit? J'ai besoin de cela parce que le langage HLSL (High Level Shader Language) n'autorise pas les opérations sur bits au niveau des nombres, et j'ai besoin d'utiliser un shader spécifique que j'essaye de mettre en œuvre.rightrotate sans opérateurs bit à bit
Répondre
Pour les entiers non signés, divisez par 2 et ajoutez 2^32 si le nombre était impair, pour une rotation à droite. Pour gauche, multipliez par deux et ajoutez 1 s'il était supérieur à 2^32 - 1.
Note: selon la langue, vous devrez peut-être gérer le débordement et l'arrondi. Par exemple. pour la gauche, vous devrez peut-être soustraire 2^32 avant de multiplier par 2. – sje397
Si vous n'avez pas besoin de l'embout à enrouler, vous pouvez simplement diviser et multiplier par 2 pour tourner à droite et à gauche. – slebetman
@slebetman: ce serait donc par définition un changement plutôt qu'une rotation, sûrement? –
- 1. Opérateurs bit à bit et «endianness»
- 2. Quelques questions sur les opérateurs bit à bit
- 3. Opérateurs bit à bit - besoin de traduction de pseudocode
- 4. Opérateurs de décalage bit à bit. Signé et non signé
- 5. Ajout sans utiliser d'opérateurs arithmétiques ou bit à bit
- 6. Utilisation de MPMediaPlaylistPropertyPlaylistAttributes et opérateurs bit à bit sur NSInteger- Objective C (iPhone)
- 7. Opérations bit à bit: ressources en ligne?
- 8. C++ Qt: opérations bit à bit
- 9. Delphi constantes expressions bit à bit
- 10. Transposition bit à bit de 8 octets
- 11. Que fait le code bit à bit "$ n & ($ n - 1)"?
- 12. Conversion de l'opération bit à bit Delphi en Cobol
- 13. bit carte mise à l'échelle
- 14. Bit Inversion
- 15. opérations sans opérateurs de manipulation de bits au niveau du bit
- 16. Conversion Bit champ à int
- 17. Question d'opération de bit
- 18. Effet d'un opérateur bit à bit sur un booléen en Java
- 19. Pourquoi XOR est-il souvent utilisé dans java hashCode() mais d'autres opérateurs bit-bit sont rarement utilisés?
- 20. Comment utiliser bit/bit-operator pour contrôler l'état de l'objet?
- 21. MySQL n'utilise pas d'index lors d'une requête sur un champ BIT utilisant des fonctions bit à bit
- 22. Bit Inverser en hexadécimal
- 23. Bit le plus significatif
- 24. convertir Byte en bit
- 25. Bit twiddling réordonner
- 26. opérations Bit sur Enum
- 27. Decimal to Bit (Binary)
- 28. Weird bit-shift behavior
- 29. Bit de parité
- 30. bit shift en C
Que pouvez-vous utiliser? – NullUserException
Opérations arithmétiques standard, entiers, entiers non signés, tableaux. Toutes les bases sauf les opérations bitwise vraiment – Martin
Pourriez-vous s'il vous plaît donner un exemple? juste un peu? – AraK