Micro:bit-模塊的類型和流程控制

之前我們介紹了一些Micro:bit的基本情況,并且也實現了一個簡單的心跳小程序,這節(jié)課我們來看看Micro:bit在線編程網站提供了哪些模塊,這些模塊都是干什么的,然后通過一個小程序展示它們之間的運行順序是怎樣的。我們先打開micro:bit在線編程網站看看吧

我們可以看到在頁面中間的模塊區(qū)有很多五顏六色的分類,每個分類下都有各式各樣的模塊,它們代表了不同的功能,不要被這些花花綠綠的顏色迷惑,雖然功能不同,但是它們是有共同點的。

模塊的類型

Micro:bit網站為我們預置了豐富多彩的模塊,但是細心的你可能已經注意到了,它們的形狀是不同的,大體分為以下三種形狀:

下圖中第一排像一個鉤子一樣的模塊,它代表了一個事件(如果忘了事件是什么,回顧一下這篇教程)或者一個流程,例如當按鈕A按下時應該執(zhí)行的操作,或者無限循環(huán)執(zhí)行的操作

下圖中第二排有一個豁口和一個尖尖的模塊,它代表了一個操作,例如播放一段音樂,或者顯示LED數字

下圖中第三排左邊有一個突起的模塊,它代表了一個求值語句,例如求出當前變量item的值,或者求出0+0的值

記住了這3個形狀,我們就可以通過模塊的形狀很容易的區(qū)分出它是哪種類型的模塊啦,但需要注意的是:

1.事件或流程模塊是彼此獨立的,它們之間不能夠相互組合,它們內部能夠放置一個或多個操作語句

2.操作語句是可以相互組合的,例如可以先顯示數字0,然后再顯示數字1,它們內部也可以包含求值語句,注意看接口的形狀,如果接口的形狀與求值語句的形狀吻合,就代表了它需要求值語句啦,另外要特別記住的是,操作語句只有放入上面的事件或流程模塊中,才能夠真正執(zhí)行,執(zhí)行順序是從上到下的,而未放入事件或流程模塊的操作語句會顯示為淺色,比如下面圖里的操作語句就不會執(zhí)行。

3.求值語句也可以在其內部組合一個或多個求值語句,但是和操作語句一樣,需要放入事件或流程模塊中才能夠真正執(zhí)行,下面這個復雜的求值語句也不會執(zhí)行呦

4.模塊的顏色代表了它屬于哪個分類,比如藍色是基本,綠色是邏輯,紅色是變量

說完了模塊的類型,我們來看看各個事件與流程的執(zhí)行順序。

事件與流程的執(zhí)行順序

Micro:bit預置了兩個特殊的流程模塊,在基本分類下,分別是當開機無限循環(huán),當開機時是一個事件,意味著在程序啟動后需要執(zhí)行的操作,但是需要注意的是,當開機時的操作僅執(zhí)行一遍,隨后如果有無限循環(huán)模塊,則一直執(zhí)行無限循環(huán)里的操作。那有同學可能會問,那我如果有兩個無限循環(huán)模塊,會怎么樣執(zhí)行呢?嗯,這是一個好問題,我們來看下面的例子:

當開機時顯示小心心

無限循環(huán)1順序顯示0 2 4

無限循環(huán)2順序顯示1 3 5

無限循環(huán)3順序顯示7 8 9

當按鈕A按下時顯示6

大家可以先猜一下執(zhí)行順序。

下面直接放出結果,我在顯示數字2的之后按下了按鈕A,可以看到在顯示了一個小心心之后,程序的顯示順序是 0 1 7 2 3 8 4 6 5 9,

但是再執(zhí)行一遍,還是在2之后按下按鈕A,顯示順序卻是?0 1 7 2 3 8 6 4 5 9

以上可以得出兩個結論,

如果存在多個無限循環(huán),系統(tǒng)會按照順序每個無限循環(huán)交替執(zhí)行其中的一條語句,上面例子就是先執(zhí)行了無限循環(huán)1的 顯示數字0,再執(zhí)行無限循環(huán)2的 顯示數字1,再執(zhí)行無限循環(huán)3的 顯示數字7,以此類推

因為在幾乎是在同一時間按下按鈕A,但是顯示的結果不同,我們可以得出事件模塊的執(zhí)行順序不是固定的,有可能在某條語句之前,也有可能在它之后,不能固定的認為它一定會在某條語句之前或之后執(zhí)行

另外還有一個例子,我改變了 無限循環(huán)2 和 無限循環(huán)3 的位置,執(zhí)行結果就變成了 0 7 1 2 8 3 4 9 5,

因此可以得出第3條結論,

? ?3.? 靠上的語句會先執(zhí)行

總結

今天介紹了Micro:bit模塊的3種類型分別是事件或流程模塊,操作語句模塊和變量或求值模塊,并且通過兩個例子得出了執(zhí)行順序的3條結論:

如果存在多個無限循環(huán),系統(tǒng)會按照順序每個無限循環(huán)交替執(zhí)行其中的一條語句

事件模塊的執(zhí)行順序不是固定的

靠上的語句會先執(zhí)行

你都記住了嗎?

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容