精選分類 書庫 完本 排行 原創專區
欣可小說 > 曆史 > 程式設計語言處理係統 > ◎第一章 語言處理係統

程式設計語言處理係統 ◎第一章 語言處理係統

作者:池昌海 分類:曆史 更新時間:2026-04-29 09:20:01

{

\"code\": 200,

\"title\": \"\",

\"content\": \"編程\\n\\n編程就是讓計算機為解決某個問題而使用某種程式設計語言編寫程式代碼,並最終得到結果的過程。為了使計算機能夠理解人的意圖,人類就必須要將需解決的問題的思路、方法、和手段通過計算機能夠理解的形式告訴計算機,使得計算機能夠根據人的指令一步一步去工作,完成某種特定的任務。這種人和計算機之間交流的過程就是編程。\\n\\n從計算機發明至今,隨著計算機硬體和軟件技術的發展,計算機的編程語言經曆了機器語言、組合語言、麵\\n\\n檔案係統驅動編程\\n\\n向過程的程式設計語言以及麵\\n\\n檔案係統驅動編程向對象的程式設計語言階段。\\n\\n機器語言\\n\\n在計算機係統中,一條機器指令規定了計算機係統的一個特定動作。一個係列的計算機在硬體設計製造時就用了若乾指令規定了該係列計算機能夠進行的基本操作,這些指令一起構成了該係列計算機的指令係統。在計算機應用的初期,程式員使用機器的指令係統來編寫計算機應用程式,這種程式稱為機器語言程式。使用機器語言編寫的程式,由於每條指令都對應計算機一個特定的基本動作,所以程式占用內存少、執行效率高。缺點也很明顯,如:編程工作量大,容易出錯;依賴具體的計算機體係,因而程式的通用性、移植性都很差。\\n\\n組合語言\\n\\n為瞭解決使用機器語言編寫應用程式所帶來的一係列問題,人們首先想到了使用助記符號來代替不容易記憶的機器指令。這種助記符號來表示計算機指令的語言稱為符號語言,也稱組合語言。在組合語言中,每一條用符號來表示的彙編指令與計算機機器指令一一對應;記憶難度大大減少了,不僅易於檢查和修改程式錯誤,而且指令、數據的存放位置可以有計算機自動分配。用組合語言編寫的程式稱為源程式,計算機不能直接識彆和處理源程式,必須通過某種方法將它翻譯成為計算機能夠理解並執行的機器語言,執行這個翻譯工作的程式稱為彙程式設計序。\\n\\n使用組合語言編寫計算機程式,程式員仍然需要十分熟悉計算機係統的硬體結構,所以從程式設計本身上來看仍然是低效率的、煩瑣的。但正是由於組合語言與計算機硬體係統關係密切,在某些特定的場合,如對時空效率要求很高的係統核心程式以及實時控製程式等,迄今為止組合語言仍然是十分有效的程式設計工具。\\n\\n高級語言\\n\\n高級語言是一類接近於人類自然語言和數學語言的程式設計語言的統稱。按照其程式設計的出發點和方式不同,高級語言分為了麵向過程的語言和麪向對象的語言,如Fortran語言、C語言等都是麵向過程的語言;而以C 、Smalltalk等為代表的麵向對象的語言與麵向過程語言有著許多不同,這些語言支援“程式是相互聯絡的離散對象集合”,這樣一種新的程式設計思維方式,具有封裝性、繼承性和多態性等特征。\\n\\n高級語言按照一定的語法規則,由表達各種意義的運算對象和運算方法構成。使用高級語言編寫程式的優點是:編程相對簡單、直觀、易理解、不容易出錯;高級語言是獨立於計算機的,因而用高級語言編寫的計算機程式通用性好,具有較好的移植性。\\n\\n用高級語言編寫的程式稱為源程式,計算機係統不能直接理解和執行,必須通過一個語言處理係統將其轉換為計算機係統能夠認識、理解的目標程式才能成為計算機係統執行。\\n\\n執行原理\\n\\n計算機對除機器語言以外的源程式不能直接識彆、理解和執行,都必須通過某種方式轉換為計算機能夠直接\\n\\nMINIPRO編程硬體\\n\\n執行的機器語言。這種將高級\\n\\nMINIPRO編程硬體程式設計語言編寫的源程式轉換到機器目標程式\\n\\n的方式有兩種:解釋方式和編譯方式。\\n\\n解釋方式下,計算機對高級語言書寫的源程式一邊解釋一邊執行,不能形成目標檔案和執行檔案。\\n\\n編譯方式下,首先通過一個對應於所用程式設計語言的編譯程式對源程式進行處理,經過對源程式的詞法分析、語法分析、語意分析、代碼生成和代碼優化等階段將所處理的源程式轉換為用二進製程式碼錶示的目標程式,然後通過連接程式處理將程式中所用的函數調用、係統功能調用等嵌入到目標程式中,構成一個可以連續執行的二進製執行檔案。調用這個執行檔案就可以實現程式員在對應源程式檔案中所指定的相應功能。\\n\\n語言的發明\\n\\n1946\\n\\nKonradZuse,一位德國工程師,他躲藏在巴伐利亞附近的阿爾卑斯山上時,獨立開發了Plankalkul。他把該項成果應用在其它的事物中,比如國際象棋。\\n\\n1949\\n\\nShortCode,第一種真正在電子計算設備上使用的計算機語言,儘管他是一個純手工編譯的的語言。\\n\\n1951\\n\\nGraceHopper,為RemingtonRand工作,是在第一個著名的編譯器——A-o上開始設計工作。當Rand在1957年釋出這個語言時,它被稱為MATH-MATIC。\\n\\n1952\\n\\nAlickE.Glennie,他利用自己在曼徹斯特大學的課餘時間,發明瞭一個名為AUTOCODE的編程係統,一個未能成型的編譯器。\\n\\n1957\\n\\nFORTRAN——數學公式轉換係統(FORmulaTRANslating,FORTRAN名字的由來)——出現。開發隊伍的領導者是JohnBackus,並且他還為ALGOL的開發和巴柯斯範式(BNF)做出了貢獻。\\n\\n1958\\n\\nFORTRANII出現,它能夠處理子程式和連接組合語言。由M.I.T的JohnMcCarthy在LISP-LIStProcessing上開始設計工作。原始ALGOL規範出現。該規範並未描述數據的輸入輸出方式;這些問題都留給獨立的實現者。\\n\\n20世紀六十年代末\\n\\nPascal由瑞士NiklausWirth教授於設計並創立,具有簡潔的語法,結構化的程式結構,是結構化編程語言,在許多學校的計算機語言課上教授的都是Pascal語言。\\n\\nCOBOL的創建\\n\\n1600\\n\\nLISP1.5出現。COBOL在數據係統和語言大會(ConferenceonDataSystemandLanguages)上被創建了。\\n\\n編譯器的出現\\n\\n1960\\n\\nALGOL60,第一種結構化語言出現。它是結構化語言家族樹中的根節點,並最終產生Pascal這樣的語言。ALGOL成為六十年代中期至末期歐洲最為流行的語言。\\n\\n六十年代早期,KennethIverson開始語言方麵的工作,最終產生了APL-A編程語言。它使用專門的字元集,為了正確地使用,你還需要相容APL的I\\/O設備。\\n\\n1962\\n\\nAPL被寫入Iverson的《AProgrammingLanguage》一書中。\\n\\nFORTRANIV出現。\\n\\nSNOBOL這個以“首字母拚詞命名”的產品,在工作的初期就取得了絕對的成功,SNOBOL——麵向字串符號(StriNgOrientedsymBOlicLanguage)語言。它衍生了其他一些以首字母拚詞命名的產品:FASBOL,一個SNOBOL編譯器(1971年),還有SPITBOL——SpeedyImplemenTationofsnoBOL——同樣在1971年。\\n\\n1963\\n\\nALGOL60進行修正。\\n\\nPL\\/1的工作開始。\\n\\n1964\\n\\nAPL\\\\360被實現。\\n\\n在達特茅斯大學,JohnG.Kemeny和ThomasE.Kurtz教授發明瞭BASIC。最初的實現是一個編譯器。第一個BASIC程式在1964年五月一日下午四點運行。PL\\/1釋出。\\n\\n1965\\n\\nSNOBOL3出現。\\n\\n1966\\n\\nFORTRAN66出現。\\n\\nLISP2出現。\\n\\n在Bolt,Beranek和Newman開始了LOGO的工作。小組的頭是WallyFuerzeig,而且還包括SeymourPapert。LOGO中最著名的便是“龜作圖”。\\n\\n1967\\n\\nSNOBOL4,功能獲得極大加強的SNOBOL,出現了。\\n\\n1968\\n\\nALGOL68,相對於ALGOL60它是個怪物。一些規範委員會的成員——包括C.A.R.Hoare和NiklausWirth——卻讚同該計劃。事實證明ALGOL68是難以實現的。\\n\\nALTRAN,一個FORTRAN的變種出現。\\n\\nCOBOL被ANSI正式定義規範。\\n\\nNiklausWirth開始Pascal方麵的工作。\\n\\n1969\\n\\n500人蔘加在紐約Armonk的IBM總部召開的APL會議。APL的分發需求如此之大,該活動此後被人們稱為“TheMarchonArmonk”。\\n\\n程式編寫\\n\\n1970\\n\\n70年代早期,CharlesMoore在他的語言Forth中寫下了第一個有意義的程式。\\n\\nProlog方麵的工作大約在此時開始了。\\n\\n同樣是在70年代早期的某一天,XeroxPARC由AlanKay領導,開始了Smalltalk的設計工作。早期版本包括Smalltalk-72,Smalltalk-74和Smalltalk-76。\\n\\nPascal在CDC6000-series電腦上的一個實現出現了。\\n\\n編程器\\n\\n編程器Icon,SNOBOL4的一個後代產品問世。\\n\\n1972\\n\\nKonradZuse寫的關於Plankalkul(見1946年)手稿終於出版了。\\n\\nDennisRitchie設計了C。但是最終的參考手冊卻是在1974年釋出的。\\n\\nProlog的第一個實現——AlainColmerauer和PhillipRoussel的功勞。\\n\\n1974\\n\\n另一個COBOL的ANSI規範出現。\\n\\n1975\\n\\nTinyBASIC,由BobAlbrecht和DennisAllison設計(由DickWhipple和JohnArnold實現),運行在2KB內存的微型計算機上。一台4KB的機器是較為合適的,它將有2KB的內存應用於這個程式上。\\n\\nBillGates和PaulAllen編寫的一個BASIC版本以抽取每份拷貝版稅的形式銷售給MITS(MicroInstrumentationandTelemetrySystems)。MITS生產Altair,這是一種8080結構的微型計算機。\\n\\nScheme,一個LISP的“方言”,由G.L.Steele和G.J.Sussman設計。\\n\\nPascal用戶手冊和報告出版,Jensen和Wirth編寫。許多人至今都認為它是Pascal方麵權威的參考書籍。\\n\\nB.W.Kerninghan描述了RATFOR——RATionalFORTRAN。它是預處理程式,並且允許在FORTRAN中使用類C的控製結構。RATFOR被應用到了Kernighan和Plauger的“SoftwareTools”中,它出現在1976年。\\n\\nPostScript編寫進展\\n\\n1976\\n\\nDesignSystemLanguage出現,它被認為是PostScript的先驅。\\n\\n1977\\n\\nMUMPS的ANSI標準出現——麻省總醫院多用途程式設計係統(MassachusettsGeneralHospitalUtilityMulti-ProgrammingSystem)。MUMPS最初被用來處理醫療記錄,它隻能識彆字串類型。隨後被重新命名為M。\\n\\n設計競賽將導致Ada的產生。由JeanIchbiah帶領的HoneywellBull隊伍,即將贏得比賽。\\n\\nKimHarris和其他人建立了FIG,一個FORTH興趣小組。他們開發了FIG-FORTH,售價大約為20美元。\\n\\n70年代晚期的某天,KennethBowles設計出了UCSDPascal,它使得Pascal可以用在PDP-11和基於Z80的電腦上。\\n\\nNiklausWirth開始設計Modula,它Modula-2的先行者,Pascal的繼承者。\\n\\n語言程式進展\\n\\n1978\\n\\nAWK——一個文字處理語言,以它設計者Aho、Weinberger和Kernighan的名字命名。\\n\\nFORTRAN77的ANSI標準出現。\\n\\n1980\\n\\nSmalltalk-80出現。\\n\\nModula-2出現。\\n\\nFranzLISP出現。\\n\\nBjarneStroustrup開發了一個語言集——被總稱為“CWithClasses”——它成為C 的滋生土壤。\\n\\n1981\\n\\nEffort開始成為一個LISP的“公共方言”,常被人稱作CommonLISP。\\n\\n日本開始第五代電腦係統工程。主要語言是Prolog。\\n\\n1982\\n\\nISOPascal出現。\\n\\nPostScript出現。\\n\\n1983\\n\\nSmalltalk-80公佈:它由Goldberg等人完成。\\n\\nAda出現。他的名字來自Lovelace女伯爵AugustaAdaByron,她是英國詩人拜倫的女兒。因其在巴貝奇分析機上設計瞭解伯努利方程的一個程式,而被譽為第一位女程式員。在1983年,國防部指導的全新“任務評定”應用程式是使用該語言編寫的。\\n\\n1983年的後期和1984年早期,微軟和DigitalResearch共同釋出第一個微型計算機的C編譯器。\\n\\n七月,第一個C 實現露麵。該名稱是由RickMascitti取的。\\n\\n11月,Borland的TurboPascal的“衝擊”猶如一場核風暴,這得益於《BYTE》雜誌的廣告。\\n\\n1984\\n\\nAPL2的參考手冊麵世。APL2是APL的擴展,它允許巢狀數組。\\n\\n1985\\n\\nForth控製著潛水器定位泰坦尼克的殘骸。\\n\\nVanillaSNOBOL4之微機版釋出。\\n\\nMethods,PC上的麵向行(line-oriented)的Smalltalk出現。\\n\\n應用於微機\\n\\n1986\\n\\nSmalltalk\\/V露麵——第一個廣泛應用於微機的Smalltalk版本。\\n\\nApple公司為Mac機器釋出ObjectPascal。\\n\\nBorland釋出TurboProlog。\\n\\nCharlesDuff釋出Actor,一個開發微軟Windows應用程式的麵嚮物件語言。\\n\\nEiffel,另外一個麵嚮物件語言出現。\\n\\nC 露麵。\\n\\n1987\\n\\nTurboPascal4.0釋出。\\n\\n1988\\n\\nCLOS規範——公共LISP對象係統(CommonLISPObjectSystem)——發表。\\n\\nNiklausWirth完成Oberon,這是他繼Modula-2的後續行動。\\n\\n1989\\n\\nANSIC規範公佈。\\n\\nC 2.0形成了一個參考手冊的初稿。2.0版本增加了諸如多繼承和成員指針等特性。\\n\\n1990\\n\\nC 2.1,B.Stroustrup等作者的《AnnotatedC ReferenceManual》一書出版。這個版本增加了模板和異常處理特性。\\n\\nFORTRAN90包含了眾多新元素比如case語句和派生類型。\\n\\nKennethIverson和RogerHui在APL90會議上提出了J語言。\\n\\n1991\\n\\nVisualBasic在COMDEX春展會上獲得《BYTE》雜誌頒發的最佳表現獎。\\n\\n1992\\n\\nDylan——以DylanThomas命名——由Apple公司釋出的一個類似Scheme的麵嚮物件語言。\\n\\n1993\\n\\nANSI釋出X3J4.1技術報告——麵向對象的COBOL提議初稿。真正的標準預計在1997年完成。\\n\\n1994\\n\\n微軟將VisualBasicforApplication整合到Excel中。\\n\\n1995\\n\\n二月,ISO接受Ada語言1995修訂版。它被稱為Ada95,其中包括OOP特性和支援實時係統。\\n\\n1996\\n\\n第一個ANSIC 標準預釋出。\\n\\n語言目錄\\n\\n*CSSCascadingStyleSheets層疊樣式表\\n\\n*.NET是微軟2002年,為開發應用程式創建的一個富有革命性的新平台\\n\\n*ActionScriptActionScript是Flash的腳本語言,與JavaScript相似,ActionScript是一種麵向對象編程語言。\\n\\n*APL、A 和J\\n\\n*AdaAda是一種表現能力很強的通用程式設計語言\\n\\n*AAuto是專用於桌麵軟件快速開發的新型混合型編程語言,\\n\\n*組合語言組合語言(AssemblyLanguage)是麵向機器的程式設計語言\\n\\n*易語言是全中文語言編程中最為強大的一個編程語言\\n\\n*AWKAWK是一種優良的文字處理工具\\n\\n*Basic是一種設計給初學者使用的程式設計語言\\n\\noQBasicQBASIC是BASIC(Beginner'sAll-purposeSymbolicInstructionCode,初學者通用指令代碼)語言的一個變種,由美國微軟公司開發\\n\\noVisualBasicVisualBasic(VB)是一種由微軟公司開發的包含協助開發環境的事件驅動編程語言\\n\\n*VBScriptVBScript是VisualBasicScript的簡稱,即VisualBasic腳本語言\\n\\n*Brain**Brain**是一種極小化的計算機語言\\n\\n*C、C 、C#C語言是一種麵向過程的計算機程式設計語言;C 是一種靜態數據類型檢查的,支援多重編程範式的通用程式設計語言。它支援過程化程式設計、數據抽象、麵向對象程式設計、製作圖標等等泛型程式設計等多種程式設計風格。C#是微軟公司釋出的一種麵向對象的、運行於.NETFramework之上的高級程式設計語言。\\n\\noObjective-C通常寫作ObjC和較少用的ObjectiveC或Obj-C,是擴充C的麵向對象編程語言\\n\\n*ClipperClipper晶片主要用於商業活動的計算機通訊網\\n\\n*COBOL一種適合於商業及數據處理的類似英語的程式設計語言\\n\\n*dBasedBASE是第一個在微型計算機上被廣泛使用的數據庫管理係統(DBMS\\n\\n*PASCAL、DelphiPascal是一種計算機通用的高級程式設計語言;Delphi是全新的可視化編程環境,是一種方便、快捷的Windows應用程式開發工具\\n\\n*Forth由CharlesH.Moore發展出來在天文台使用的電腦自動控製係統及程式設計語言,允許使用者很容易組合係統已有的簡單指令,定義成為功能較複雜的高階指令。\\n\\n*Fortran譯為“公式翻譯器”,它是世界上最早出現的計算機高級程式設計語言,廣泛應用於科學和工程計算領域。\\n\\n*FoxPro是由美國FoxSoftware公司於1988年推出的數據庫產品\\n\\n*F#F#是由微軟發展的為微軟.NET語言提供運行環境的程式設計語言\\n\\n*FavaFava語言是一個小型的解釋語言,它主要麵向於係統測試領域及小型嵌入式設備。\\n\\n*IDLIDL是一種數據分析和圖像化應用程式及編程語言\\n\\n*GoGo語言是穀歌2009釋出的第二款開源編程語言。Go語言專門針對多處理器係統應用程式的編程進行了優化,使用Go編譯的程式可以媲美C或C 代碼的速度,而且更加安全、支援並行進程。\\n\\n*JavaJava是由SunMicrosystems公司於1995年5月推出的Java程式設計語言,他是一種麵向對象的跨平台語言,可以在多種平台上運行。支援開源。大量的類庫。大量的開源項目。是一種非常強大的編程語言!\\n\\n*JavaScriptJavascript是一種由Netscape的LiveScript發展而來的腳本語言\\n\\n*J#VisualJ#是一種工具,供Java語言程式員用於構建在.NETFramework上運行的應用程式和服務\\n\\n*LISP一種基於λ演算的函數式編程語言。\\n\\n*LuaLua是一個小巧的腳本語言\\n\\n*LOGO是一種早期的編程語言,也是一種與自然語言非常接近的編程語言,它通過“繪圖”的方式來學習編程\\n\\n*Module在軟件工程中,指較高一級程式或模塊使用的一個單元或模塊\\n\\n*NuvaNuva語言是一種麵向對象的動態腳本語言Nuva語言的設計目的是用於基於模板的代碼生成\\n\\n*PerlPerl一般被稱為“實用報表提取語言”(PracticalExtractionandReportLanguage),也做“病態折中垃圾列表器”(PathologicallyEclecticRubbishLister\\n\\n*PHPPHP是一種HTML內嵌式的語言\\n\\n*PL\\/IPL\\/I是ProgrammingLanguageOne的簡寫。當中的“I”其實是羅馬數字的“一”。它是一隻IBM公司在1950年代發明的第三代高級編程語言\\n\\n*PrologProlog(ProgramminginLogic的縮寫)是一種邏輯編程語言\\n\\n*Python是一種麵向對象的解釋性的計算機程式設計語言,也是一種功能強大而完善的通用型語言\\n\\n*RR是用於統計分析、繪圖的語言和操作環境\\n\\n*RubyRuby,一種為簡單快捷麵向對象編程(麵向對象程式設計)而創的腳本語言\\n\\n*SchemeScheme,一種係統設計語言,由LISP語言發展而來,屬於lisp的一種方言。與其他lisp不同的是,scheme是可以編譯成機器碼的。Scheme的一個主要特性是可以像操作數據一樣操作函數調用\\n\\n*Smalltalk一種麵向對象的程式設計語言一種程式設計環境一個應用開發環境(ADE)\\n\\n*Tcl\\/Tk是一種腳本語言\\n\\n*VisualFoxProVisualFoxPro原名FoxBase,是美國FoxSoftware公司推出的數據庫產品\\n\\n編程工具\\n\\n關於C 的:CFREE(初學者適用),VC,MyC ,MagicC ,DevC \\n\\n關於JAVA的:JBuilder、Eclipse、NetBeansIDE、JCreator J2SDK、JDK、Tomcat、Weblogic、JRun\\n\\n關於C#的:VSStudio係列(VS2003,VS2005,VS2008,VS2010),SharpDevelop(開源的免費軟件)\\n\\n關於Delphi的:delphi2005\\n\\n關於C的:TurboC2\\n\\n可視化編程\\n\\n可視化編程也越來越重要,所謂的可視化程式設計和VisualBasic或VisualC 並不同,支援可視化程式設計的IDE可以讓開發人員直接移動程式單元來建立流程圖和結構圖,然後直接做編譯或解釋,這一類的流程圖通常是以UML為基礎。\\n\\n這樣的介麵因為樂高的Mindstorms開始普及,一些公司也開始透過瀏覽器Mozilla和分散式程式設計(LabVIEW)往這方麵努力。從1980年代開始,第一個可視化程式設計係統—Max,就是以類比合成器的設計為榜樣,同時被用來開發即時音樂演出軟件。\\n\\n這種方法也被用在專業軟件,例如Openlab,這類的使用者需要完整程式設計語言的彈性,並不想要傳統的學習曲線。\\n\\n可視化程式設計語言有另一個半免費和開放源代碼的替代品-Mindscript,具有加密係統和連結數據庫等等。\\n\\n\"

}

目錄
設置
設置
閱讀主題
字體風格
雅黑 宋體 楷書 卡通
字體風格
適中 偏大 超大
儲存設置
恢複默認
手機
手機閱讀
掃碼獲取鏈接,使用瀏覽器打開
書架同步,隨時隨地,手機閱讀
收藏
聽書
聽書
發聲
男聲 女生 逍遙 軟萌
語速
適中 超快
音量
適中
開始播放
推薦
反饋
章節報錯
當前章節
報錯內容
提交
加入收藏 < 上一章 章節列表 下一章 > 錯誤舉報