第七章、變數初探

「學長,幫小深夏這個程式笨蛋補習的時間到啦!」

就在桐仁剛按下筆記型電腦上的電源按鈕的那一瞬間,社辦的門隨著極大的碰撞聲和音羽那怎麼看都精力過盛的聲線被撞了開來,而那個明顯地唸錯科系,而且怎麼看都像隻小寵物的深夏,則是一隻手被音羽勞勞地抓著。

「都、都說了我自己會走了啦!而且我也不想被二一啊……」深夏一邊爭扎著一邊嘟囔道。

桐仁或許是已經習慣了這兩人的互動模式,所以只是聳了聳肩,示意她們兩人先準備好座位,畢竟這間社辦實在是雜亂到有點不像話,經常是連坐的地方也沒有。而且很神奇的是之前幫深夏補完習後,桐仁明明就有稍微整理了一下,但今早桐仁進到社辦後,卻發現明明才不到一個星期的時間,但社辦裡又變得幾乎連能夠好好坐下來寫程式的地方都沒有了。

「那咱們就開始吧!」桐仁看音羽和深夏準備得差不多之後,便這樣說道。

「我們今天就從『變數』這個概念開始吧。話說深夏同學的數學成績好像不錯的樣子,那麼聽到『變數』這個詞,深夏同學妳會想到什麼東西呢?」

「呣……就代數運算裡的 x、y、z 那些東西吧?我記得曾經在數學史的書裡面看過,這好像是十六世紀左右的數學家引入的,然後笛卡爾習慣用 x、y、z 來代表未知數,a、b、c 來代表已經知道的數值。」深夏回答道 ...

第六章、向世界打招呼(輸出、四則運算與資料型態)

Note

從本章開始,將會開始正式進入程式設計教學,因此請您先準備好相關的開發工具,進行本章前建議您可以:

  1. 依照『安裝 Scala 開發環境』中的說明,安裝 Scala 開發環境,以方便一邊閱讀一邊實際操作撰寫程式(強列推薦)。
  2. 如果您只是想要先試試看寫程式是什麼感覺,也可以連線到 Simply Scala 網站,將文章中的程式碼輸入至中間的空白區域,並按下 Evalute 按鈕觀看結果。

「那我們接下來就直接開始來寫程式吧,是說筆記型電腦的畫面太小了不太方便,妳們先等我一下,另外……」

桐仁走擺在一旁的鐵櫃,將擺在最下層的投影機搬到桌上,同時順手將擺在鐵櫃上的一份影印資料交給音羽後說道:「要學寫程式,實際練習也是很重要的。這是我之前寫的開發環境安裝教學,音羽同學,妳可以幫忙在今天回去後,教深夏同學按照這份教學在自己的電腦上安裝開發環境嗎?這樣以後教起來會比較方便。」

「沒問題,包在我身上!咦……?學長,可是這上面寫的是 Scala 安裝教學耶,Scala 是什麼啊?」

「Scala 也是一種程式語言。應該還記得剛剛講的 ...

第五章、電腦世界裡的翻譯年糕(高階程式語言概論)

事情發生在寒假開始的第一天的上午。

伴隨著『碰!』的一響,只有桐仁在的電腦研究社和文藝社共用的社團辦公室的門被粗暴地推開,他開始有一種似乎不太妙的預感。

只見一位有著亞麻色長髮的女孩,相當有朝氣地高舉著右手向坐在鐵椅上敲著鍵盤的桐仁打招呼,同時像是連珠砲似地說道:「唷呵~學長,我又來了~~告訴學長一個好消息!小深夏這次計概的補考拿了九十幾分再加上已經公佈的其他科的程績已經確定不會被二一了所以接下來就繼續麻煩學長了喲!我絕對,絕對不會讓小深夏逃……」

而且她的左手還拖著一個身著淡綠色連身洋裝,怎麼看身高都不到一百五十公分,臉上明顯掛著像是小動物受到驚嚇時一樣的神情,眼神也已經開始逐漸散渙的嬌小女生。

「先等一下,音羽同學!」桐仁忍不住站起身來,按住自己的太陽穴,對著滔滔不絕的音羽制止她繼續說下去。

「咦?!怎麼了嗎?學長有什麼問題嗎?」音羽露出感到困惑的表情,直盯著桐仁瞧。

「什麼有什麼問題,妳還是先放開深夏同學吧。」

深夏這才意識到原來自己的左手還拎著另一個人,而終於逃離音羽的魔爪(?)的深夏,以常人難以理解的速度和移動方式,一溜煙地躲到桐仁的身後,同時還伸著一隻小手緊抓著桐仁的衣角不放。

喂喂喂,我和妳是才第二次見面而已耶,對陌生的男人反而那麼無防備是怎麼回事啊……桐仁忍不住在心中吐嘈道。

「再說,你剛剛說的繼續麻煩我是什麼意思?深夏同學她計概的補考不是及格了嗎?那應該沒什麼問題了才對啊。」

「不……問題可大了!因為轉系要等下學期結束之後才能申請,所以我絕對不允許小深夏在下學期被二一 ...

第四章、密秘指令 III(簡易機器指令集)

「應該吧?!印象中那個老師每次出的題目都差不多,接下來會提到的 CALL 和 RETURN 指令會佔一半左右的分數,所以剛剛那幾個指令弄熟的話應該拿個四五十分不成問題吧……」桐仁聳了聳肩說道。

深夏一邊握著自動鉛筆在筆記本上做確認和加上一些筆記,一邊說道:「唔呣……光 CALL 和 RETURN就佔了一半的分數啊……咦?!學長,好像還有兩個指令沒提到耶?」

「編號六和七的 INPUT/OUTPUT 對吧?這兩個指令很簡單的,就如同他們的名字一樣,INPUT 是把外部的資料放到暫存器上,OUTPUT 則是將暫存器的資料拿給外部,然後將 PC 加一。」

「簡單的說,INPUT 就像是你把資料輸入到計算機,OUTPUT 就是叫電腦把現在暫存器的值放到計算機的螢幕上啦。」就在這時候,音羽插嘴說道。

「沒錯,到這邊還OK嗎?因為接下來的部份比較複雜,也會用到剛剛的那些指令喲?!」

聽到桐仁這麼問,深夏先是看著筆記本稍微沉吟了一會兒後這才輕輕點了點頭。

「好,那我要繼續往下講囉……接下來的兩個指令是 CALL 和 ...

第三章、密秘指令 II (簡易機器指令集)

「那接下來,我們來看一下組指令的 JUMP / SKIP 吧。就像音羽同學說的一樣,接下來的幾組指令稍微複雜了一些,所以對於初學者來說,會比較難以理解一點。」

「呣……果然是這樣嗎?」

深夏的表情在不安中帶著一些沒有自信的感覺,於是桐仁便笑著答道:「也沒那麼困難啦,只要掌握到一些基礎的要點,就不會搞混囉。例如,深夏同學妳覺得,在我們所建構的 Von Neumann 機關中,指令的執行順序是如何的呢?」

「我想,從剛剛的幾個例子來看,應該是……照著順序執行?」

深夏歪著頭有點不太確定地說道。

「小深夏,不對啦……」

「咦?!可是剛剛的例子裡,指令都是一項接著一項往下執行的啊?!」

「小深夏,妳試著唸一下編號零到三這四個指令說明裡的最後一句。」

「呣唔,『完成後將 PC+1』,唉,好像四個指令的最後一句都一樣耶?!」深夏同學

「深夏同學,這是最關鍵的所在喲。妳再試著想想看,Control Unit 部門是怎麼決定要執行哪一個指令的呢?」

「我想一下喲……也就是說 ...