第一百六十五章 程式語言

  留學深造不是一次談話就能確定下來的事情,不過在他們的談話期間,菲爾斯已經從倉庫里搬出了信號發生器,用浮空陣將其運送到瞭望遠鏡正對方向百米開外的位置,輸入能源並準備開始實驗。

  信號發生器的功率並不大,不過這正好滿足了他們的需求,要知道電磁波在經過漫長的傳輸之中難免會造成一定的信號衰減,穿越大氣層更甚,而深空中並沒有信號放大器和中繼器,所以類比下來如果能夠正確探測到百米開外的信號發生器,那麼望遠鏡的探測能力便可以得到驗證。

  嗯。。。部分驗證。

  菲爾斯推動浮空的發生器的基座,以保證方位對齊望遠鏡發射方向,然後打開了信號發生器,並通過輸入精神力調整發生器的信號頻率。

  當信號頻率收束在毫米波後,菲爾斯讓自己的組員回到實驗室里,去看看結果如何。

  其實當信號打開前,射電望遠鏡就已經產生了輸出,只不過輸出比較混亂,大多數都是些細微的雜波,望遠鏡的操作員正嘗試將雜波進行過濾,結果信號發生器突然打開,輸出的頻譜線猛的增大,嚇了他一跳。

  觀測與控制不是同一台計算機,而觀測用的計算機設計就比較簡單了,除了進行機械控制的控制台以外,也只有一個進行輸出的紙帶機。

  不過仔細觀察頻譜線,輸出結果呈現規律波動,這說明這已經不是雜波,而是信號發生器的有規律信號,雖然僅僅是頻率單一的波,但也足以證明整個射電望遠鏡的接受裝置正在正常運行。

  操作員將這一消息告訴了還在給自己女兒做思想工作的諾克雷德教授。

  「測試通過了?是毫米波麼?」諾克雷德教授扔下自己的女兒向控制台走去,沒看到後面的女兒鬆了口氣,滿臉無奈。

  「顯示標量為七點五毫米波段,和驗收時的測試是相符的。」操作員回答道。

  諾克雷德教授點點頭,「很好,雖然我們對恆星的准熱輻射有所猜測,但是一直以來缺乏有效的觀察手段,這個東西還真是幫大忙了。」

  看了看面前的操作台,教授轉向操作員,「馬斯克,嘗試將望遠鏡對準恆星,我們先試一試能不能成功。」

  「好的教授,可是對準哪顆呢?」馬斯克回過頭來疑惑的問道。

  「最亮的那個。」諾克雷德教授隨意說道。

  「最亮的。。。天宿一?北角五?」

  「最亮的。」諾克雷德教授強調道。

  「額。。。北斗一?還是甲丑七?還是。。。」

  諾克雷德教授低下頭來,面色平靜地看著馬斯克。

  看到教授面無表情地神情,馬斯克逐漸面露恐慌,瘋狂回想到底哪個恆星是最亮的,想了半天眼睛一亮,「我知道了,之前觀察到伽馬射線爆炸的鷹嘴十六!」

  啪!

  諾克雷德教授猛的扇了馬斯克腦袋一巴掌,恨鐵不成鋼地瞪著他,「太陽啊!你個白痴!!」

  馬斯克捂著腦袋趴在控制台上,哎呦了一聲,假裝很疼,不過很快他就回過頭來不解地問,「那個。。。教授,望遠鏡直視太陽。。。不會燒掉聚集器麼?」

  「反射層能夠反射的電磁波頻段很窄,能夠聚集的能量有限,不然我為什麼費這麼大力氣建一個可變頻率的射點望遠鏡?」諾克雷德教授瞪了他一眼,「這個也要問?罰你算出射電望遠鏡觀測太陽時聚集的能量值,明天之前!」

  「啊?不要啊教授。。。我晚上還有約會。。。」

  「改簽!」

  說完這話,諾克雷德教授轉過身來,看著不遠處自己的女兒正津津有味的看著編程書籍,卻對自己提出的留學想法不置可否,越想越氣,越想越氣,最後氣不過,最後回過頭來又恨恨地扇了馬斯克的腦袋一巴掌。

  啪!

  「啊!」

  「叫你記不住太陽是恆星!」

  。。。

  射電望遠鏡不光可以進行長時間的跟蹤觀察,如同長時間曝光一樣,對靜止的物體觀測結果進行疊加,最後合成一張高解析度的觀察結果,它也可以通過天球掃描進行掃視,繪製整個天球的圖像,然後再在其中尋找值得觀察的目標。

  一般來說前者是手動跟蹤而後者是自動掃描,但是無論哪個,結果都需要對地球自轉產生的偏差進行人為消除,以保證觀測結果的相對準確。

  不僅如此,觀察太陽系之外的恆星或天體還好,但如果觀察的是本星系內的行星和天體,為了得到相對準確的結果,還需要減去地球公轉的公差,這使得計算天體的運行軌道變得非常困難。

  不過好在,目前的課題中沒有計算軌道相關的課題,他們目前的方向則是通過對頻譜中不同頻率的觀測,嘗試確定宇宙天體的物質組成以及相對含量。

  而擴展可觀測電磁波頻率就變得比較重要了。

  瑪麗全身心投入到學習編程的偉大事業之中,起初她只是對可變符文陣相關的知識比較感興趣,但是隨著對程序指令的深入了解,她逐漸認識到很多指令其實是可以抽象出來的。

  機器是笨拙的,所以想要讓機器聽話,它所要做的每一件事都需要進行規劃和編程,包括很符合人類直覺的事情,卻必須由人類手動拆成多條細節指令,變得不符合人類直覺,才能讓機器執行。

  比如說將目標材料加溫到1000攝氏度這個簡單的命令,看起來僅僅是一條命令,卻需要拆成以下多個步驟:

  如果目標材料存在則執行,否則跳過:

  將加熱符文從數據盤讀取並存入暫存區,

  激活溫度傳感小型符文陣,

  將傳感符文陣的控制值設置為1000攝氏度,

  將傳感器觸發的事件更改為關閉加熱符文,

  執行加熱符文。

  以上步驟,每一條都需要寫一個單獨的命令,並且需要熟讀指令手冊才能夠完成,而能夠變通地做出這一點的人都無一例外需要較為強大的邏輯思維能力。

  這還僅僅是一個加熱的程序,如果是更複雜的呢?比如說將一個球形材料形變為一個甜甜圈型材料,不僅需要各種形變指令,還需要通過方向控制不停地改變材料的方向,整個程序如果要寫下來大概需要幾十條到上百條指令。

  那麼,有沒有這樣一款程式語言,能夠用最書面化的語言或者自然語言來完成所有的過程呢?

  瑪麗陷入了沉思。

  「如果我是一個語言的使用者,想對一個物體做一些操作,而且如果能將每一步作用在物體上的程序都能夠自由調整。。。」

  想了想,瑪麗從抽屜里摸出紙筆,在紙上寫了起來。

  「我們有一個物體,其材料是砂板」,瑪麗一邊想著,一邊在紙上寫下了帝國語「砂板」這兩個字,可是盯著這個帝國語半天后,她卻直接將其劃掉,用聯邦語字母在下面寫下一個縮寫「sb」。

  「我希望通過一個程序,將其轉變為鋯解石板,那麼我可以。。。」,瑪麗寫下「sb(鋯解石板)」

  「不對」,沉思了一會兒,她輕輕搖了搖頭,「變成鋯解石板應該是一個過程,而且是可以分解的過程,那麼我們可以一個符號表示一段過程,所以我必須約定一個符號來代表過程才行。」

  於是,在略微思考過後,她在下方寫下了:「sb->變成:鋯解石」

  「有點複雜。」

  經過反覆多次修改後,她最終將這一類過程修改為「變成鋯解石(sb)」,而在將物質與其代號分離後,整個命令行被他更改為:

  物質sb:砂板,

  sb:變成鋯解石(sb)。

  望著這簡潔精煉的代碼,她突然笑了起來,她似乎找到了一個很有趣的東西,如果所有的功能被這樣的代碼抽象出來,如果每一個人都可以用一行指令去應用這些複雜的功能,而不必去理會這個方法之後的反直覺的邏輯。。。

  那這樣一種語言便可以成為一種高於機器指令和固定執行體的抽象語言,是更高一層的東西,能夠開啟程序語言的嶄新篇章。

  而接下來呢?

  她看了看上面的程序。

  接下來就只剩下三步,一:將「變成鋯解石」方法用語言定義出來,成為一個可供調用的程序片段。

  二:寫一個翻譯機,能夠將高級指令翻譯為一連串低級指令。

  三:改變世界。