Каков надлежащий технический термин для персонажей "high ascii"? - PullRequest
5 голосов
/ 02 октября 2009

Каков технически правильный способ обозначения символов "high ascii" или "extended ascii"? Я имею в виду не просто диапазон 128-255, а любой символ за пределами диапазона 0-127.

Часто их называют диакритическими знаками, акцентированными буквами, которые иногда называют «национальными» или неанглийскими символами, но эти имена либо неточные, либо охватывают только часть возможных символов.

Какой правильный, точный термин, который сразу узнают программисты? И какой английский термин лучше всего использовать при общении с нетехнической аудиторией?

Ответы [ 8 ]

17 голосов
/ 02 октября 2009

"Не-ASCII символы"

2 голосов
/ 02 октября 2009

Коды символов ASCII выше 127 не определены. Многие разные поставщики оборудования и программного обеспечения разработали свой собственный набор символов для значения 128-255. Некоторые выбирают символы для рисования, одни выбирают символы ударения, другие выбирают другие символы.

Юникод - это попытка создать универсальный набор кодов символов, который включает символы, используемые в большинстве языков. Это включает в себя не только традиционные западные алфавиты, но и кириллицу, арабский, греческий и даже большой набор символов китайского, японского и корейского, а также многие другие языки, как современные, так и древние.

Существует несколько реализаций Юникода. Один из самых популярных если UTF-8. Основной причиной такой популярности является то, что она обратно совместима с ASCII, коды символов от 0 до 127 одинаковы как для ASCII, так и для UTF-8.

Это означает, что лучше сказать, что ASCII является подмножеством UTF-8. Символы с кодом 128 и выше не являются ASCII. Это может быть UTF-8 (или другой Unicode) или пользовательская реализация поставщика оборудования или программного обеспечения.

0 голосов
/ 04 июля 2017

Взятые слова с онлайн-ресурса ( Крутой сайт, хотя ), потому что я считаю полезным и уместным писать и отвечать.

Сначала включались только заглавные буквы и цифры, но в 1967 году были добавлены строчные буквы и некоторые управляющие символы, образующие так называемый US-ASCII, то есть символы от 0 до 127. Таким образом, этот набор, состоящий всего из 128 символов, был опубликован в 1967 году как стандарт, содержащий все необходимое для написания на английском языке.

В 1981 году IBM разработала расширение 8-битного кода ASCII, называемое «кодовая страница 437», в этой версии были заменены некоторые устаревшие управляющие символы для графических символов. Также было добавлено 128 символов с новыми символами, знаками, графикой и латинскими буквами, всеми знаками препинания и символами, необходимыми для написания текстов на других языках, таких как испанский. Таким образом, были добавлены символы ASCII в диапазоне от 128 до 255.

IBM включает поддержку этой кодовой страницы в аппаратное обеспечение своей модели 5150, известной как «IBM-PC», которая считается первым персональным компьютером. Операционная система этой модели «MS-DOS» также использовала этот расширенный код ASCII.

0 голосов
/ 27 мая 2010

Битовая последовательность, которая не представляет символ ASCII, не является символом Unicode.

В зависимости от используемой кодировки символов это может быть:

  • недопустимая битовая последовательность
  • символ Юникода
  • символ ISO-8859-x
  • символ Microsoft 1252
  • символ в другой кодировке
  • ошибка, двоичные данные и т. Д.

Единственное определение, которое подходит для всех этих ситуаций:

  • Не является символом ASCII

Будучи крайне педантичным, даже «не-ASCII-символ» точно не подходит для всех этих ситуаций, потому что иногда битовая последовательность вне этого диапазона может быть просто недопустимой битовой последовательностью, а не символом вообще. 1025 *

0 голосов
/ 02 октября 2009

Если вы говорите «High ASCII», вы по определению находитесь в диапазоне от 128 до 255. Сам ASCII определяется как однобайтовое (фактически 7-битное) символьное представление; использование старшего бита для учета неанглийских символов произошло позже и привело к появлению кодовых страниц, которые определяли конкретные символы, представленные конкретными значениями. Любой многобайтовый (> 255 десятичное значение) не является ASCII.

0 голосов
/ 02 октября 2009

Вы можете использовать такие термины, как «trans-ASCII», «supra-ASCII», «ultra-ASCII» и т. Д. На самом деле «meta-ASCII» будет даже лучше, так как он ссылается на мета-бит.

0 голосов
/ 02 октября 2009

«Расширенный ASCII» - это термин, который я бы использовал, что означает «символы за пределами исходного 0-127».

Unicode - это один из возможных наборов расширенных символов ASCII, и он довольно большой.

UTF-8 - это способ представления символов Unicode, обратно совместимый с оригинальным ASCII.

0 голосов
/ 02 октября 2009

Не-ASCII символы Юникода.

...