SMS PDU-Codierung

Wenn eine Kurzmitteilung geschrieben und versandt wird, wird sie vorher in durch ein Verfahren codiert/komprimiert.
Dieses Verfahren wird benutzt, um die tatsächliche Länge einer Kurzmitteilung zu verringern.
Hier findest du eine Beschreibung, wie eine Kurzmitteilung vor dem Senden codiert wird.
» Beispiel-Codierung:
Hier wird erläutert, nach welchem Verfahren eine Kurzmitteilung codiert wird
Gib hier deine eigene Kurzmitteilung ein, um sie zu decodieren:
Länge: 11 Zeichen
» Buchstabe in HEX darstellen:
Jedes einzelne Zeichen der Mitteilung muss als erstes im HEX-Format dargestellt werden.
Zeichen: | in HEX: |
---|---|
H | 48 |
e | 65 |
l | 6C |
l | 6C |
o | 6F |
20 | |
W | 57 |
o | 6F |
r | 72 |
l | 6C |
d | 64 |
» Buchstaben binär in 7 Bit darstellen:
Jeder einzelne HEX-Wert muss nun als Binär-Format dargestellt werden.
HEX-Wert: | Binär (7 Bit): |
---|---|
48 | 1001000 |
65 | 1100101 |
6C | 1101100 |
6C | 1101100 |
6F | 1101111 |
20 | 0100000 |
57 | 1010111 |
6F | 1101111 |
72 | 1110010 |
6C | 1101100 |
64 | 1100100 |
» Binärwerte spiegeln:
Anschliessend werden die einzelnen Binär-Werte gespiegelt.
Binär (7 Bit): | Binär gespiegelt: |
---|---|
1001000 | 0001001 |
1100101 | 1010011 |
1101100 | 0011011 |
1101100 | 0011011 |
1101111 | 1111011 |
0100000 | 0000010 |
1010111 | 1110101 |
1101111 | 1111011 |
1110010 | 0100111 |
1101100 | 0011011 |
1100100 | 0010011 |
» Alle Binärwerte zusammenfügen:
Die gespiegelten Werte werden nun aneinander gehängt.
» "0" anhängen, bis Anzahl durch 8 teilbar ist:
Es werden nun so viele Nullen angehangen, so dass die Gesamtlänge ohne Rest durch 8 teilbar ist.
In diesem Fall müssen 3 Nullen an das Ende gehangen werden!
» Kette in 8 Bit Binärwerte darstellen:
Die aneinander gehangene Kette wird nun in 8er Stücke aufgeteilt.
Binär (8 Bit): |
---|
00010011 |
01001100 |
11011001 |
10111111 |
01100000 |
10111010 |
11111011 |
01001110 |
01101100 |
10011000 |
» Binärwerte spiegeln:
Die Binär-Werte werden nun erneut gespiegelt.
Binär (8 Bit): | Binär gespiegelt: |
---|---|
00010011 | 11001000 |
01001100 | 00110010 |
11011001 | 10011011 |
10111111 | 11111101 |
01100000 | 00000110 |
10111010 | 01011101 |
11111011 | 11011111 |
01001110 | 01110010 |
01101100 | 00110110 |
10011000 | 00011001 |
» Binärwerte in 4 Bit Nibbles darstellen:
Die gespiegelten 8 Bit Werte müssen in Nibbles zu je 4 Bit aufgeteilt werden.
Binär (8 Bit): | 4 Bit Nibbles: |
---|---|
11001000 | 1100-1000 |
00110010 | 0011-0010 |
10011011 | 1001-1011 |
11111101 | 1111-1101 |
00000110 | 0000-0110 |
01011101 | 0101-1101 |
11011111 | 1101-1111 |
01110010 | 0111-0010 |
00110110 | 0011-0110 |
00011001 | 0001-1001 |
» 4 Bit Nibbles in HEX darstellen:
Die 4 Bit Nibbles werden nun einzeln in HEX dargestellt.
4 Bit Nibbles: | in HEX: |
---|---|
1100-1000 | C8 |
0011-0010 | 32 |
1001-1011 | 9B |
1111-1101 | FD |
0000-0110 | 06 |
0101-1101 | 5D |
1101-1111 | DF |
0111-0010 | 72 |
0011-0110 | 36 |
0001-1001 | 19 |
» Codierte SMS:
All aneinander gehängten HEX-Werte ergeben nun das Ergebnis der Codierung.
C8 32 9B FD 06 5D DF 72 36 19

![]() |
Artikel bewerten |
Mit Eurer Bewertung helft Ihr die Qualität von NokiaPort.de zu verbessern!
![]() |
Kommentar zu diesem Artikel abgeben |
Hinweis: Habt ihr Fragen, so stellt sie bitte im NokiaPort.de - Forum
Fragen werden hier nicht beantwortet und ggf. kommentarlos gelöscht!
Kommentare
Alle 8 Kommentare.
Das Handy veschickt aber E8 32 9B FD 46 97 D9 EC 77. Auf dem Handy erscheint die gleiche Nachricht. Komisch! Der Algorithmus scheint richtig zu sein. Ich habe mich vertan. Warum ist E8 32 9B FD 46 97 D9 EC 77 identisch mit E8 32 9B FD 46 97 D9 EC 37 ????
http://de.wikipedia.org/wiki/Huffman-Kodierung#Huffman-Code
eingabe: 320 zeichen a 7 bit= 320*7 = 2240 bit
ausgabe: 280 hexcodes a 8bit = 280*8 = 2240 bit
=> 0 komprimierung, also warum nennt ihr das komprimierung
druch die angehängten Nullen im Schitt 5 kann es sogar noch größer werden :(
Ein freier SMS zipper. Damit kann die KApazitaet um das 2-3 fache gesteigert werden.
FF