关于回车换行的故事

最早,打字机上的打字位置是固定的,回车兼换行的扳手用于将承载纸滚筒的机架(Carriage)移到最右边,以便令印字位置对准一行的开头,同时顺便转动滚筒,换至下一行。后来,当打字机的滚筒不再横向移动,改由承载印字头的字车(Carriage)移回到本行的起始位置。


在计算机出现之前,有一种叫做电传打字机的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这些字符将丢失。于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车”(Carriage Return, CR),告诉打字机把打印头定位在左边界;另一个叫做“换行”(Line Feed, LF),告诉打字机把纸向上移一行(打印头相对向下移一行)。这就是“换行”和“回车”的来历,从它们的英语名字上也可以看出一二。


之后计算机发明了,这两个概念也就被迁移到计算机上。那时,存储器很贵,一些科学家认为在每行结尾加两个字符太浪费了,加一个就可以,于是出现了分歧。

在Unix或Unix相容系统(GNU/Linux, Mac OS X)中,每行结尾只有“<换行>”(LF),即“\n”;

在老旧的Mac系统里面,每行结尾是“<回车>”(CR),即“\r”;

Windows和大部分非Unix系统延续了传统的英文打字机模式,每行仍以“<回车><换行>”(CR+LF)结尾,即“\r\n”。


转自:http://blog.csdn.net/alexmayer/article/details/7498120 有修改

你可能感兴趣的:(关于回车换行的故事)