stringtranslate.com

Набор символов RPL

Набор символов RPL представляет собой 8-битный набор символов и кодировку, используемые большинством калькуляторов RPL , производимых Hewlett-Packard, а также термопринтером HP 82240B . [ 1] [2] Иногда в документации его называют просто «ECMA-94», [1] [3] хотя по большей части он является надмножеством ISO /IEC 8859-1 / ECMA-94 с точки зрения печатных символов и отличается от ISO/IEC 8859-1 использованием отображаемых символов, а не управляющих символов в диапазоне кодовых точек от 0x80 до 0x9F .

Обзор

В 1986 году [3] оригинальная серия калькуляторов RPL ( серия HP-28 ), а также термопринтер HP 82240A использовали модифицированный вариант набора символов HP Roman-8 , из которого символы выше 147 не могли отображаться на калькуляторе, а только печататься. [4] [5] [6]

Это изменилось с появлением принтера HP 82240B в 1989 году [3] и серии HP 48 в 1990 году, которая поставлялась с новым набором символов, теперь основанным на ECMA 94 / ISO 8859-1 вместо HP Roman-8, но с управляющими кодами в диапазоне от 128 до 159 (от 0x80 до 0x9F), замененными дополнительными отображаемыми символами. По сравнению с ISO 8859-1, кодовая точка 127 (0x7F) показывала среднезатененный серый квадрат, как в бывшем наборе символов на основе HP Roman-8. Кодовые точки 131 (0x83) - 142 (0x8E) также были взяты из бывшего набора символов на основе HP Roman-8. В дополнение к этому, кодовая точка 31 (0x1F) использовалась для многоточия ( … ) [7] [8] а кодовые точки 169 (0xA9) и 174 (0xAE) показывали неоднозначные глифы, которые можно было рассматривать как перевернутую круговую цифру ❸ или символ авторского права ( © ) и как ❷ или символ зарегистрированной торговой марки ( ® ), соответственно. [1] [7] Эта первая версия набора символов также имела неразрывный пробел в позиции 160 (0xA0). [1] [7] [9]

Перевод из набора символов HP-48 в HP-28: [10]

В пересмотре этого набора символов в 1999 году кодовая точка 160 (0xA0) была переопределена для хранения знака евро (€) в серии HP 49/50 (включая HP 48gII ), [8] [9] [11] [12] теперь отклоняясь от ISO 8859-1. Кодовые точки 169 (0xA9) и 174 (0xAE) теперь были четко определены как содержащие символы авторского права ( © ) и зарегистрированной торговой марки ( ® ) в соответствии с ISO 8859-1, тогда как соответствующие глифы по-прежнему больше напоминали перевернутые кружочки. [8] Последним калькулятором, поддерживающим этот вариант набора символов, был HP 50g, представленный в 2006 году и снятый с производства в 2015 году.

В параллельной разработке HP 38G также использовал набор символов серии HP 48 внутри себя. Начиная с HP 39G в 2000 году, верхний индекс 3 ( ³ ) в кодовой точке 179 (0xB3) был заменен на верхний индекс -1 ( −1 ) в сериях HP 39/40 (за исключением HP 39gII , который начал использовать Unicode ). [13] Кодовая точка 160 (0xA0) также была изменена на знак евро (€) [13] в этом третьем варианте набора символов. Последним калькулятором, поддерживающим этот вариант набора символов, был HP 40gs, представленный в 2006 году и снятый с производства около 2011 года.

Hewlett-Packard никогда не определяла официальный перевод Unicode, поэтому в сообществе появилось несколько вариантов, различающихся кодовыми точками 31 (0x1F), 127 (0x7F), 128 (0x80), 129 (0x81), 133 (0x85), 134 (0x86), 158 (0x9E), 160 (0xA0), 169 (0xA9), 174 (0xAE), 178 (0xB3), 181 (0xB5) и 223 (0xDF). [14] [15] [16] [17] [18] [19] [20]

Тот факт, что эквивалент Unicode для x-bar в кодовой точке 129 (0x81) представляет собой комбинацию двух символов (x̅), может вызвать проблемы при переводе, поэтому было предложено использовать вместо этого U+0101 (ā). [18] [19] [20]

Символы, которые не могут быть разумно перекодированы, должны быть сопоставлены с кодовой точкой 127 (0x7F), подобно тому, как это делают калькуляторы при взаимодействии со старыми принтерами, такими как HP 82240A. [21] [8]

Поскольку калькуляторы позволяют переопределять шрифты (используя FONT→, →FONT, MINIFONT→, →MINIFONT), можно эмулировать другие кодовые страницы до тех пор, пока символы, доступные на клавиатуре или иным образом связанные с определенной функциональностью калькулятора, не будут заменены несвязанными символами.

Макет кодовой страницы

В следующей таблице показан набор символов HP RPL. Каждый символ показан с потенциальным эквивалентом Unicode во всплывающей подсказке. Если для ввода символа определены специальные коды HP TIO , они также приводятся. [2] [22] [7] [8] [23] Другие символы можно ввести с помощью \nnnсинтаксиса кода TIO, где nnn — это трехзначное десятичное число . [2] [7] [8] [23]

Смотрите также

Примечания

  1. ^ Вставить курсор
  2. ^ Перезаписать курсор
  3. ^ Левый
  4. ^ Верно

Ссылки

  1. ^ abcd HP 82240B Infrared Printer (1-е изд.). Корваллис, штат Орегон, США: Hewlett Packard . Август 1989. С. 17–18. Номер повторного заказа HP 82240-90014.
  2. ^ abc "HP RPL TIO Table". holyjoe.org . Архивировано из оригинала 2016-05-23 . Получено 2015-01-23 .
  3. ^ abc Nelson, Richard J. (май 2010 г.). "HP 82240B IR Printer" (PDF) . HP Solve (18). Архивировано из оригинала (PDF) 2016-09-21 . Получено 2016-09-21 .
  4. ^ HP-28S Advanced Scientific Calculator Reference Manual (PDF) (4-е изд.). Hewlett-Packard . Ноябрь 1988 г. [Октябрь 1987 г.]. С. 266–267. HP 00028-90068. Архивировано (PDF) из оригинала 2015-06-08 . Получено 2015-10-10 .
  5. ^ HP 82240A Infrared Printer (PDF) (2-е изд.). Корваллис, штат Орегон, США: Hewlett Packard , Portable Computer Division. Октябрь 1986 г. Номер повторного заказа HP 82240-90001 (82240-90008). Архивировано (PDF) из оригинала 2016-08-06 . Получено 2016-08-06 .
  6. ^ Nungester, Rick (1988-08-18). "Инфракрасный выходной преобразователь". Luc Pauwels (опубликовано 2006-10-24). Архивировано из оригинала 2016-08-06 . Получено 2016-08-06 .
  7. ^ abcde HP 48G Series – User's Guide (UG) (8-е изд.). Hewlett-Packard . Декабрь 1994 [1993]. С. 2–5, 27–16. HP 00048-90126, (00048-90104). Архивировано из оригинала 2016-08-06 . Получено 2015-09-06 .[1]
  8. ^ abcdef Справочное руководство пользователя графического калькулятора HP 50g / 49g+ / 48gII (2-е изд.). Hewlett-Packard . 14 июля 2009 г. [2005]. стр. 3–159, 3–160, J-1, J-2. HP F2228-90010 . Получено 10 октября 2015 г.PDF-файл с возможностью поиска
  9. ^ ab Paul, Matthias R. (2001-05-08). "Re: HP48: алгебраический режим?". Группа новостей : comp.sys.hp48. Архивировано из оригинала 2024-03-17 . Получено 2024-03-17 . […] Существует бесконечный список вещей, которые являются положительными, но только очень немногие вещи, которые мне не нравятся или которые мне не нравятся в HP48G(X) . […] в наборе символов нет валюты евро — я когда-то предлагал добавить ее в кодовую точку 160 (в любом случае, это очень простительно, так как символ не был определен до 1997 года) […]
  10. ^ Дреер, Крис (2016-09-06). "Re: Вопросы относительно набора символов HP Roman". Форум статей HP. Музей калькуляторов HP (MoHPC). Архивировано из оригинала 2016-09-05 . Получено 2016-09-06 .
  11. ^ Раутенберг, Вольфганг (2004-05-09). "IOMAN - Небольшой, но мощный менеджер ввода-вывода для HP49G/HP49g+". 5.2004. Архивировано из оригинала 2016-08-02 . Получено 2016-08-02 .[2]
  12. ^ Prange, James M. (2006-11-02). "Re: Эти сплошные блочные символы в меню символов". Архив форума HP 16. Музей калькуляторов HP (MoHPC). Архивировано из оригинала 2016-08-02 . Получено 2016-08-02 .
  13. ^ ab Croft, Colin (декабрь 2006 г.). Графические калькуляторы hp 39gs и hp 40gs. Освоение hp 39gs и hp 40gs — руководство для преподавателей, студентов и других пользователей hp 39gs и hp 40gs (PDF) . 1.0 (1-е изд.). Hewlett-Packard Development Company, LP стр. 26, 221, 333. Номер детали HP F2224-90010. Архивировано (PDF) из оригинала 2016-03-03 . Получено 2016-08-06 . Оригинальный hp 38g имел только функцию INVERSE(...), а оператор -1 был добавлен для удобства в hp 39g , выпущенном в 2000 году. Чтобы сделать это, создателям пришлось позаимствовать один из существующих неиспользуемых символов, символ 3, и преобразовать его в оператор -1. Однако они забыли изменить его в представлении CHARS, и эта ошибка так и не была исправлена ​​ни в одной из последующих моделей!
  14. ^ Леманн, Александр (2000-08-16). "Файл описания кодировки символов HP48". 1.02. Коста Костис. Архивировано из оригинала 2016-08-01 . Получено 2016-08-01 .
  15. ^ "Кодовые страницы / Таблица ASCII Кодировка символов HP48". ASCII.ca. 2016 [2006]. Архивировано из оригинала 2006-05-24 . Получено 2016-08-01 .
  16. ^ Беттанкур, Ребекка Г. (2014) [1999]. "Кодировки символов - Устаревшие кодировки - HP48". Kreative Korporation . Получено 01.08.2016 .
  17. ^ Дреер, Крис (2012-12-09) [2012-07-12]. "Преобразование текста HP48 в Unicode". comp.sys.hp48 . Получено 2016-08-01 .
  18. ^ ab Dreher, Chris (2012-07-11). "Mapping HP48 Text to Unicode". Статьи HP48 . Архивировано из оригинала 2016-08-01 . Получено 2016-08-01 .
  19. ^ ab Dreher, Chris (2013-01-16). "Mapping HP48 Text to Unicode". Форум статей HP. Музей калькуляторов HP (MoHPC). Архивировано из оригинала 2016-08-01 . Получено 2016-08-01 .
  20. ^ ab Bouget, Jean-Charles; Lapilli, Claudio Daniel (2016-06-15) [2015]. "Font8_StyleA.txt". newRPL (альфа-ред.). Архивировано из оригинала 2016-08-08 . Получено 2016-08-08 .
  21. ^ Prange, James M. (2002-06-04). "Re: Printers". Архив форума HP 08. Музей калькуляторов HP (MoHPC). Архивировано из оригинала 2016-08-06 . Получено 2016-08-02 .
  22. ^ Heinz, Sr., Michael W. (2005). "HP-ASCII и триграфы". Архивировано из оригинала 2016-08-02 . Получено 2016-08-02 .
  23. ^ ab Finseth, Craig A. (2012-02-25). "chars". Архивировано из оригинала 2017-12-21 . Получено 2017-12-21 .

Дальнейшее чтение