其實,這還得從打字機說起,在計算機還沒有出現之前,有一種叫做電傳打字機(Teletype Model 33)的機械打字機,每秒鐘可以打10個字符。但是它有一個問題,就是打完一行換行的時候,要用去0.2秒,正好可以打兩個字符。要是在這0.2秒里面,又有新的字符傳過來,那么這個字符將丟失。
于是,研制人員想了個辦法解決這個問題,就是在每行后面加兩個表示結束的字符。一個叫做“回車”,告訴打字機把打印頭定位在左邊界,不卷動滾筒;另一個叫做“換行”,告訴打字機把滾筒卷一格,不改變水平位置。
打字機每打滿一行之后,需要手動把打字的針頭移到下一行的起始位置,和我們現在碼字時的原理是相同的。
這就是“換行”和“回車”的由來。
回車二字正是對應了carriage return這兩個英文單詞。
而這一過程就叫做carriage return,翻譯而來就成了回車。
其實,歷史上,回車鍵曾用過CR、Return的字樣,后來才統一確定為Enter。
這也解釋了為什么蘋果電腦中的回車鍵是return和enter的原因。
#我要上頭條#
文開始前,圖圖想先問大家個問題:
大家知道鐵道上鐵軌的間距是根據什么定的嗎?
有一種說法特別有意思,
說火車鐵軌的間距是由有軌電車的軌道間距決定的。
而后者,又是由馬車輪子間距決定的。
馬車輪子的間距,
又是由兩匹馬并排奔跑時的馬屁股寬度決定的。
因此可以得出結論,
現代火車的軌道間距是由馬屁股的寬度決定的。
這個結論聽起來似乎有點不咋靠譜,
但似乎又有些道理。
有好事者甚至還將其歸結為一個理論,
叫做——
路徑依賴
意思是技術具有慣性,
一旦選擇了某種技術方案,
慣性的力量會使這一選擇不斷自我優化,
很難輕易切換到別的更優的方案上。
不過,
在做這期科普前,圖圖找了很多資料。
然而,
并沒有找到“鐵軌間距是由馬屁股決定的”權威資料。
所以這個說法我們就聽聽得了。
但是路徑依賴這個理論還是很靠譜的。
提出這個理論的人還獲得了諾貝爾獎。
不過這個說法過于學術,
我們就將上面的例子稱之為——
“馬屁股效應”
在計算機界有很多“馬屁股效應”的例子
今天給大家講一個比較典型的例子——
Enter回車鍵
很多人會有這樣的疑問:
回車?
回哪門子的車?
大家每天都在敲鍵盤,
回車鍵的作用是讓光標回到下一行的開始處,
所以這個“回”字很好理解。
但是“車”在哪呢?
原來早在計算機史前時代,
打字機就出現了。
每敲一個按鍵,
都會帶動機械臂把對應的字母通過色帶打到紙上,
每打一個字符,紙就要向左移動一點,
以便打印下一個字符。
可是紙自己不會動,
于是紙被安排在一個叫“字車”的可移動部件上。
每打一個字符,字車就要向左移動一點,
紙也就跟著往左移一點。
當打滿一行文字后,打字員就要用左手推動“字車”,
回到(return)一行的起始位置,
這個動作就是所謂的回車。
“車”就是“字車”的意思。
后來在改進版的電動打字機上,
人們增加了一個直接起“回車”作用的按鍵,
稱為“回車鍵”。
再后來,工程師們改造了電動打字機,
使之成為早期電腦的鍵盤,
回車鍵的稱呼就這么一直延續了下來。
可以看出來,
手動回車的“馬屁股”深刻影響了回車鍵的稱呼,
這就是Enter鍵為什么叫回車的原因了。
寫在后面:
文章看完了吧,但先別走。
給大家介紹一下我們這一檔新欄目——【圖大明白】。
跟各位編程老師相處時間久了,我的同事某圖覺得自己知識面太廣,儲備量實在太豐富。
整個圖都膨脹了。
昨天跟我們說,辦公室舞臺太小,已經不太適合他這種咖位的“大明白”發揮了。
于是,在和編輯部的同事們溝通數輪后,我們決定給他量身打造一檔欄目,就叫【圖大明白】。
不一定每天你都見到某圖炫耀他的知識,
但是我們相信,經由他打理這個欄目,會給你的一些有趣、有料、有梗的意外驚喜。
幾天一位粉絲評論:“我一直想問電腦鍵盤,誰把那個輸入或者確認鍵翻譯成回車,回車啥意思?”
其實,“回車”這個詞語真的很優秀!
在解答之前,我們需要了解的一個小知識就是:回車、鍵盤是從打字機演化而來的,它有兩種形式:“Return”或者“Enter”,它的意思是復位、歸位或者進入——而不是確定!
由于拉丁字母只有簡單的26個字母,所以非常方便記錄文件,因為不管是什么樣的單詞,都可以通過這26個字母進行組合(而這也正是漢字唯一不能與拉丁字母相比較的地方),只需要將這26個字母全部羅列出來,就能夠實現通過組合將所有的英文打印在紙張上面,從而實現將文字快速“印刷”在紙張上面,只需要簡單裝訂,就能夠變成一本書,極大的方便了知識與技術的傳播。
漢字在這方面就不能與之相比了,雖然構造成漢字的筆劃同樣只有幾種,但是其組合方式和變形結構卻有多種,因此在計算機沒有普及之前,中文很難通過打字機實現高效的文字打印。
這臺古董機上的“回車”已經丟失了。
言歸正傳,打字機的工作方式是通過敲擊鍵盤上的某一個按鍵,該按鍵對應字符的字模就會撞擊到色帶上,從而在紙張上面打出該字符。注意一個細節,那就是字模撞針每一次撞擊的位置是固定不變的,只有那張紙會移動!而紙張是固定在這個滾筒上面,而整個滾筒和色帶都位于所謂的“字車”上面!之所以叫做字車,是因該部件下方是由齒輪帶動,就像一個可以前后移動的小“車”子。
由于當時雖然出現了打字機,但是每一張紙都是有固定長度的,它并沒有人工智能,它無法確切地知道應該在什么時候換行,所以就必須由打字員手工切換“換行”+“回到每一行的首頁”——也就是這個“字車”重新回到每一行的起始部位。您可以看一下打字機的工作模式:
<script src="https://lf3-cdn-tos.bytescm.com/obj/cdn-static-resource/tt_player/tt.player.js?v=20160723"></script>
而早期打字機上面的“字車回位”的拉桿為了方便使用,都做成了“L”形,或者近似于“L”型。
久而久之,并且隨著打字機在世界上的普及,為了方便那些不認識英文單詞的人,所以就在“Return”上面做了一個小小的“?”標志,讓它來代表著“字車回位”。
字車回位,回位字車,“回車”真的是“回”一輛“車”,所以“回車”這個名字翻譯得非常優秀!
隨著從機械打字機到電子打字機,再到現在的計算機鍵盤的一代代過渡,代表著歸位Carriage Return的“回車”鍵也跟著繼承了下來,因為不管是在哪一種設備里,它都代表著“換行”——另起一行,但是請注意,“回車”并不是“確定”的意思,是“在確認輸入的內容后”,“進入”下一個頁面或者下一個步驟!