Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 26.12.2011, 19:13
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

Сообщение от Nekromancer
В utf8 специальная система кодирования, где один символ разбивается на несколько байт.
Сообщение от B@rmaley.e><e
Тогда это будет не 1, а несколько байт.
Ну я Вася Не знаю почему, но думал что необходимо записать все символы 1 байтом) Всем спасибо!

это все работа так влияет) Когда сидишь с кем-то в одном помещении, и у этого "кого-то" весь день рот не закрывается
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук

Последний раз редактировалось nerv_, 26.12.2011 в 19:19.
Ответить с цитированием
  #12 (permalink)  
Старый 26.12.2011, 20:45
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

Сообщение от nerv_
но думал что необходимо записать все символы 1 байтом
Так в кодировке windows-1251, например. Поэтому она не позволяет кодировать больше 255 символов, так как они не влезут в один байт.
__________________
Болтовня ничего не стоит. Покажите мне код. — Linus Torvalds
влад.куркин.рф
Ответить с цитированием
  #13 (permalink)  
Старый 27.12.2011, 10:34
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от nerv_
Ну я Вася Не знаю почему, но думал что необходимо записать все символы 1 байтом) Всем спасибо!
Отличная задача для собеседования: упаковать два байта в один с возможностью дальнейшей распаковки, разумеется. Если в течение пяти секунд, не скажет, что невозможно -- свободен
Ответить с цитированием
  #14 (permalink)  
Старый 27.12.2011, 11:56
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

Сообщение от Kolyaj Посмотреть сообщение
Отличная задача для собеседования: упаковать два байта в один с возможностью дальнейшей распаковки, разумеется. Если в течение пяти секунд, не скажет, что невозможно -- свободен
Есть два типа людей, одни хотят работать, другие хотят устроится на работу. Предпочитаю первых, даже если они не ответят на вопрос вообще.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
Ответить с цитированием
  #15 (permalink)  
Старый 28.12.2011, 11:06
Аватар для Nekromancer
Профессор
Отправить личное сообщение для Nekromancer Посмотреть профиль Найти все сообщения от Nekromancer
 
Регистрация: 06.05.2009
Сообщений: 1,163

dmitriymar,
вы о чём? Запаковать 2 байта в один в принципе нельзя, это как 2 + 2 = 10.
__________________
Нужно равняться на лучших, а не оправдываться за счёт худших.
Ответить с цитированием
  #16 (permalink)  
Старый 28.12.2011, 11:07
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

Фу,гоню хотел написать что возможно текст,но 4 бита не обеспечат все буквы алфавита даж в нижнем регистре любого из языков всего 16 букв можно передать ими.
Но опять,можно уплотнить слегка-вопрос стоит ли того?
В 5 бит можно упаковать нижний регистр русского или англ. алфавита. Итого, в 5 байт-можем упаковать 8 букв.
компрессия практически в 2 раза.
В 6 бит с указанием регистра-20% ,что совсем не мало для крупных-трафик на 20% уменьшить -ощутимо в сравнении -расходы на разработку/экономия трафа-и очень ощутимо

А в 7 бит можно запаковать и регистр и 2 языка.-экономия с утф8 в два раза при использовании только русского и меньше при совместном использовании русского и англ. 8 бит можем использовать для указания что это число ,конечно здесь можем использовать числа от 0 до 127. но ничего не мешает разбивать крупные числа на более мелкие. Итого, имеем в итоге экономию около 50% трафа-совсем не мало.

Сообщение от Nekromancer
вы о чём? Запаковать 2 байта в один в принципе нельзя, это как 2 + 2 = 10.
Вобще можно,при условии что каждый байт использует не более 4 бит.Побитовые операции в языке есть.Можно вытащить,
но это только для узких задач-допустим все данные это числа от 0 до 15. Каждое из них в представлении обычном представляет один байт,но их возможно упаковать в один байт а затем распарсить.
Так что говорить что невозможно-не стоит. Возможно, если задача позволяет.
Да и опять,если применить чуть более сложную систему,то можно запаковать с компрессией более чем в два раза в общем-так что в принципе можно говорить что возможно иметь на входе н байт -на выходе н/2 и соответственно в обратную сторону.Условия задачи выполнены -значит задача успешно решена)

Последний раз редактировалось dmitriymar, 28.12.2011 в 11:54.
Ответить с цитированием
  #17 (permalink)  
Старый 28.12.2011, 11:42
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

Цитата:
utf8 специальная система кодирования, где один символ разбивается на несколько байт.
кстати,не всё так просто.
http://otvety.google.ru/otvety/threa...295b834537ed63
Ответить с цитированием
  #18 (permalink)  
Старый 28.12.2011, 11:56
Аватар для Nekromancer
Профессор
Отправить личное сообщение для Nekromancer Посмотреть профиль Найти все сообщения от Nekromancer
 
Регистрация: 06.05.2009
Сообщений: 1,163

Сообщение от dmitriymar
Вобще можно,при условии что каждый байт использует не более 4 бит.
2 + 2 = 10 тоже возможно, при условии, что 2 это 5. Байт в программировании это 8мь бит, и я вроде как не помню устройств где это не так. Вы прибегаете к крайностям.
Сообщение от dmitriymar
кстати,не всё так просто.
На первой странице есть алгоритм. Моё общее утверждение не нужно воспринимать как 100%-ное определение.
__________________
Нужно равняться на лучших, а не оправдываться за счёт худших.

Последний раз редактировалось Nekromancer, 28.12.2011 в 11:58.
Ответить с цитированием
  #19 (permalink)  
Старый 28.12.2011, 12:10
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

Сообщение от Nekromancer
На первой странице есть алгоритм. Моё общее утверждение не нужно воспринимать как 100%-ное определение.
я его не смотрел. но,для передачи русского и английского одновременно, с набором цифр и знаков и регистра достаточно 1 байта а не двух.
Вышло ведь всё из утверждения,что при работе с языками необходимо 2 байта для одного символа -достаточно одного для полноценной работы с русским ,англ знаками пунктуации и цифрами одновременно.
Ответить с цитированием
  #20 (permalink)  
Старый 28.12.2011, 12:13
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

Сообщение от Nekromancer
Байт в программировании это 8мь бит, и я вроде как не помню устройств где это не так
были "компы" в 50-60 годах, советская разработка, у каких была логика отличная от привычных 0 и 1 ,соответственно и байт у них другой если вообще был.
http://ru.wikipedia.org/wiki/%D0%A2%...B8%D0%BA%D0%B0
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разбиение строки на десятимерный массив cbone Общие вопросы Javascript 7 23.11.2011 08:15
Как создать многомерный массив FRIE Общие вопросы Javascript 29 02.06.2010 19:14
записать массив байт на сервер karabura AJAX и COMET 1 06.08.2009 05:21