前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >每行字符数(CPL)的起源

每行字符数(CPL)的起源

作者头像
ruanyf
发布2018-04-12 17:27:10
1.1K0
发布2018-04-12 17:27:10
举报

前几天,我收到网友小龙的Email。

他想与我讨论一个问题:

"各种计算机语言的编码风格,有的建议源码每行的字符数(characters per line)不超过72个,还有的建议不超过80个,这是为什么?区别在哪里?怎么来的?"

我一下子就被问住了。

命令行状态下,终端窗口的显示宽度,默认是80个字符,这个我早就知道,但是并不清楚原因;至于72个字符,更是从未注意过。

幸好,世界上还有Wikipedia,我在里面找到了答案

每行72个字符的限制,来源于打字机。上图是20世纪60年代初,非常流行的IBM公司生产的Selectric电动打字机。

当时,美国最通用的信笺大小是8.5英寸x11英寸(215.9 mm × 279.4 mm),叫做US Letter。打字的时候,左右两边至少要留出1英寸的页边距,因此每行的长度实际为6英寸。打字机使用等宽字体(monospaced)的情况下,每英寸可以打12个字符,就相当于一行72个字符。

早期,源码必须用打字机打出来阅读,所以有些语言就规定,每行不得超过72个字符。直到今天,RFC文档依然采用这个规定,因为它从诞生起就采用打字稿的形式。

20世纪70年代,显示器出现了。它的主要用途之一,是将打孔卡(punched card)的输入显示出来。当时,最流行的打孔卡是IBM公司生产的80栏打孔卡,每栏为一个字符,80栏就是80个字符。

上图是一张Fortran语言的源码填写单,一共有80栏,程序员在每一栏选择想要输入的字符,最多为80个字符。

然后,用机器自动生成打孔卡,在每栏选定的位置打一个孔。

计算机读取打孔卡以后,把每个孔转换为相应的字符。如果显示器每行显示80个字符,就正好与打孔卡一一对应,终端窗口的每行字符数(CPL)就这样确定下来了。

(完)

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2011年10月23日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档