Hallo Martin
Welcher Algorithmus läuft bei Modulo 2 in etwa ab?
Welches sind die markanten Schritte in einer Modulo-Operation?
Beim Modulo wird intern eine Division ausgeführt und statt dem Quotienten einfach der Divisionsrest genommen. Da heute - von einigen RISCs und µCs mal abgesehen - so ziemlich jede CPU von sich aus Integer-Divisionen unterstützt, ist der Zeitbedarf minimal. Und die Modulo-Operation ist eh nur für Ganzzahlen (also Integers) definiert. Streng mathematisch sogar nur für positive ganze Zahlen, obwohl viele Script Engines oder C-Runtimes die Operation auch hemmungslos mit negativen Zahlen ausführen. Was dabei rauskommt, ist allerdings nicht klar festgelegt.
Aber auch wenn die Division in einem Divisions-Modul der CPU vorgenommen wird, wird Sie doch merklich mehr Taktzyklen benötigen, da die Division die wahrscheinlich aufwendigste Grundoperation ist.
Oder habe ich da was falsch verstanden?
Aus reiner Neugier ;-)
Ist deine Neugier damit befriedigt? *SCNR*
Noch nicht ganz, auch wenn ich zugebe, dass die paar Takte bei irgenwelchen GHz-CPUs im Einzelfall vernachlässigbar sind ;-)
Das Ganze erinnert mich aber an die Probleme bei der Implementation eine Langzahl-Bibliothek, wo die Division-Operationen mit die aufwändigsten in Bezug auf Codierung und Performance waren.
Grüsse
Eisbär