curieux de savoir si quelqu'un pourrait avoir un aperçu de la façon dont je ferais ce qui suit à un nombre binaire:Bit Twiddle pour effectuer cette conversion
convertir
01+0 -> 10+1 (+ as in regular expressions, one or more)
01 -> 10
10 -> 01
donc,
10101000010100011100
01010100101010100010
et pour préciser qu'il ne s'agit pas d'une simple inversion:
000000100000000000
000001010000000000
Je pensais regex, mais je travaille avec des nombres binaires et je veux rester comme ça. La page bit twiddling hacks ne m'a pas non plus donné un aperçu. Cela a clairement une certaine essence d'automates cellulaires. Donc, quelqu'un a quelques opérations qui peuvent prendre soin de cela? (aucun code n'est nécessaire, je sais comment faire ça).
J'ai du mal à suivre ce que le premier "01 + 0" -> "10 + 1" est censé signifier. Votre exemple de conversion indique que vous ne voulez pas un compliment simple, mais pourriez-vous être plus clair sur la conversion que vous voulez? –
L'exemple doit être corrigé ou clarifié. Actuellement, le seul «sens» que je peux voir est que si un 0 est à côté d'un 1 dans la source, il devient un 1 dans la cible. Sinon, le 0 reste 0, et tous les 1 deviennent 0 – workmad3