正文 第1章 程序及編程語言簡介(1 / 2)

對於初涉編程領域的人來說,程序是一個高深莫測的詞彙。那麼,程序究竟是什麼呢?通俗地講,程序就是向計算機發出的一個個操作命令集合,來告訴計算機如何完成一個具體的任務。由於現在的計算機還不能理解人類的自然語言,所以目前還不能用自然語言來編寫程序。專業地講,程序(program)是為解決特定問題而用計算機語言編寫的命令序列集合。執行程序時,由程序控製計算機來完成相應的操作而得到相應的結果。

要學習編程技術,首先要掌握一種計算機編程語言。程序設計語言(ProgrammingLanguage)是用於編寫計算機程序的語言。計算機編程語言按照級別可以分為機器語言(MachineLanguage)、彙編語言(AssemblyLanguage)和高級語言(HighLevelLanguage)三類,而機器語言和彙編語言又被統稱為低級語言(LowLevelLanguage)。

機器語言是用二進製代碼表示的計算機能直接識別和執行的一種機器指令集合,它是第一代計算機語言。機器語言的指令全部是由0和1組成的,可想而知,利用機器語言編寫的程序對於我們來說簡直就是“一串密碼”,程序的可讀性非常差。同時,機器語言對不同型號的計算機來說一般是不同的,所以利用機器語言編寫的程序的可移植性差,重用性差,這也是早期的計算機未能迅速得到廣泛應用的原因之一。

為了克服機器語言難讀、難編、難記和易出錯的缺點,人們就用與指令代碼實際含義相近的英文縮寫詞、字母和數字等符號來取代機器指令代碼,於是就產生了彙編語言。彙編語言是機器語言符號化的結果,比機器語言易於讀寫、調試和修改,同時具有機器語言執行效率高、可有效訪問控製硬件等優點。由於彙編語言中使用了助記符號,用彙編語言編寫的程序不能被計算機直接識別和執行,必須“翻譯”成能被計算機識別和處理的二進製代碼程序,這個過程稱為彙編。用彙編語言編寫的程序稱為彙編語言源程序,運行時要使用彙編程序將其翻譯成目標程序,即機器語言程序。

雖然機器語言和彙編語言效率高,但是均與特定的機器有關。語言對機器過分依賴,就要求使用者必須對硬件結構及其工作原理都十分熟悉,非計算機專業人員是難以做到的,對於計算機的推廣應用也是不利的。計算機事業的蓬勃發展促使人們去尋求一些與人類自然語言相近且能被計算機接受的語義確定、規則明確、自然直觀和通用易學的計算機語言,這種與自然語言相近並被計算機接受和執行的計算機語言稱為高級語言。

高級語言是麵向用戶的、不依賴特定計算機體係結構的程序設計語言。與用彙編語言編寫的程序一樣,用高級語言編寫的程序稱為源程序,運行時要經過解釋或編譯處理將源程序翻譯成目標程序即機器語言程序。無論何種機型的計算機,隻要配備相應的高級語言的編譯或解釋程序,則用該高級語言編寫的程序就可以通用。每一種高級程序設計語言,都有自己規定的專用符號、英文單詞、語法規則、語句結構和書寫格式,但都接近於自然語言。高級語言表示方法要比低級語言更接近於待解問題的表示方法,在一定程度上與具體機器無關,通用性強,兼容性好,便於移植,易學,易用,易維護。這種類型的高級語言非常多,有FORTRAN、COBOL、BASIC、LOGO、PASCAL、C、Ada等,這些語言各有特點。FORTRAN語言主要用於數值計算。COBOL語言主要應用於情報檢索、商業數據處理等管理領域。BASIC語言簡單易學,適合作為初學者的入門語言。LOGO語言是一種與自然語言非常接近的編程語言,具有生動的圖形處理功能,能用直觀的運動來體現編程的結果,尤其適合兒童學習和使用。PASCAL被稱為第一個結構化程序設計語言,在高校計算機軟件教學中一直處於主導地位。Ada語言一度被美國國防部強製指定為軍用武器係統唯一的開發語言。C語言盡管最初是作為一種係統程序設計工具語言而設計的,但它已成功用於各個應用領域,是當前使用最廣泛的通用程序設計語言之一。

目前,程序設計語言及編程環境正向麵向對象及可視化編程環境方向發展,出現了許多第四代語言及其開發工具。例如,微軟公司開發的Visual係列(VC++、VB、FoxPro)編程工具及Sybase公司開發的PowerBuilder等,已經在國內外得到了廣泛的應用。