2017-01-21 4 views
-3

Ich muss Text aus Binärdateien entschlüsseln und es mit Text (was vom Benutzer geschrieben wird) in meinem Programm vergleichen und auch Text in Binärtext dekodieren. Beispiel: 011011000110111101101100 => lol lol => 011011000110111101101100 Es sollte 2 Funktionen sein Wie kann ich es tun?Decoder für Binärdateien in C

+2

Können Sie * irgendeine * Anstrengung bei der Lösung dieses Problems selbst demonstrieren? –

+0

Sie können eine "numerische" Zeichenfolge, die in einer Zahlenbasis geschrieben ist, in 'long' mit' strtol' konvertieren. –

+0

Ich habe keine Ahnung, wie ich es lösen kann, ich versuche etwas im Internet zu finden, aber ich kann nur finden, wie man Zahlen entschlüsselt, aber ich brauche auch Text –

Antwort

0

Ich verstehe, so ist hier, wie es funktioniert:

  • Sie benötigen eine Funktion 8 Bit-Zahlen binär umwandeln kann (kann hinzufügen, ‚0‘ nach den Zahlen immer 8bits haben), alle Zahlen, die Sie sein bekommen mit ASCII-Tabelle konvertiert, für exemple l 108 ist, ich nehme an, Sie wissen schon
  • eine andere Funktion können ASCII-Zeichen 8bits binären Zahlen des

Binary auf Dezimal konvertieren:

01101100 -> 0.2^0 + 0.2^1 + 1.2^2 + 1.2^3 + 0.2^4 + 1.2^5 + 1.2^6 + 0.2^7 

es

Dezimal zu Binär sehr einfach: den Rest holen und den Quotienten:

108/2 : q = 54 r = 0 
54/2 : q = 27 r = 0 
27/2 : q = 13 r = 1 
13/2 : q = 6 r = 1 
6/2 : q = 3 r = 0 
3/2 : q = 1 r = 1 

nehmen Sie die letzte Quotient und alle übrigen: 1.101.100, fügen Sie eine 0 8 Bits haben: 01101100