主持人手記:本專欄主要介紹信息技術實驗在基礎教育信息技術課當中的典型案例,并期望這些案例能夠促進信息技術課程學科合法性的提升、豐富信息技術課的教學內容、拓展信息技術教師的課程設計視野。對此欄目有任何好的主意或建議,請發送稿件至towujunjie@163.com(主持人)或tougao1@chinaitedu.cn(雜志社)。
二值量在Scratch語言的定義體系中用 符號表示,意思是只有兩種情況:成立或者不成立,二值量一般用于邏輯判斷的條件。在偵測模塊中,如果從人和計算機交互的角度來分類,程序偵測到的信息可以分為兩類,一類是程序內部可以引用計算機內置的一些信息,與人對計算機操作沒有直接關系;另一類是人在操作計算機的過程中通過計算機的外設向計算機輸入的信息,這一系列操作包括:按下鍵盤、移動鼠標、用麥克風說話、用攝像頭拍攝圖片……這些信息都可以分為二值量和多值量兩類,見下表。
● 二值量與電路邏輯
二值量用于描述物體處于的兩種狀態,并且只有這兩種狀態,如圖1所示的一個簡單電路,開關有兩種狀態“閉合”、“斷開”,燈也有兩種狀態“亮”、“滅”。
圖1
開關和燈只有兩種狀態,意味著使用非邏輯 的狀態“閉合不成立”等價于“斷開”,同理“滅不成立”也等價于“亮”,反之亦然。在這個電路中,導線的使用使得燈和開關處于一個邏輯關系中,即“開關閉合燈亮,開關斷開燈滅”,這個關系可以用圖2所示的鼠標是否按下控制角色“燈亮”還是“燈滅”來表示。
角色“燈”只有兩個造型,即燈亮和燈滅,這個過程與電路1是等價的。我們常常會驚訝于自然規律給程序設計的啟示,事實上很多程序是對自然規律的抽象和模擬,幸運的是抽象和模擬的過程,往往會加深我們對規律的理解。
圖3所示的兩個開關串聯起來控制一個燈,這個控制關系,可以用電路圖表示出來。這個控制關系可以用編程實現,其中開關S1與按鍵1對應,開關S2與按鍵2對應,這種控制關系可以用圖4所示的程序實現。
圖3
圖4
圖4中程序邏輯中的“與邏輯 ”與兩個開關傳感器的串聯相對應,同樣,兩個開關并聯與程序中的“或邏輯 ”相對應,和下頁圖5所示。
電路中開關可以分為兩種,一種稱為狀態切換開關,另一種稱為狀態觸發按鈕,切換開關改變狀態之后可以維持該狀態,觸發按鈕按下之后開關狀態改變,但是開關的轉臺馬上會恢復到原來的狀態,如圖6所示。
電腦鍵盤上的每個鍵和鼠標的左鍵和右鍵都是狀態觸發按鈕,圖7所示的程序可以把按鍵A的控制邏輯變為一個狀態切換開關,讓程序在燈亮和燈滅之間切換。
● 傳感器板當中的二值量與單選器的制作
圖8所示的是教育部教育裝備研究與發展中心研制的改進版的Scratch傳感器板,其所有偵測值如圖8右側所示,A、B、C、D四個端口都有一個對應的二值量狀態,當A端口的兩個夾子閉合時,判斷成立,兩個夾子可以視為狀態切換開關。其中E端口在電路結構上和按鈕并聯,因此E端口閉合與按下按鈕等價,都可以使成立。
圖8
接下來,我們假定一個情境,假如需要制作一個單選器,用來作為一個答題系統的輸入裝置,如果回答與答案一致,即判斷回答正確。很顯然圖9所示的程序回答了問題,但是我們發現,當A和B端口同時閉合時,答案為AB的閃爍,這說明圖9的程序還不夠嚴謹。
我們詳細分析一下什么是“只有端口A已連接”,這意味著端口B、C、D“已連接不成立”,這個邏輯判斷需要使用非邏輯和與邏輯,如圖10所示。
圖10
“只有A已連接”除了可以通過軟件設計保證,還可以通過硬件設計來完成,如圖11所示。紙杯的四個側面粘接了四片銅箔,彼此分離,它們分別與A、B、C、D的紅色的代表正極的夾子相連,而負極連接到一個粘有銅箔的塑料吸管上,這樣吸管與A處的銅箔連接時,保證不會與B、C、D接觸,這樣就實現了單選的效果。
● 對傳感器板的仿真
由于很多學??赡軟]有傳感器板,即使目前傳感器板的價格降到200元左右,恐怕一時之間還難以滿足教學要求,我們設計了Scratch傳感器板的仿真版,如圖12所示。
我們使用Scratch的另一個版本BYOB開發了這一系統,用ZXCVN,分別指代端口ABCDE,由于在BYOB中可以自建模塊,我們通過圖13所示的程序將按鍵Z被按下,虛擬化為傳感器A已連接。
這樣,可以通過虛擬化的程序來仿真傳感器板的執行效果。這樣做從教學效果來看,不及真實的傳感器板,但是如果傳感器板難以做到每位學生一套,還是具有一定的輔助作用的。該軟件的下載地址為www.edumaker.org。