Ⅰ 計算機是如何識別計算機語言的語法規則的
計算機的語言經歷了幾個階段,C語言也不是一下子就出現的。
目前計算機能夠直接執行的只有機器語言,所謂機器語言,就是人們熟知的01代碼,在機器中實際上表現為高低電平。
很顯然,01代碼對於人類的記憶是很麻煩的,於是接著機器語言,出現了匯編語言,匯編語言使用ASCII字元串來代替了特定的01代碼,這樣就便於了人們的記憶和程序設計,但是匯編語言並不是機器語言,計算機無法直接執行它,所以還必須經過匯編過程,匯編過程可以人工匯編,也可以機器匯編,人工匯編就是人工查表,找出匯編代碼對應的機器代碼將匯編代碼翻譯為機器代碼,機器匯編和人工匯編的過程一樣,只不過由機器查表代替人工查表。
匯編仍然有其局限性,那就是指令太多,而且非常依賴於目標機器,因此可移植性非常差。所以出現了C語言,C語言就非常接近人類語言了,為人類進行程序設計帶來了極大便利,而且使用C語言不需要太多關注目標機器。但是C語言必須經過編譯才可以運行,而這些編譯器並不是人人都能寫出來的,我們能夠使用C語言都得感謝最初的那些計算機大牛們。一般情況下,C語言會被先翻譯為匯編語言,再經過匯編器翻譯為機器語言,這樣計算機就可以直接運行了。
然後隨著發展的需要,出現了面向對象程序設計。這個時候出現了更多的程序語言,編譯型的,解釋型的……一種程序語言的出現和興起都依賴於時代需求。
現代編程,已經變得非常容易,因為有各種IDE(集成開發環境)可用,所謂IDE,說白了就是一個代碼編輯器(類似於記事本,比記事本強大)加上一個編譯器或者說解釋器,你編輯代碼保存,然後點一點滑鼠就可以完成編譯(生成機器語言代碼,對於人類沒有可讀性)。
電腦並沒有存放語法規則的地方,但是編譯器會在執行編譯之前檢查你的代碼語法,如果有問題它會提示你,如果沒有就會進行編譯。
想要知道明白更多,應該網路或者谷歌關鍵詞……如果有興趣應該選一種編程語言進行學習,那樣你會有更加深入的了解的……