<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                **自然語言**是人類講話使用的語言,如英語、西班牙語和法語等。雖然人們總要給自然語言加上一些規則,但自然語言并非人類設計,它們是自然演化而來的。 **形式語言**是人們為特定應用設計的語言。例如,數學家使用的記號就是一種便于表示數字與符號關系的形式語言。化學家也使用一種形式語言來表示分子的化學結構。最重要的是: > **編程語言是人為設計的用來表達計算的形式語言。** 前面也提到過,形式語言有嚴格的語法規則。比如3+3=6是符合語法的數學語句,而3=+6$則不是。同樣*H*2*O*是符合語法的化學式,但2*Zz*不是。 > 這里的兩個2都是下標,在Markdown語法中無法表示。下段同。——譯者注 語法規則包含兩個方面:標識符與結構。標識符是語言的基本元素,像單詞、數字以及化學元素等。3=+6$的一個錯誤是,至少據我所知$不是數學上合法的標識符。類似的,2*Zz*也是非法的,因為沒有縮寫為*Zz*的化學元素。 第二種語法錯誤是句子結構上的,即標識符的排列方式。語句3=+6$結構上也是非法的,因為加號不能直接放在等號后面。類似地,化學式中的下標必須在元素名后面,而不能在前面。 閱讀英語的句子或者形式語言的語句時,必須分析句子結構(使用自然語言時,你會下意識地這樣處理)。這個過程叫做**解析**。 例如,當你聽到“The other shoe fell”這句話時,你會知道“the other shoe”是主語而“fell”是動詞。分析完句子結構,你就理解了它的意思,即句子的語義。假設你知道“shoe”是什么,也知道“fall”的意義,你就能理解句子的大體含義。 雖然形式語言和自然語言有很多共同點,如標識符、結構、語法和語義,但是它們仍然有很多不同點: **歧義**:自然語言常有歧義,人們需要根據上下文和其他信息來理解。而形式語言天生就是清晰無二義的,也就是說不管上下文是什么,任何語句都有一個精確的意義。 **冗余**:為了彌補歧義問題并減少誤解,自然語言引入了很多冗余,結果就是語言常常很冗長。形式語言冗余少些,更加簡潔。 **字面意義**:自然語言有很多成語和隱喻。比如我說“The other shoe fell”,可能不是說鞋,也沒有什么東西掉下來。而形式語言語句的含義和字面意義是完全一致的。 說著自然語言長大的我們,通常都要經歷一段痛苦的時期才能適應形式語言。從某些方面來說,自然語言和形式語言的差別就像詩歌和散文的差別,而且可能還有過之無不及: **詩歌**:選詞既要求發音,又要求含義,整首詩營造出一種效果或情感響應。歧義不僅常見,很多時候是有意為之。 **散文**:詞匯的字面意思更加重要,而且句子結構也更能表意。相對于詩歌,散文更經得起推敲,但仍然會存在歧義。 **程序**:計算機程序的含義是無歧義的,和語句的字面意思一致,通過對標識符和結構的分析可以完整地理解。 關于閱讀程序(或其他形式語言)提幾點建議:首先,形式語言比自然語言難懂得多,所以讀起來會花費更長的時間。其次,結構非常重要,從上到下、從左到右地閱讀并不見得管用。相反,要學會在頭腦中分析程序,識別標識符并解讀清楚句子結構。最后,細節很重要,像拼寫或者標點符號錯誤,在自然語言中有可能無傷大雅,但在形式語言中可能造成天壤之別。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看