Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Клуб программистов > Свободное общение
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.11.2009, 05:05   #1
Altera
Старожил
 
Аватар для Altera
 
Регистрация: 29.01.2008
Сообщений: 2,406
По умолчанию Кодирование симвОлов

Всем привет!
Сабж следующий:
Я читал про кодировки ASCII, ANSI, Unicode и т.д. но не понял некоторых вещей:

Для начала ASCII.
Цитата:
Сообщение от Wikipedia
Наложение символов
Благодаря символу BS (возврат на шаг) на принтере можно печатать один символ поверх другого. В ASCII было предусмотрено добавление таким образом диакритики к буквам, например:
  • a BS ' → á
  • a BS ` → à
  • a BS ^ → â
  • o BS / → ø
  • c BS , → ç
  • n BS ~ → ñ
BS это какой символ? Backspace? Т.е. #08? И один такой наложенный символ занимает 3 байта? Как я понял, нет: сунул символ á в Bred3 и он его отобразил как a', т.е. как 2 символа. Потом выяснилось (при помощи editPlus-а) что в ANSI нельзя сохранить такой символ. Нормально только в Unicod-е получилось.

Тогда на кой там это написано про BS символ?
Про ANSI прочитал, что она — Та же ASCII но ещё и с кириллицей.

Короче хочу знать про кодировки по-больше.

p.s. Ещё читал про таблицы кодирования, но ничего не понял. Не понал почему юникоду они не нужны...


Заранее благодарен!
Altera вне форума Ответить с цитированием
Старый 24.11.2009, 08:38   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Если не ошибаюсь на Эпсонах матричных был обработчик Escape команд
Посылаешь #27 и далее команду, и он там не только назад возвращаться мог, но и такие выкрутасы делал...
Порой инет на чтиво по Escape командах.
А даже в мануале матричных принтеров должно быть.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.11.2009, 08:43   #3
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Если не ошибаюсь на Эпсонах матричных был обработчик Escape команд
Посылаешь #27 и далее команду, и он там не только назад возвращаться мог, но и такие выкрутасы делал...
Порой инет на чтиво по Escape командах.
А даже в мануале матричных принтеров должно быть.
Не только в Epsonax. Он поддерживался во многих принтерах. Поддержка этого режима была на уровне ДОСа и относилась не к принтерам в частности, а теминалам в общем (можно было использовать и использовалось для вывода на экран, например в цвете и т.д.).
Кажись был термин Escape-последовательность.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 24.11.2009, 08:49   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Благодаря символу BS (возврат на шаг) на принтере можно печатать один символ поверх другого
ключевое слово здесь - НА ПРИНТЕРЕ
кроме того, это, имхо, очень старая статья.
Когда-то (впрочем кое-где они есть и сейчас) имелись матричные принтеры. Там печать осуществлялась просто - послали символ - он напечатался. послали. BS - каретка сдинулась на один символ к началу строки. Опять послали код симола - он напечатался... и всё..

Сейчас же совсем другие времена и другие технологии.

А для хранения всяких "хитрых" буковок надо использовать соответствующие им кодовые таблицы,
да и логичнее использовать UNICODE - это и современно, да и придумано как раз для решения подобных задач.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 24.11.2009, 09:00   #5
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Сообщение от Altera Посмотреть сообщение
p.s. Ещё читал про таблицы кодирования, но ничего не понял. Не понал почему юникоду они не нужны...
Дык ты спроси у Гугла зачем придумали Юникод. Вот собственно и будет ответом на твой вопрос.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 24.11.2009, 13:11   #6
Altera
Старожил
 
Аватар для Altera
 
Регистрация: 29.01.2008
Сообщений: 2,406
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
ключевое слово здесь - НА ПРИНТЕРЕ
Аааа, точно. А я и не обратил внимания

Кажется я понал, зачем нужны таблицы. Что-бы выражать через одно и тоже значение байта разный символы. А в юникоде места на всех хватит...
Altera вне форума Ответить с цитированием
Старый 24.11.2009, 13:28   #7
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Ничего подобного. НА ПРИНТЕРЕ не ключевое слово.

Цитата:
Там печать осуществлялась просто - послали символ - он напечатался. послали.
Это относится к терминалам в общем, а не только к принтерам. В ДОСе BS можно использовать для вывода на экран.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 24.11.2009, 13:48   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Это относится к терминалам в общем, а не только к принтерам. В ДОСе BS можно использовать для вывода на экран.
это не совсем так.
нет, безусловно, BS действительно отрабатывал - "СТИРАЯ" предыдущий символ. Но, даже если бы он предыдущий символ не стирал, вывод нового символа на место старого привёл бы к перерисовке предыдущего значения. Поэтому, в терминале DOS получить диакретические значки на экране так просто не получится...

p.s. впрочем. мне кажется, что мы отклонились от темы вопроса. тем более, что TC уже всё правильно понял!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 24.11.2009, 13:49   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Это относится к терминалам в общем, а не только к принтерам. В ДОСе BS можно использовать для вывода на экран.
Вот дать бы тее в репу плюсиком, да не могу...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.11.2009, 14:13   #10
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Stilet
Цитата:
Сообщение от Utkin
Это относится к терминалам в общем, а не только к принтерам. В ДОСе BS можно использовать для вывода на экран.
Вот дать бы тее в репу плюсиком, да не могу...
Виталий, таким образом, я ошибался, когда говорил, что в терминале DOS с помощью BS нельзя получить диакритические знаки?!

я не пытаюсь спорить (ибо я, возможно, и не прав!), просто пытаюсь разобраться...
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Побитовое кодирование JeyKip Общие вопросы C/C++ 6 19.09.2009 15:08
кодирование путем повторения символов катерина_к Паскаль, Turbo Pascal, PascalABC.NET 2 12.05.2009 21:55
Кодирование asil Помощь студентам 1 02.05.2009 20:48
Кодирование. Blizzz Общие вопросы Delphi 5 19.01.2009 18:28
Кодирование Mss_Smith Помощь студентам 3 17.04.2007 14:46