Найти в Дзене
InTheNet

Скрытые особенности компьютера: карет

^ - простой символ, который объединяет печатную машинку и компьютер.
Оглавление
Фирменное лого.
Фирменное лого.

Устройство компьютера очень интересно и многообразно. Одной из интересных скрытых особенности работы является символ ^ - карет. Разберёмся что это такое и почему это интересно.

Символ.

Для большинства пользователей карет известен в первую очередь как странный символ ^, который редко где используется. Вспомните где вы его использовали? Вероятнее всего ответ - смайлики, ну или возведение в степень. Но данный символ на самом деле гораздо важнее чем просто символ для смайликов. В паре с ним создаются так называемые управляющие символы. Например, когда Вы нажимаете кнопку ctrl, операционной системе передаётся код, который затем переводится в последовательность символов. Для ctrl код в операционной системе будет выглядеть так: ^C.

Смайлик получившийся из двух каретов, подчеркивания и скобочки.
Смайлик получившийся из двух каретов, подчеркивания и скобочки.

История.

Карет получил своё название, и во многом функционал, от пишущих машин. В них был механизм - каретка. Данное устройство двигало бумагу по бумагодержателю чтобы символы печатались постепенно, например на новой строке. В современных компьютерах сохранилось многое из того, чтобы было присуще старым, первым компьютерам. Одно из них - сходство механизма печати с печатными машинами.

Первые операционные системы создавались похожими на печатные машинки. Кроме управляющих символов, существуют также два особенных символа, передаваемых операционной системе со знаком карета.

  • Перенос каретки - этот символ выглядит как '\n' и переносит строку на новую линию. Кнопка enter.
  • Возврат каретки - в пишущих машинах данный символ возвращал каретку на начальную позицую, то есть в начало строки. То есть чтобы начать печатать с новой строки, нужно было сделать перенос каретки, а затем возврат каретки. В современных ос этот символ делает тоже самое, и обозначается '\r'.
Старая машина для печати и новая.
Старая машина для печати и новая.

На старых клавиатурах Вы могли видеть кнопку return. Она как раз и использовала возврат каретки. В современных операционных системах return вызывается по нажатию сочетания клавиш shift+enter. В текстовых процессорах вроде Microsoft word разница заключается в том, что перенос каретки выполняет переход к новому абзацу, а возврат продолжает писать в том абзаце, с новой линией.

Отличия устройства карета в разных ОС.

В текстовых файлах, написанных в операционной системе Windows, переход на новую строку, на самом деле осуществляется посредством комбинации переноса каретки и возврата. То есть это выглядит так: '\n\r', а в операционных системах на основе ядра Linux перенос строки выглядит как просто '\n'. Из-за этого небольшого отличая, читая файлы, написанные в другой операционной системе, могут возникать различного рода ошибки. Поэтому перед чтением файла, нужно воспользоваться специальными программами переводчиками, в Linux, например "dos2unix".

В операционных системах Macintosh, перевод строки осуществляется с помощью '\r'.

Разница между операционными системами.
Разница между операционными системами.

Применение.

Возврат карета обладает интересной особенностью. Текст, после него стирается, но если не делать переход на новую строку, то будет стираться уже введеный текст. Так можно делать простую анимацию в текстовых интерфейсах. Ниже будет простой пример на языке программирования python.Применение.

Простая анимация в терминале с использованием возврата каретки.
Простая анимация в терминале с использованием возврата каретки.
Исходный код программы (в виде альбома не получилось добавить из-за гифки)
Исходный код программы (в виде альбома не получилось добавить из-за гифки)

Не забывайте оставлять обратный отзыв и ставить лайк, если Вам понравилась статья!