Vorschlag:... funkcode ... > 64 millionen möglichkeiten ... 256 verschiedene möglichkeiten reichen ...
i) Vorne 6 Bits dazu
ii) Diese nun 32 Bits (= long integer) aufsplitten in zwei Words
iii) Das "vordere" Word aufsplitten in zwei Bytes
iv) Das zweite Byte des vorderen Words ist der eigentliche Schlüssel mit 255 Varianzen, der Rest vom Schlüssel bleibt konstant.
v) Fazit: die 256 Möglichkeiten sind eindeutig erkennbar und handhabbar.
Anmerkung: natürlich muss man den Schlüssel nicht da vorne nehmen, man kann die Aufsplitterei (und das Zusammenfügen) auch mit den letzten acht Bits machen. Ich würde aus Gründen des "Hackens von Aussen" aber das Byte mittendrin nehmen, Arbeit bzw. Aufwand bleiben im Prinzip gleich.
Durchführung etwa so mit Deinem
beispiel: 01011101010010101011101010
Die Punkte sind hier nur Platzhalter um das automatische Beschneiden von Leerstellen zu verhindern
Dieses Byte ist Dein Schlüssel, die hier durch x repräsentierten Ziffern bleiben für alle Deine Schlüssel gleich. Bei Verwendung als Schlüssel werden nur die benötigten "unteren" 26 Bits genommen. UND für eine gute Übersicht ist das hier variante Byte als Dezimalziffer einfach darstellbar.Code:Jetzt Auffüllen mit Nullen am MSB-Ende (ganz vorn): beispiel: ..------0101110101 0010101011101010 Neuer Wert: 0000000101110101 0010101011101010 In 2 Word Zerlegen: ..0000000101110101 0010101011101010 höherwertiges Word in 2 Bytes zerlegen Ursprung: ..00000001 01110101 0010101011101010 Zerlegt: ...xxxxxxxx 01110101 xxxxxxxxxxxxxxxx
Warum das Ganze? Weil das Zerlegen und Zusammenfügen von Bytes (also 8 Bit in EINER Gruppe) zum Standard von Programmiersprachen gehört - - sagt einer, der keine Ahnung von Bascom hat *ggg*.
https://www.roboternetz.de/community...zusammenfassen
http://www.mikrocontroller.net/topic/83140
http://www.rn-wissen.de/index.php/Ba...Long-Variablen
Lesezeichen