官术网_书友最值得收藏!

1.1.1 程序設(shè)計(jì)語(yǔ)言

要用計(jì)算機(jī)解決一個(gè)問題,必須事先設(shè)計(jì)好計(jì)算機(jī)處理信息的步驟。把這些步驟用計(jì)算機(jī)能夠識(shí)別的指令編寫出來(lái)并送入計(jì)算機(jī)執(zhí)行,計(jì)算機(jī)才能按照人的意圖完成指定的工作。

人與計(jì)算機(jī)交流使用的是程序設(shè)計(jì)語(yǔ)言。同人類語(yǔ)言一樣,程序設(shè)計(jì)語(yǔ)言也是由字、詞和語(yǔ)法規(guī)則構(gòu)成的一個(gè)系統(tǒng)。從計(jì)算機(jī)執(zhí)行的角度來(lái)看,程序設(shè)計(jì)語(yǔ)言通常分為機(jī)器語(yǔ)言、匯編語(yǔ)言和高級(jí)語(yǔ)言三種。

1. 機(jī)器語(yǔ)言

計(jì)算機(jī)只能識(shí)別由“0”和“1”組成的二進(jìn)制編碼表示的命令,這種命令稱為機(jī)器指令。一條機(jī)器指令規(guī)定了CPU的一種基本操作。所有機(jī)器指令的集合構(gòu)成了CPU的指令系統(tǒng),規(guī)定了CPU所能進(jìn)行的所有基本操作。機(jī)器語(yǔ)言是計(jì)算機(jī)能夠直接識(shí)別的語(yǔ)言。

機(jī)器語(yǔ)言的特點(diǎn)是:計(jì)算機(jī)可以直接執(zhí)行用機(jī)器語(yǔ)言編寫的程序,程序運(yùn)行的速度最快,占用系統(tǒng)資源最少;但程序的編寫難度最大,程序不易閱讀,修改、調(diào)試也很不方便,不能在具有不同CPU的計(jì)算機(jī)上運(yùn)行。

2. 匯編語(yǔ)言

為了便于閱讀和記憶,人們采用被稱為“助記符”的英文縮寫符號(hào)和地址符號(hào)來(lái)代替機(jī)器指令的二進(jìn)制編碼,這種由助記符構(gòu)成的指令稱為“匯編指令”,匯編指令的集合及其規(guī)則就構(gòu)成了“匯編語(yǔ)言”。用匯編語(yǔ)言編寫的程序叫匯編語(yǔ)言源程序。但計(jì)算機(jī)不能直接識(shí)別匯編語(yǔ)言,所以必須把匯編語(yǔ)言源程序中的匯編指令翻譯成機(jī)器指令,完成這一工作的程序稱為“匯編程序”。

機(jī)器語(yǔ)言與匯編語(yǔ)言通稱為“低級(jí)語(yǔ)言”,它們都與硬件密切相關(guān),所以也稱為“面向機(jī)器的語(yǔ)言”。

3. 高級(jí)語(yǔ)言

高級(jí)語(yǔ)言是更接近于人的自然語(yǔ)言和數(shù)學(xué)語(yǔ)言的計(jì)算機(jī)語(yǔ)言。通常所說(shuō)的程序設(shè)計(jì)語(yǔ)言往往是指高級(jí)語(yǔ)言。與低級(jí)語(yǔ)言相比,用高級(jí)語(yǔ)言編寫程序的難度大大降低,編寫程序的效率大幅度提高,閱讀、修改和調(diào)試程序也更加容易。但程序的執(zhí)行效率降低了,占用的系統(tǒng)資源也更多了。

目前,使用較多的高級(jí)語(yǔ)言有Basic、Visual FoxPro、C、C++、Java等。Visual Basic也是一種高級(jí)語(yǔ)言。

高級(jí)語(yǔ)言源程序不能在計(jì)算機(jī)上直接運(yùn)行,必須把它翻譯成機(jī)器指令序列才能在計(jì)算機(jī)上運(yùn)行。翻譯的方式有兩種:編譯方式和解釋方式,完成翻譯工作的程序分別被稱為“編譯程序”和“解釋程序”。

編譯是指把高級(jí)語(yǔ)言源程序翻譯為在功能上等價(jià)的本計(jì)算機(jī)的機(jī)器語(yǔ)言程序,稱為目標(biāo)代碼程序。在此之后,在計(jì)算機(jī)上執(zhí)行的是目標(biāo)代碼程序,并且可以多次執(zhí)行。執(zhí)行目標(biāo)代碼程序期間不需要源程序和編譯程序的參與。但是,一旦對(duì)源程序做了修改,則需要重新編譯一次,產(chǎn)生新的目標(biāo)代碼程序,然后才能執(zhí)行。所以,編譯方式的特點(diǎn)是:一次編譯,多次執(zhí)行;一旦修改,重新編譯。

解釋方式不產(chǎn)生目標(biāo)代碼程序。與人類語(yǔ)言的同聲翻譯類似,在執(zhí)行源程序時(shí),解釋程序?qū)υ闯绦虻恼Z(yǔ)句逐條翻譯,翻譯一句,執(zhí)行一句,重復(fù)的語(yǔ)句也要重復(fù)翻譯。源程序全部翻譯完畢,程序的執(zhí)行也就結(jié)束了。下次執(zhí)行時(shí),還需要解釋程序重新逐語(yǔ)句翻譯。源程序修改后,仍用同樣的方式逐句翻譯執(zhí)行。因此,每次執(zhí)行程序時(shí),都需要源程序和解釋程序。解釋方式的特點(diǎn)是:每次執(zhí)行,重新翻譯;翻譯一句,執(zhí)行一句。一般來(lái)說(shuō),編譯執(zhí)行比解釋執(zhí)行的效率更高。

Basic語(yǔ)言采用解釋方式,F(xiàn)ortran、Pascal、C等語(yǔ)言采用編譯方式。VB程序既可以在集成開發(fā)環(huán)境中解釋運(yùn)行,又可以編譯成目標(biāo)代碼程序后在操作系統(tǒng)下直接運(yùn)行。

主站蜘蛛池模板: 利津县| 水城县| 济阳县| 桂东县| 探索| 汝州市| 宣恩县| 沙湾县| 巢湖市| 湘潭县| 横山县| 灵丘县| 江陵县| 永清县| 曲沃县| 沈阳市| 德清县| 桦甸市| 汶川县| 通山县| 安丘市| 阿城市| 沙雅县| 加查县| 漯河市| 永安市| 磴口县| 资源县| 新巴尔虎左旗| 耒阳市| 梅河口市| 灵武市| 寻甸| 安多县| 鄂托克前旗| 苗栗市| 莆田市| 江安县| 洪江市| 斗六市| 临漳县|