還不快點登入,你們這些看小說都不登入就離開的。
登入可以幫助你收藏跟紀錄愛書,大叔的心血要多來支持。
不然管理員會難過。
《程序媛養成計劃》第57章 闖禍(上)
以我現在的知識水平,要知其然已經很是吃力了,更別說是要知其所以然。在老爹的幫助下,我點亮了流水燈、學會了包括但不限於串口通信、I2C、SPI和網絡。

 驅動屏幕、攝像頭、圖片解析、MP3解析和視頻解析還有文件系統的使用,其中最有意思的就是實現printf函數以及輸入法,但凡是計算機中常用到的功能,老爹都帶著我用單片機給實現了一遍。

 老爹這麽做並不是要我深度掌握這些技能,而是作為擴展性知識。因為老爹說無論現在的高級編程語言和硬件的耦合性有多少,但其運行還是依托於硬件之上的。有很多東西在設計上其實也是貼合硬件的,如果對硬件的知識多一些了解,那麽在學習這些東西的時候就相對容易理解得多。

 況且這個單片機是真的挺好玩兒的,我居然在老爹的幫助下做了一個可以聽歌、看電影、瀏覽圖片、看小說的MP4,我還特別為其移植了兩款經典的紅白機遊戲——超級瑪莉和魂鬥羅。

 為了支撐這兩款遊戲的操作,老爹還特別給我做了一個外接鍵盤,鍵盤和單片機的通信使用的是串口。

 經過一些這一些列的學習,我是真切的體會到了剛剛學習編程的時候,老爹跟我說的計算機中所有的東西都是由二組成的。

 可以說,我已經漸漸地領悟到了「二」的真意,以至於現在無論我看到什麽,到了腦中都變成了一串二進製。

 當然,完成這些東西足足花了我一年半的時間,轉眼間我就到了小學地最後一年——六年級。

 在這一年多的時間中,通過和硬件緊密結合以及大量的事件,我對C語言的運用不說是爐火純青,但至少已經是得心應手。

 不僅如此,單片機其實就是一個微型的電腦,通過移植使用系統,以小見大,見微知著,讓我對電腦操作系統有了一個深層次的理解。

 這些東西目前來看似乎沒有什麽作用,可是在今後的學習和工作中起著舉足輕重的作用。

 老爹說過,任何事物都具有兩面性,既然在玩兒單片機的過程中帶來這麽多美好的東西,當然也會有讓人咬牙切齒的時候。

 一開始調試串口的時候,死活就是不能和電腦通信,各種辦法都想盡了,結果還是不行,急得我眼淚都流出來了。

 最有意思的就是內存溢出的問題,經過我和老爹的檢查,代碼沒有問題,但是程序死活就是不能在單片機中正確的運行。

 後來發現,原來是我在函數內部聲明了一個長度為512Byte的數組變量,導致堆棧溢出了。

 因為單片機的資源很有限,用於運行程序的RAM(相當於電腦的內存條)很少,只有256KB,而單片機程序的內存映射配置中隻給棧分配了1KB的內存,通過老爹之前將的C語言內存結構可以知道,聲明在函數中的局部變量都是保存在棧中的。

 於是乎,老爹就和我說了malloc函數的用法,並且告誡我一定要記得釋放用malloc從堆中申請的內存。

 當然,即便有老爹的耳提面命,我還是有忘記的時候,特別是又一次在for循環中通過malloc不斷申請內存,並且沒有釋放。

 然後就悲劇了,物理內存很快就消耗殆盡,然後單片機就死了。

 過後雖然找到了問題所在,但卻給了我一個靈感,如果我把這段程序用在電腦上,是不是就可以寫出來一個讓人電腦死機的惡搞程序了呢?

 想到這裡,我一下子就興奮了起來,然後就那自己的電腦試了一下。

 寫了一個while死循環,然後在裡面不斷地申請1KB內存。程序剛剛執行,我就通過任務管理器看到內存使用量蹭蹭蹭地不斷飆升,僅僅數秒之間,程序就卡得一動都不能動!最後只能夠強製斷電重啟才恢復正常。

 對於這個結果,我很是滿意。

 不過我又想到一個問題,要如何才能讓別人心甘情願地運行這個程序呢?畢竟這程序連個像樣的圖標都沒有。

 這個時候我想起了以前老爹跟我說過的一個叫「木馬」的東西,於是經過一陣查閱資料後,我成功將程序偽裝成了一張紅包的圖片,只要有人點擊了這張圖片,程序就會立刻運行,然後電腦就死機了。

 嘗試了很多遍,效果和預期中的一樣。我對這個程序就更加滿意了,將其上傳到了家中的網盤上,準備等到星期二上電腦課的時候惡搞一下班上的同學。

 到時候我把這紅包圖片往群裡一放,大家肯定爭先恐後的搶紅包,然後電腦就死機了!

 想到他們傻眼的模樣,我忍不住的笑了。

 「還有一個問題,如果這個程序能夠開機自動啟動,那就算是斷電重啟也沒用了!」

 閑來無事之余,我又開始思考這個惡搞程序的缺點所在。最後在網上查找資料,終於實現了程序開機啟動。

 原來Windows系統在開機的時候會自動運行某個文件夾下面的程序或者腳本,於是我就在這段惡搞程序中加了一段代碼,在第一遍運行程序的時候將程序複製一份到那個文件夾下。

 當然了,我才不會那麽笨,在家裡面用自己的電腦試。萬一真的成功了,電腦不是就開機、死機、開機、死機無線循環了麽?

 好不容易等到星期二微機課,等到老師讓我們自由操做的時候,我將偽裝成紅包圖片的程序發在了班級群眾。果然,沒過多久,同學們的電腦開始陸陸續續地死機。

 當然了,死機對於微機室裡面這些配置低到爆的電腦來說是很正常的,大家也沒有多加留意,果斷按下了重啟鍵。

 但是當更多的人的電腦開始死機的時候大家就開始意識到了問題的所在,再加上那些重啟了電腦的人狀況依然沒有得到解決,所以很快這件事情就驚動了老師。

 很快,大家通過群裡的聊天記錄就鎖定到了我頭上。看著老師鐵青的臉色,我知道自己這次闖大禍了。
鍵盤左右鍵 ← → 可以切換章節
章節問題回報:
翻譯有問題
章節內容不符
章節內容空白
章節內容殘缺
上下章節連動錯誤
小說很久沒更新了
章節顯示『本章節內容更新中』
其他訊息