第一個編譯器
❶ 請問,編譯軟體最早是由誰發明出來的
Grave of Grace
後記
Grace Hopper是個非常amazing的人 (常被稱為Amazing Grace),崇拜她的人相當多。雖然她的事跡很多,但是還有很多有類似事跡的人並沒有像她這樣受到眾人的崇拜。由其中一點我們可以看出來:從1947年開始 (二戰結束後第二年),她獲得了第一個榮譽博士學位 (賓州大學),從那以後,她先後被40多所大學授予榮譽博士學位,其中包括芝加哥大學、華盛頓大學、馬里蘭大學等知名學府。各種婦女社會團體和學術組織都曾授予Grace各種稱號和獎勵。1991年,布希總統在白宮授予她的「美國國家技術獎」 (National Medal of Technology) 是其中的最高獎項,她也是至今惟一獲此殊榮的美國女性。她的名言有很多,她自己最喜歡的,也是她最喜歡對所謂的「年輕人」說的 (在她年老時,她所謂的年輕人就是「年齡不到我的一半的人就叫做年輕人」),這句話是:
「A ship in port is safe, but that is not what ships are built for.」
語錄
下面Grace的語錄中有幾句比較有意思的話。
From then on, when anything went wrong with a computer, we said it had bugs in it.
The most dangerous phrase in the language is, 「We』ve always done it this way.」
Humans are allergic to change. They love to say, 「We』ve always done it this way.」 I try to fight that. That』s why I have a clock on my wall that runs counter-clockwise.
Leadership is a two-way street, loyalty up and loyalty down. Respect for one』s superiors; care for one』s crew.
One accurate measurement is worth a thousand expert opinions.
Someday, on the corporate balance sheet, there will be an entry which reads, 「Information」; For in most cases, the information is more valuable than the hardware which processes it.
We』re flooding people with information. We need to feed it through a processor. A human must turn information into intelligence or knowledge. We』ve tended to forget that no computer will ever ask a new question.
To me programming is more than an important practical art. It is also a gigantic undertaking in the foundations of knowledge.
They told me computers could only do arithmetic.
In pioneer days they used oxen for heavy pulling, and when one ox couldn』t budge a log, they didn』t try to grow a larger ox. We shouldn』t be trying for bigger computers, but for more systems of computers.
Life was simple before World War II. After that, we had systems.
We went overboard on management and forgot about leadership. It might help if we ran the MBAs out of Washington.
At any given moment, there is always a line representing what your boss will believe. If you step over it, you will not get your budget. Go as close to that line as you can.
I seem to do a lot of retiring.
I handed my passport to the immigration officer, and he looked at it and looked at me and said, 「What are you?」
參考
維基網路:
http://en.wikipedia.org/wiki/Grace_Hopper
國立中央大學數學系:
http://li.math.ncu.e.tw/bcc16/pool/3.06.shtml
耶魯大學計算機系:
http://cs-www.cs.yale.e/homes/tap/Files/hopper-story.html
計算機先驅:
http://202.207.0.245:9001/jisuanjifazhanshi/xianqu/18.htm
This entry was posted in網路3Cand taggedcompiler,debug,Grace Murray Hopper,傳記,發明,編譯器,起源. Bookmark thepermalink.Post a commentor leave a trackback:Trackback URL.
❷ 是誰發明電腦軟體
格雷斯�6�1霍波是傑出的女數學家和計算機語言領域的帶頭人 1949年,霍波離開哈佛,加盟由第一台電子計算機ENIAC發明人埃克特和莫齊利開辦的電腦公司,為第一台儲存程序的商業電子計算機UNIVAC編寫軟體。這期間,她開發出了世界上第一個將高級符號語言轉變為機器語言的編譯器A—0(1952年),第一個處理數學計算的編譯器A—2(1953年),第一個自動翻譯英語的數據處理語言的編譯器B—0(也叫Flow-Matic.1957年)。這是第一個用於商業數據處理的類似英語的語言。後來以Flow-Matic為基礎開發COBOL語言,於1959年問世,它是第一批高級程序設計語言之一,廣泛用於大型機和小型機電腦的高級商業程序設計。COBOL文本誕生後,霍波又率先實現了COBOL的第一個編譯器,因此,有人把霍波叫做「COBOL之母」。據20世紀80年代初的統計,全美國在運行中的程序有80%是用COBOL語言編寫的,由此可見這個語言對計算機應用發展所起的作用。在電腦軟體的進展中,格雷斯?霍波女士做出了很大的貢獻。她的努力使電腦在商用化和產業化方面取得長足的進步。
❸ 最早的編程軟體是怎麼來的
最早的沒有現在意義上的編譯器,是靠打孔器打紙帶編程。大型機靠讀紙帶執行程序。
由於機器語言由0、1組成,難以閱讀。所以在機器語言的基礎上開發了匯編語言。最早的匯編語言編譯器應該是機器語言編寫的。一旦第一個匯編語言編譯器開發出來以後,以後的版本都可以用匯編語言來編寫了。
由於匯編語言還是很難使用,所以開發出高級語言。也可以預見,第一個高級語言編譯器是由匯編語言編寫的。有了第一個高級語言編譯器,以後的高級語言編譯器便可以用這個高級語言編譯器生成。
也就是說,現在我們使用的C++語言編譯器,可以用C++語言來編寫。
❹ 第一個編譯器是靠什麼編出來的
linux自帶了gcc編譯器,直接使用gcc
test.c命令編譯生成a.out可執行文件,或者使用命令gcc
-
o
test
test.c編譯生成test可執行文件,這樣避免了覆蓋前面的a.out,新手就先用自帶的練手了,很方便的,我也是剛學的,共勉哈
❺ 電腦發明編程或程序是哪一位
電腦發明編程或程序是哪一位?
英國著名詩人拜倫的女兒Ada Lovelace曾設計了巴貝奇分析機上解伯努利方程的一個程序.她甚至還建立了循環和子程序的概念.由於她在程序設計上的開創性工作,Ada Lovelace被稱為世界上第一位程序員.美國國防部開發的ADA語言就是為紀念這位世界上的第一位程序員而命名的.還有一個女的,美國的,也是第一程序員,還是美國海軍少將軍銜呢.計算機軟體的第一夫人--格雷斯?霍波 格雷斯?霍波是傑出的女數學家和計算機語言領域的帶頭人 1949年,霍波離開哈佛,加盟由第一台電子計算機ENIAC發明人埃克特和莫齊利開辦的電腦公司,為第一台儲存程序的商業電子計算機UNIVAC編寫軟體.這期間,她開發出了世界上第一個將高級符號語言轉變為機器語言的編譯器ADA(1952年),第一個處理數學計算的編譯器A?2(1953年),第一個自動翻譯英語的數據處理語言的編譯器B?O(也叫Flow-Matic.1957年).這是第一個用於商業數據處理的類似英語的語言.後來以Flow-Matic為基礎開發COBOL語言,於1959年問世,它是第一批高級程序設計語言之一,廣泛用於大型機和小型機電腦的高級商業程序設計.COBOL文本誕生後,霍波又率先實現了COBOL的第一個編譯器,因此,有人把霍波叫做「COBOL之母」.據20世紀80年代初的統計,全美國在運行中的程序有80%是用COBOL語言編寫的,由此可見這個語言對計算機應用發展所起的作用.在電腦軟體的進展中,格雷斯?霍波女士做出了很大的貢獻.她的努力使電腦在商用化和產業化方面取得長足的進步.
❻ 電腦軟體是誰發明的
格雷斯??霍波是傑出的女數學家和計算機語言領域的帶頭人
1949年,霍波離開哈佛,加盟由第一台電子計算機eniac發明人埃克特和莫齊利開辦的電腦公司,為第一台儲存程序的商業電子計算機univac編寫軟體。這期間,她開發出了世界上第一個將高級符號語言轉變為機器語言的編譯器a—0(1952年),第一個處理數學計算的編譯器a—2(1953年),第一個自動翻譯英語的數據處理語言的編譯器b—0(也叫flow-matic.1957年)。這是第一個用於商業數據處理的類似英語的語言。後來以flow-matic為基礎開發cobol語言,於1959年問世,它是第一批高級程序設計語言之一,廣泛用於大型機和小型機電腦的高級商業程序設計。cobol文本誕生後,霍波又率先實現了cobol的第一個編譯器,因此,有人把霍波叫做「cobol之母」。據20世紀80年代初的統計,全美國在運行中的程序有80%是用cobol語言編寫的,由此可見這個語言對計算機應用發展所起的作用。在電腦軟體的進展中,格雷斯?霍波女士做出了很大的貢獻。她的努力使電腦在商用化和產業化方面取得長足的進步。
❼ 編譯原理的發展歷程
在20世紀40年代,由於馮·諾伊曼在存儲-程序計算機方面的先鋒作用,編寫一串代碼或程序已成必要,這樣計算機就可以執行所需的計算。開始時,這些程序都是用機器語言 (machine language )編寫的。機器語言就是表示機器實際操作的數字代碼,例如:
C7 06 0000 0002 表示在IBM PC 上使用的Intel 8x86處理器將數字2移至地址0 0 0 0 (16進制)的指令。
但編寫這樣的代碼是十分費時和乏味的,這種代碼形式很快就被匯編語言(assembly language )代替了。在匯編語言中,都是以符號形式給出指令和存儲地址的。例如,匯編語言指令 MOV X,2 就與前面的機器指令等價(假設符號存儲地址X是0 0 0 0 )。匯編程序(assembler )將匯編語言的符號代碼和存儲地址翻譯成與機器語言相對應的數字代碼。
匯編語言大大提高了編程的速度和准確度,人們至今仍在使用著它,在編碼需要極快的速度和極高的簡潔程度時尤為如此。但是,匯編語言也有許多缺點:編寫起來也不容易,閱讀和理解很難;而且匯編語言的編寫嚴格依賴於特定的機器,所以為一台計算機編寫的代碼在應用於另一台計算機時必須完全重寫。
發展編程技術的下一個重要步驟就是以一個更類似於數學定義或自然語言的簡潔形式來編寫程序的操作,它應與任何機器都無關,而且也可由一個程序翻譯為可執行的代碼。例如,前面的匯編語言代碼可以寫成一個簡潔的與機器無關的形式 x = 2。
在1954年至1957年期間,IBM的John Backus帶領的一個研究小組對FORTRAN語言及其編譯器的開發,使得上面的擔憂不必要了。但是,由於當時處理中所涉及到的大多數程序設計語言的翻譯並不為人所掌握,所以這個項目的成功也伴隨著巨大的辛勞。幾乎與此同時,人們也在開發著第一個編譯器, Noam Chomsky開始了他的自然語言結構的研究。他的發現最終使得編譯器結構異常簡單,甚至還帶有了一些自動化。Chomsky的研究導致了根據語言文法(grammar ,指定其結構的規則)的難易程度以及識別它們所需的演算法來為語言分類。正如現在所稱的-與喬姆斯基分類結構(Chomsky hierarchy )一樣-包括了文法的4個層次:0型、1型、2型和3型文法,且其中的每一個都是其前者的專門化。2型(或上下文無關文法(context-free grammar ))被證明是程序設計語言中最有用的,而且今天它已代表著程序設計語言結構的標准方式。
分析問題( parsing problem ,用於限定上下文無關語言的識別的有效演算法)的研究是在20世紀60年代和70年代,它相當完善地解決了這一問題, 現在它已是編譯理論的一個標准部分。它們與喬姆斯基的3型文法相對應。對它們的研究與喬姆斯基的研究幾乎同時開始,並且引出了表示程序設計語言的單詞(或稱為記號)的符號方式。
人們接著又深化了生成有效的目標代碼的方法,這就是最初的編譯器,它們被一直使用至今。人們通常將其誤稱為優化技術(optimization technique ),但因其從未真正地得到過被優化了的目標代碼而僅僅改進了它的有效性,因此實際上應稱作代碼改進技術(code improvement technique )。
這些程序最初被稱為編譯程序-編譯器,但更確切地應稱為分析程序生成器 (parser generator ),這是因為它們僅僅能夠自動處理編譯的一部分。這些程序中最著名的是 Yacc (yet another compiler- compiler),它是由Steve Johnson在1975年為Unix系統編寫的。
類似地,有窮自動機的研究也發展了另一種稱為掃描程序生成器 (scanner generator )的工具,Lex (與Yacc同時,由Mike Lesk為Unix系統開發的)是這其中的佼佼者。在20世紀70年代後期和80年代早期,大量的項目都關注於編譯器其他部分的生成自動化,這其中就包括代碼生成。這些嘗試並未取得多少成功,這大概是因為操作太復雜而人們又對其不甚了解。
編譯器設計最近的發展包括:首先,編譯器包括了更為復雜的演算法的應用程序,它用於推斷或簡化程序中的信息;這又與更為復雜的程序設計語言(可允許此類分析)的發展結合在一起。其中典型的有用於函數語言編譯的Hindle y - Milner類型檢查的統一演算法。
其次,編譯器已越來越成為基於窗口的交互開發環境(interactive development environment,IDE )的一部 分,它包括了編輯器、鏈接程序、調試程序以及項目管理程序。這樣的IDE的標准並沒有多少, 但是已沿著這一方向對標準的窗口環境進行開發了。
❽ 編譯技術的發展歷程
1954年至1957年間,IBM的John Backus帶領一個小組開發FORTRAN語言及其編譯器,使得上面的擔憂不必要了。
但由於當時處理中所涉及到的大多數程序設計語言的翻譯並不為人所掌握,所以這個項目的成功也伴隨著巨大的辛勞。
幾乎與此同時,人們也在開發著第一個編譯器,Noam Chomsky開始自然語言結構的研究。使得編譯器結構異常簡單,甚至還帶有了一些自動化。
Chomsky的研究導致了根據語言文法(grammar,結構規則)的難易程度以及識別它們所需的演算法來為語言分類。文法有4個層次:0型、1型、2型和3型文法,且其中的每一個都是其前者的專門化。2型(或上下文無關文法context-free grammar)是程序設計語言中最有用的,代表著程序設計語言結構的標准方式。
人們接著又深化了生成有效的目標代碼的方法,這就是最初的編譯器,它們被一直使用至今。人們通常將其誤稱為優化技術(optimization technique),但因其從未真正地得到過被優化了的目標代碼而僅僅改進了它的有效性,因此實際上應稱作代碼改進技術(code improvement technique)。
在70年代後期和80年代早期,大量的項目都關注於編譯器其他部分的生成自動化,這其中就包括了代碼生成。這些嘗試並未取得多少成功,這大概是因為操作太復雜而人們又對其不甚了解。
❾ 哪個公司發明了第一個計算機軟體
格雷斯•霍波是傑出的女數學家和計算機語言領域的帶頭人
1949年,霍波離開哈佛,加盟由第一台電子計算機ENIAC發明人埃克特和莫齊利開辦的電腦公司,為第一台儲存程序的商業電子計算機UNIVAC編寫軟體。這期間,她開發出了世界上第一個將高級符號語言轉變為機器語言的編譯器A—0(1952年),第一個處理數學計算的編譯器A—2(1953年),第一個自動翻譯英語的數據處理語言的編譯器B—0(也叫Flow-Matic.1957年)。這是第一個用於商業數據處理的類似英語的語言。後來以Flow-Matic為基礎開發COBOL語言,於1959年問世,它是第一批高級程序設計語言之一,廣泛用於大型機和小型機電腦的高級商業程序設計。COBOL文本誕生後,霍波又率先實現了COBOL的第一個編譯器,因此,有人把霍波叫做「COBOL之母」。據20世紀80年代初的統計,全美國在運行中的程序有80%是用COBOL語言編寫的,由此可見這個語言對計算機應用發展所起的作用。在電腦軟體的進展中,格雷斯?霍波女士做出了很大的貢獻。她的努力使電腦在商用化和產業化方面取得長足的進步。
❿ 世界上第一個編譯器是用什麼編譯器編譯出來的
最初的語言 就是01代碼
也就是機器語言
是不需要編譯的
第一個編譯器 就是這樣一點點寫出來的,是匯編到二進制的編譯器
所以 第一個編譯器本身不需要編譯,直接運行即可。