CRLF
En informática, CRLF se refiere a la combinación de dos códigos de control: CR (retorno de carro) y LF (salto de línea), uno detrás del otro; normalmente con el objetivo de crear una nueva línea.
Historia
[editar]El origen del par CR-LF está en las máquinas de escribir, en donde, al acabar de escribir una línea, hacen falta dos movimientos para pasar a la siguiente:
- El retorno de carro (CR), que consiste en empujar el carro (el cilindro horizontal donde se apoya el papel) hacia la izquierda, al acabar de escribir en la línea actual.
- El salto de línea (LF), que consiste en girar el carro un poco para que el papel se desplace una línea.
Estas dos acciones se hacen seguidas mediante una sola palanca.
Las máquinas de escribir eléctricas cambiaron esta palanca por una tecla que hace las dos funciones, a la que llamaron sólo "Return" y etiquetaron con ↵. Los primeros teclados de ordenador también incluyeron esta tecla, y actualmente está en todos los teclados.
Por analogía con la máquina de escribir, se creyó que en informática también iba bien representar una nueva línea mediante CRLF, aunque más adelante se comprobó que era mejor simplificarlo. Véase nueva línea para más detalles.
Usos
[editar]Hoy en día, los sistemas operativos DOS y Microsoft Windows siguen usando CRLF como marcador de nueva línea, mientras que el resto usan códigos más simples.
Algunos de los primeros protocolos de red, que transmitían principalmente texto, establecieron que el terminador de línea debía ser CRLF y no otro. Son ejemplos HTTP, FTP, IRC, o SMTP, que marca el final del mensaje mediante CRLF.
Representación
[editar]CRLF es simplemente CR seguido de LF, por tanto su codificación es en hexadecimal 0D 0A, o 13 10 en decimal.
Hay que destacar que esto son dos códigos, y los programas que usan CRLF han de tener un comportamiento definido respecto a qué pasa cuando se usa sólo un CR o sólo un LF. Por ejemplo, el protocolo HTTP define que cada línea de la cabecera ha de acabar en CRLF, pero que ni CR ni LF pueden aparecer entre medio cuando se pide una URI.