天天看點

c語言程式設計不能用漢字嗎,為什麼中文不能用來程式設計?你知道原因嗎?

原标題:為什麼中文不能用來程式設計?你知道原因嗎?

c語言程式設計不能用漢字嗎,為什麼中文不能用來程式設計?你知道原因嗎?

學過計算機的應該都知道計算機語言經曆了機器語言,彙編(僞機器語言),進階語言三個階段。

假設我們要計算1+2(數值先不管,我們隻看+号,)。計算機可不認識什麼加号,它隻認識0和1。

計算機誕生之初,隻有人來遷就計算機,我們就假定0000 0001這段代碼表示加法,當計算機讀到這段代碼時計算機就知道它要将兩個數值進行相加了(最開始就是這麼幹的,用打孔器打孔,打個凍表示1不打表示0,然後把紙帶也即‘程式’輸入給計算機)。這就是機器語言。

c語言程式設計不能用漢字嗎,為什麼中文不能用來程式設計?你知道原因嗎?

這麼做的效率顯然效率非常低下(比如一個幾十頁的紙帶,錯打了一個孔,吼吼……),也不友善人去了解,怎麼辦呢,我們可不可以用一個短語(詞)來友善我們記憶呢?當然可以,然後約定俗成就讓“ADD(話說如果是中國人發明的,這個可能是[加]了)”替代0000 0001 來代表加法,這個時候程式大概就變成了ADD 1 2,我們将這個輸入計算機,可惜了,計算機還是不認識,仍舊需要轉換成 00000001 1 2的形式計算機才能了解,隻要能開發出門轉換的工具(核心技術),事實上就是這麼做,這個時候人隻需要關注ADD就可以了,剩下的可以不管,交給轉換工具來處理。這是彙編語言(第二階段),相對機器語言而言,更加接近自然語言,更加友善人去了解成語了。

但是彙編語言仍舊是是直接操作硬體,對人仍舊不友好,然後就出現了進階語言,進階語言仍舊需要将程式翻譯成計算機可識别的代碼,這個翻譯的過程肯定不是漫無目的(比如add,不能說我第一次翻譯成加,第二次翻譯成減吧),它仍舊需要遵從一定的規則(這個規則就是各個程式設計語言的文法[關鍵字],比如c語言的print,就是列印,當碰到這個關鍵字時就會分解成多個指令調用計算機硬體完成向計算機螢幕列印資訊)(聽到有人說中文的多意性導緻計算機不識别的,真想呵呵你們一臉!)

其實從這個角度來說,進階語言就是一套文法,然後和這套文法對應的翻譯器。這套文法怎麼實作無所謂(中文也OK),隻要你能有對應的翻譯器将這個翻譯成計算機可執行的程式……

不難看出計算機語言的發展是越來越接近人類語言,越來越友善人的了解的,是以也有人提出計算機語言的發展到最終的結果就是自然語言。

c語言程式設計不能用漢字嗎,為什麼中文不能用來程式設計?你知道原因嗎?

總結一下吧,中文程式設計肯定是可以的,問題是值不值得?有沒有必要的問題??

【看财經大咖,上9度直播】傳回搜狐,檢視更多

責任編輯: