第41部分(第3/4 頁)
應這顯示器上24行40列的顯示區域。
往視訊記憶體裡面放進去一個字母“A”,並且指定在哪一行哪一列,那麼顯示器上就會在對應的座標上將字母A顯示出來,這就是顯示器顯示字元的基本顯示原理。
林鴻看了這部分沒有再繼續看下去,而是啟動了蘋果計算機,打算動手編個程式試試手。
編什麼好呢?
他有點拿不定主意。
初學者一般都會這樣,對自己所學到的內容往往有些茫然,不知道如何將這些知識應用到自己的程式中。心中想編寫程式,卻又不知道該編一個什麼樣的程式。
其實林鴻目前最大的目標是想自己編寫一個遊戲,不過這其中似乎難度不小,憑他目前的能力有點好高騖遠了。
最終他決定從最簡單的開始,先在顯示器上畫一個小球。
BASIC有現成的畫圖函式,使用畫圓的函式很快就在顯示器上畫好了一個小圓,然後再用白色對其進行填充。這很簡單,直接呼叫函式就實現了。
接下來,林鴻想讓這個小球動起來,從一地方移動到另外一個地方。
BASIC裡面沒有移動函式,必須得自己來實現這個效果。
怎麼才能移動?
林鴻想起了以前在鄉下看電影的情景。電影膠帶是由一張張靜態的膠片組成的,透過移動著寫膠片,就會讓人物動作起來。孫武曾經從放映員手裡得到過這麼一段膠片,林鴻仔細觀察過,相鄰的膠片看似一樣,實際上是不相同的,動作之間有細微的移動。
他覺得自己也可以使用這種方式,讓小球動起來。
於是,他在小球的旁邊再畫了一個小球,相當於是第二張膠片,但是如果想要實現動態效果,前面那個小球就必須擦除。
如何擦除呢?BASIC裡面可沒有擦除影象的指令函式。
林鴻想了半天,最終使用了一個比較笨的方法,他在前一個小球的地方,再畫了一個黑色的小球,正好將原來的覆蓋掉了,而背景顏色也是黑色的,這樣就相當於將小球給擦掉了。
具體過程是這樣的,林鴻先畫一個白球,一秒鐘之後,在左移五個畫素的地方再畫一個白球,於此同時,用黑球將原來的白球給覆蓋,如此重複,一直到螢幕的最右端。透過控制每次停留的時間和位移的長度,他還可以調節小球移動的速度。
看著顯示器中快速移動的白色小球,林鴻臉上露出了會心的笑容,現在完成的功能雖然比較簡單,但這是一個很好的開始。
第九十二章 輕易晉級
第二天,凌晨六點。
在電腦前又呆了一個晚上的林鴻站起來伸了個長長的懶腰,活動了一下有些僵硬的脖子和其他關節。
顯示器中,滿屏顯示著一箇中國象棋棋盤,在棋盤上,有一幅殘局,林鴻剛剛就在這上面擺放著棋子。
這是他忙了一個晚上的成果,中國象棋。
這也是他學計算機以來,做出的第一個遊戲。
昨天,他完成了圓球的移動之後,腦海中便冒出了這樣一個想法:為什麼不用計算機來做一個象棋遊戲?
其中涉及到的內容,主要是進行繪圖,相對來說比較簡單。
於是,林鴻便開始動手編寫程式碼。
首先是畫棋盤,縱橫線條交叉,畫出楚漢大本營和邊界……
然後是畫棋子,帥相士兵車馬炮……
接著,便是考慮如何選擇棋子,並讓用鍵盤的方向鍵來對其進行控制……
剛開始,林鴻以為自己對BASIC語言已經學得很好了,可是到了真正使用的時候,他才發現,自己實際上對這個語言還是比較生疏的,很多時候都是編到一半又突然想起還有另外一種更好更有效率的實現方法,結果又重新回過頭來重新編寫程式碼。
為了編寫這個程式,他總共編寫了三千多行程式碼,如果加上被他廢棄掉的,估計已經超過一萬行了。
他的技術,在不斷的修改和推翻重來的過程中慢慢提高著。
直到現在,他真正才算得上是對BASIC這門語言得心用手了。
看了看窗外,天色已經開始微亮,練功時間已到。
林鴻關掉計算機,輕手輕腳地走出房間,然後小跑著朝什剎海公園跑去。
帶著霧氣的冷風吹過,令林鴻精神一振。
他今天的精神狀態非常好,比起之前簡直好太多了。
心中一直有些奇怪,
本章未完,點選下一頁繼續。