000
24.07.2004, 12:06 Uhr
~metzgerkarl
Gast
|
Hallo! Ich habe ein kleines Problem mit dieser Aufgabe (naja eigentlich ist es ein riiiiiiiiiiiiiiesiges Problem!!!). Leider ist die Aufgabe ernorm wichtig und deshalb muss ich sie unbedingt lösen. Vielleicht kann mir jemand helfen? Ich weiß leider nicht wie ich die Aufgabe angehen soll!
Aufgabenstellung: ================
Implementieren Sie Funktionen, die eine Telefonnummer in einen TBCD String umwandelt und umgekehrt. Gehen Sie davon aus, dass es keine Telefonnummern mit mehr als 32 digits gibt. Benutzen Sie die folgenden Definitionen:
C++: |
const int BCD_LEN = 16;
struct BCD {
int len; char digits[BCD_LEN];
};
|
Erklärung: =========
Ein OCTET STRING ist ein character Array. Diese werden benutzt, um Telefonnummern in der Darstellung BCD zu kodieren. Der folgende Ausschnitt aus einer GSM Spezifikation definiert einen TBCD-String als einen OCTET String und erläutert die Kodierung.
TBCD-STRING::=OCTET STRING
Dieser Datentyp (TBCD) wird gebraucht, um mehrere Zeichen von 0 bis 9, *, #, a, b, c darzustellen, zwei Zeichen pro Oktett (ein Oktett = 8 Bit). Dabei ist jedes Zeichen kodiert: 0000 bis 1001 (0 bis 9), 1010 (*), 1011 (#), 1100 (a), 1101 (b), 1111 (c). 1111 wird als Füllzeichen benutzt, wenn die Anzahl der Zeichen ungerade ist. Die Bits 8765 des Oktetts n werden für das Verschlüsseln des Zeichens 2n und die Bits 4321 des Oktetts n für das Verschlüsseln des Zeichens 2(n-1)+1 benutzt.
Bearbeitung von Pablo: |
CPP tags eingefügt
|
Dieser Post wurde am 24.07.2004 um 12:49 Uhr von Pablo editiert. |