Share to: share facebook share twitter share wa share telegram print page

 

Возврат каретки

Возвра́т каре́тки — управляющий символ или механизм, используемый для возвращения позиции устройства к началу строки. Часто обозначается как CR (от англ. carriage return).

Происхождение термина

Каретка (от итал. carretta — тележка) — узел машины или механизма, несущий ряд деталей и передвигающийся по направляющим или вращающийся в подшипниках. В пишущих машинках имела вид рамки с валиком для бумаги[1].

Пишущие машинки

Каретка механической пишущей машинки представляет собой конструкцию, составленную из шасси для ударяющих по печатающей ленте молоточков с литерами на ударной стороне и держателя печатающей ленты, держащего печатающую ленту над бумагой на уровне печатаемой строки. При этом каретка пишущей машинки устанавливается на рельс, по которому горизонтально смещается в слева-направо в процессе печати очередной текстовой строки. Так вот первоначально термин «возврат каретки» относился к этому механизму, возвращающему каретку в исходное положение — в начало следующей строки. Механизм возврата каретки приводился в действие рычагом. Чаще всего рычаг также приводил в действие механизм, продвигавший бумагу на следующую строку. Электрический возврат каретки впервые появился на электромеханических пишущих машинках фирмы «Electromatic» в 1929 году. Позже эту фирму поглотила IBM и стала выпускать эти машинки под своей маркой как «IBM Electric typewriter[англ.]»[2][3]. Клавиша, выполнявшая это действие, обыкновенно обозначалась «возврат каретки» (англ. carriage return) или «возврат» (return). В других пишущих машинках, в том числе IBM Selectric, печатающая головка двигалась при печатании, а бумага оставалась неподвижной. В них эта клавиша возвращала влево печатающую головку и иногда называлась «возврат держателя» (англ. carrier return)[источник не указан 1637 дней].

Позже для обозначения этой клавиши был введён знак ↵ (U+21B5).

Телекоммуникации, компьютеры

Управляющий символ возврата каретки ведёт свою родословную от телетайпов. В конце 1890-х годов Дональд Мюррей[англ.] сконструировал прообраз телетайпа — телеграфный аппарат, оснащённый QWERTY-клавиатурой и способный печатать сообщение на бумажном листе. Для этого потребовалось добавить в код Бодо дополнительные управляющие символы: перевод строки (англ. line feed, LF) и возврат каретки (англ. carriage return, CR)[4].

Функции возврата каретки и перевода строки были разделены по двум причинам:

  • Сам по себе возврат каретки предоставлял возможность печати новой строки поверх имеющейся. Это могло быть использовано для получения полужирного шрифта, подчёркиваний, знаков под ударением, зачёркнутого текста и некоторых составных знаков. В дальнейшем, когда принтеры стали графическими, принтер мог вернуть каретку, а потом прокрутить бумагу на любое желаемое расстояние — в том числе ровно на высоту каретки или на пол-иголки (для качественной двухпроходной печати).
  • На частотах в десятки бод возврат каретки был самой длинной операцией, а буферизации, чтобы на это время приостановить печать, не было[источник не указан 1547 дней]. Поэтому время, употреблённое на перевод строки, не было потрачено зря (нередко требовалось несколько дополнительных нажатий клавиши, прежде чем возврат каретки был произведён и можно было печатать дальше). Поэтому возврат каретки всегда производился первым, до перевода строки.

В ранних компьютерах для ввода информации использовались обычные телетайпы, однако в 1963 году специально для ввода и хранения данных компьютерами была разработана первая версия кодировки символов ASCII, в которой символы перевода строки и возврата каретки были размещены в кодовых позициях 0x0A и 0x0D. В последующих кодировках, в том числе в Юникоде, эти управляющие символы расположены на тех же местах.

Многие компьютерные программы используют для обозначения конца строки символ возврата каретки отдельно или вместе с символом перевода строки, но для этой задачи используются и другие символы; другие используют его только для разбиения абзаца. Некоторые стандарты, вводящие собственные обозначения для управления строками и абзацами (например, HTML), и многие языки программирования обрабатывают символы возврата каретки и перевода строки как пробел.

Для обозначения символа возврата каретки в некоторых программах, которые игнорируют его, если он введён напрямую, возможно использование эмуляции ввода управляющего символа с терминала — ^M (Ctrl+M). В Си и многих других языках программирования \r обозначает возврат каретки[5]. На ранних кириллических клавиатурах соответствующая клавиша маркировалась «ВК».

Как правило, клавиша возврата каретки располагается в правой части клавиатуры и отвечает как за возврат каретки, так и за перевод строки, а также за ввод команды. В терминалах могли использоваться раздельные клавиши для возврата каретки и перевода строки, а также специальный режим, в котором генерировались оба этих символа. На IBM PC-совместимых и современных USB HID-клавиатурах скан-код клавиши не привязан к коду соответствующего ей символа: за перевод скан-кодов в коды символов отвечает операционная система, поэтому генерируемый при нажатии клавиши Enter управляющий символ (или их последовательность) зависит от используемой системы. В Windows это традиционно CR+LF, в классической Mac OS — только CR, а в Unix-подобных системах — только LF. Отсутствие единого стандарта часто приводит к проблемам, когда приходится передавать файлы между разными операционными системами[6][7][8].

Примечания

  1. Большая советская энциклопедия. — 3-е изд. — М.: «Советская энциклопедия», 1973. — Т. 11. — 608 с. — 629 000 экз.
  2. Remington and the Electromatic Архивная копия от 4 октября 2020 на Wayback Machine. Retrieved 2016-08-28
  3. The National Museum of American History: Electromatic Typewriter Архивная копия от 13 апреля 2019 на Wayback Machine. Retrieved 2016-08-28
  4. New Zealand’s Donald Murray: The Father of the Remote Typewriter Архивная копия от 7 апреля 2018 на Wayback Machine, Australian Typewriter Museum, Canberra, 9 March 2012; accessed 10 March 2012
  5. Eric S. Roberts. The Art and Science of C. — Addison-Wesley, 1995. — с. 311. (англ.)
  6. Этот день мы приближали, как могли — блокнот в Windows 10 стал понимать юниксовый перевод строки. Habr.com. Дата обращения: 9 августа 2020. Архивировано 13 сентября 2020 года.
  7. Саша Катушкова. Следите за концом строки. html academy. Дата обращения: 9 августа 2020. Архивировано 29 сентября 2020 года.
  8. The Great Newline Schism. CODING HORROR. Дата обращения: 9 августа 2020. Архивировано 24 сентября 2020 года.

Information related to Возврат каретки

Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9

Portal di Ensiklopedia Dunia

Kembali kehalaman sebelumnya