第151章 盤古高級程式語言
2023-12-10 00:03:09 作者: 西北老頑童
98條精簡指令,直接對應著機器語言,就是有『0』和『1』組成的指令,程序計數器(即PC指針)可以直接執行的指令。
編譯器是把原始碼(高級語言程序)翻譯成計算機所能理解的可執行代碼(機器語言指令集)的程序。簡單來說編譯器就是一個程序,而這個程序是用來把人的話翻譯成計算機能聽懂的話。
在當前基礎技術如此艱難的情況下,26個英文字母的字庫更為簡單,隨便找個CPU的角落就能實現。李國成為什麼費那麼大的勁設計中文字庫呢?
原因非常簡單,既然計算機技術我們現在領先了一步,那就要讓第一次使用計算機的華夏人先入為主,計算機高級語言就是用中文書寫。
雖然李國成是完全模仿C語言架構,設計中文程式語言,但沒有辦法啊,我們就是第一個弄出高級語言的,誰讓你們落後呢!李國成把此中文程式語言稱呼為盤古高級語言。
1972年,美國貝爾實驗室的丹尼斯·里奇在B語言的基礎上最終設計出了一種新的語言,他取了BCPL的第二個字母作為這種語言的名字,這就是C語言。
在1982年,他們成立C標準委員會,建立C語言的標準。委員會由硬體廠商、編譯器及其他軟體工具生產商、軟體設計師、顧問、學術界人士、C語言作者和應用程式員組成。 1989年,ANSI發布了第一個完整的C語言標準——ANSI X3.159-1989,簡稱「C89」。
不好意思,李國成在1967年就設計出比你更先進的中文程式語言,盤古。相比於他們,我們這只是模仿,比他們溫柔和善良的多。
李國成必須要趕在他們之前,確定華夏的盤古標準。只要我們的計算機技術一直不落後,以華夏的體量和世界影響力,盤古標準就是世界標準之一。
只要華夏在專利這方面不掉鏈子,以後再想掐我們脖子的難度就困難許多。
這麼多年過去了,李國成對C語言的細節已經非常模糊。但是一年多的C語言的使用,對他的核心理念理解非常深刻。
根據98個精簡指令,結合C語言的核心理念,李國成在腦海里不斷地推演,有了成果就趕忙寫下來。
比如C語言的『hello Word』代碼,使用盤古語言就是:
#包含「盤古語言系統.接口」
整數類型主函數()
{
格式輸出(「你好,世界!%行「);
暫停();
返回 0;
}
這一次念力又立功了,本來以為需要半年以上的時間來完成設計,沒有想到,只用了半個月就完成第一版盤古語言,雖然不如後世C語言具有龐大的庫函數,但是現在這一版已經足夠使用。
李國成本來想繼續推演,但是考慮到存儲空間的占用,就暫時放棄了。推演下去只是時間問題,但是占用龐大的存儲空間,就顯得太不經濟。
所以現在暫時確定了一版,李國成把它稱呼為PG67,『PG』是盤古的拼音首字母,『67』代表1967年,突出設計定稿的年限。
程式語言搞定,接下了的工作相對簡單,只有工作量。就是設計編譯器,這個工作就更為簡單,把所有盤古語言的內容和中文字庫的編號一一對應,然後再轉化為98個精簡指令。
所以,李國成把盤古語言裝訂成冊,然後再把編譯器的原理寫清楚,把這個任務交給張芷靜負責,他自己負責校驗。
在完成編譯器任務的過程中,張芷靜也熟悉了盤古語言。正好使用盤古語言編寫作業系統。畢竟不能一直抽象,一直紙上作業,只有在計算機上跑起來才能證明設計的正確性。
由於現在沒有設計出數據掉電不丟失的器件,比如FLASH,所以編譯器、作業系統,漢字字庫都需要設計專用的晶片,內容全部固化。
運行時,首先把作業系統可執行代碼(機器語言)搬到DRAM裡面,然後用戶編程,編程完成後,調用編譯器形成用戶可執行代碼,內容也是存在DRAM里。
掉電後,編好程序就會丟失。這也太不方便了。後世的起初存儲介質是5寸軟盤,後來是3寸軟盤,再之後是硬碟,移動硬碟。
李國成現在有點苦惱,已經習慣了後世的電腦存儲機制,他很難忍受這個中間過渡產品,更不用說,使用當前通用的紙帶了。
必須設計機械硬碟,不然,會嚴重限制後續的技術進步。
硬碟的原理和唱機碟片非常類似,就是使用磁性材料記錄數據,然後通過磁頭讀取。
當前的工藝相對落後,如果一片磁性盤記錄不了多少數據,那就用多碟片來實現。
最大的技術難度是精密機械結構,這個是李國成的強項。當然主軸電機不能使用現在的有刷電機,不然產生的電磁輻射會破壞碟片數據。
那就設計一款直流無刷電機。
李國成現在有點頭疼,為了記錄數據,想到了設計機械硬碟;為了生產機械硬碟,就需要設計精密機械結構;為了製造精密機械結構,有需要設計精密加工生產線。
「頭痛啊!」,李國成現在又陷入了選擇困難症中。
「算了,不管了,明天問問大家的意見吧,不能什麼事情都自己干吧」。
第二天,李國成把半導體實驗室的人都集中起來,把103型計算機的特點、存儲需求和大家進行了說明。
「大家說說吧,我們到底是選擇現有架構,還是做出機械硬碟再完成曙光103型計算機的設計?」李國成看著大家,希望通過頭腦風暴得到力量和支持。
「我覺得的吧,現在就挺好,通過這個,對,就是大家說的全尺寸鍵盤就可以編寫程序進行複雜運算,還能在屏幕上中文顯示」,候工看大家都在思考,就首先發言。
張芷靜想了想,「剛才聽李哥介紹,我們有了程式語言,而且非常先進,明顯可以做更多的工作,比如文檔處理,大型工程計算,如果每次都需要重新輸入程序或文字,就太麻煩了,如果能夠存儲下來,還能夠隨時修改,將會給使用者帶來極大的便利」。
看來最近張芷靜學習作業系統理念已經入門,看待問題已經從系統角度出發。
感謝大家的支持!!!求推薦!求月票!求評論!