21.05.2012, 20:21 (часовой пояс UTC + 3 часа )

Ник:   Пароль:   Запомнить   Скрыть визит    





Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
  О кодировках и количестве символов в sms
08.02.2008, 13:22 Сообщение url  
Аватара пользователя

В КПСС с 09.07.2005, 16:26
Сообщения: 274
Откуда: Кубань
Всё ниженаписанное есть цитата.на сайте первоисточнике рассказывается технология массовой рассылки смс.но мне понравилась нижепривёдённая инфа и я делюсь ей.
честно не проверял достоверность.

Цитата:
Многие из нас уже знают, что в одной sms можно передать до 160 латинских или до 70 русских символов. Однако конкретная причина такой дискриминации русскоязычной части населения не всем понятна. Я попытаюсь пролить свет на эту загадочную особенность sms.

Прежде всего, хочу окончательно запутать читателя, сказав, что максимальная длина sms (мы сейчас не имеем в виду так называемые long sms - длинные sms) составляет 140 байт. Это ограничение накладывается на уровне сигнальной сети SS7 и едино для всей сетей GSM (например, в сетях CDMA эта цифра еще меньше). Таким образом, у нас уже есть три числа - 160, 140 и 70. Будем разбираться с каждым по отдельности.

140 - максимальное количество байт, отводимое на тело sms. Здесь самое время вспомнить, что помимо текстовых sms существуют также и бинарные sms, которые служат для передачи рингтонов, изображений, данных по технологии OTA и т.п. Их максимальный размер составляет 140 байт.

160 - максимальное число латинских символов, которое можно передать в одной sms. На самом деле, это те же самые 140 байт - символы упаковываются с помощью процедуры 7-битной упаковки. Кодировка, используемая для передачи латинских символов, содержит 128 различных символов, для кодирования любого из них достаточно 7 бит вместо 8. Учитывая, что 140 байт - это 1120 бит, мы получаем, что в 140 байт можно вместить 160 7-битных символов.

70 - максимальное число русских букв, которые можно передать в одной sms. Причина такого резкого ограничения в том, что каждая русская буква занимает два байта, поскольку является подмножеством кодировки UCS2 (16-битная кодировка для Unicode-символов). При этом кодировка для всей sms едина, т.е. если используется хотя бы одна русская буква, то любой символ (даже латинский) будет занимать два байта.

Не все знают, что некоторые вполне обычные символы, которые обычно относятся к стандартной ASCII-кодировке, в GSM используют два знакоместа. Этих символов немного:

^ { } [ ] | \ ~
Использование таких символов в тексте, содержащем только латинские буквы, приведет к неожиданному уменьшению максимальной длины. Например, sms, состоящая из символов [], сможет вместить только 80 таких символов. Этот эффект не учитывается практически ни одним мобильным оператором - при отправке sms с сайта Вам разрешат набрать до 160 подобных символов наравне со всеми другими.

И еще один интересный момент - в эту же кодировку входят несколько греческих символов. Особенно интересно то, что часть из них выглядит точно так же, как русские буквы:

Ф Г П Л
Эту особенность можно использовать для того, чтобы писать sms на русском языке латинскими символами. Есть довольно много букв латинского языка, которые выглядят точно так же, как русские буквы:

E T O P A H K X C B M e u o p a n m 3 bI
Пример слов, целиком набранных латинскими буквами:

ТОР РОТ ТАНК МОРС TAPAHKA panmop TuTuKaKa MbI CHOBA PAHO BCTAEM u COHHO 3EBAEM.

Имея в запасе буквы Ф Г П Л, можно значительно расширить диапазон подобных текстов. При этом можно написать на русском языке сообщение длиной до 160 символов, поскольку на самом деле используются только латинские символы и греческие символы из той же кодировки. Правда, для этого нужно проявить недюжинную фантазию и богатство лексикона.
Автор статьи Алексей Соколов.
При использовании материалов статьи ссылка на автора и сайт-источник обязательна.

первоисточник для меня

--------------------
Цитата:
Посажу на клумбе я красивые цветочки,
Буду их растить с душой и буду ими любоваться.Буду часто целовать зеленые листочки,Красотою этой я буду наслаждаться.


 Профиль  
Ответить с цитатой  
 
18.02.2008, 10:29 Сообщение url  
Оппозиция

В КПСС с 22.06.2005, 14:50
Сообщения: 677
Откуда: Russia,Ivanovo
Ну что могу сказать.
Писал студент.

Правильно только то, что русский иносранцы не любят.

Символы GSM:

http://isms/article.shtml?art_7

Насчет знаков ^ { } [ ] | \ ~

Т.к. их в кодировке GSM нет, то они преедаются Юникодом, т.е. по 2 символа на знак. Т.е. если у вы к сообщению, написанному латиницей длиной 159 сиволов добавите такую скобку , то у вас отправится 3 СМС.

В дополнение можно сказать, что если СМС склеенная, то для русского длина 1 СМС - 64 символа.

--------------------
Интерактивный СМС. Технологии, описания. ПО для контент провайдеров. Ссылка в профиле (досье).


 Профиль  
Ответить с цитатой  
 
20.02.2008, 20:35 Сообщение url  
Аватара пользователя

В КПСС с 09.07.2005, 16:26
Сообщения: 274
Откуда: Кубань
OpSOS
да информация в статье несколько не совпадает с реальной.
но я честно написал,что не проверял.ибо смс не люблю из их дороговизны. :( (относительной.
спасибо что указал на неточночность. :-)

--------------------
Цитата:
Посажу на клумбе я красивые цветочки,
Буду их растить с душой и буду ими любоваться.Буду часто целовать зеленые листочки,Красотою этой я буду наслаждаться.


 Профиль  
Ответить с цитатой  
 
17.09.2008, 11:30 Сообщение url  

В КПСС с 17.09.2008, 10:50
Сообщения: 2
:uhaha: мтс порубать как яйца в салат оливье беспредельные тарифы мега тариф драйв 60 коп минута мтс 2руб минута самый выгодный тариф почуствуй разницу товаристч

Добавлено через 21 минуту 23 секунды:

че не та тема ну еще не освоился


 Профиль  
Ответить с цитатой  
 
26.11.2008, 01:37 Сообщение url  
Аватара пользователя

В КПСС с 20.11.2008, 21:45
Сообщения: 9
Откуда: Из Серпухова
:crazy: ? :evil: не надо некого рубать а надо просто подумать?! что же мы можем предьявить операторам сотовой связи ??? :( вообщем нам остаётся токо одно :o ;)


 Профиль  
Ответить с цитатой  
 
05.02.2012, 09:55 Сообщение url  
Я понимаю, что немного опоздал, но всё же,
Автор темы полностью прав, господин OpSOS, не вводите в заблуждение! Всё верно, это знаки передаются в виде 2 знакомест в 7-битной кодировке! Если бы они передавались в unicode (UTF-16), то всё смс бы переводилось в кодировку UTF-16, как собственно и происходит, если после 159 букв латиницы добавить русскую-тогда действительно смс станет в три раза тяжелее. Но если добавить один из этих символов, ^ { } [ ] | \ ~ , то сообщение потяжелеет лишь до уровня ещё двух латинских букв, но не до сообщения в UTF-16., то есть, будет сообщение из 2 кусков, а не трёх! Это всё проверено опытным путём, переубеждать меня бесполезно, так как интересовался этим и перепроверял на сто рядов.
P.S. Мне как-то довелось спорить с одной сотрудницей офиса МТС, которая упорно уверяла меня, что одна русская буква в латинском тексте просто больше места займёт, сколько я её не убеждал, что из-за одной русской буквы весь текст переключается в юникод - не верила.
А с символами ^ { } [ ] | \ ~ этого не происходит, эти символы просто два знакоместа занимают и всё.
И ещё, эти же символы при использовании UTF-16 уже занимают одно знакоместо из 70-ти.


  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
[Спрятать] Быстрый ответ
Вопрос
Назовите третьего оператора "Большой тройки": МТС, Билайн, ...?:
(Этот вопрос нужен для защиты от роботов-спамеров)
 
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 


Статистика форума КПСС

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:

Главстраница КПСС  Карта форума   Фотоархив   Информбюро КПСС   Мобильные хроники   Письма Чичваркина

 

Спасибо товарищам из phpBB Group за наш счастливый форум!