創作內容

14 GP

【專案】ByteWorld for loop 6/9

作者:樂小呈│2021-06-09 16:24:10│巴幣:31│人氣:207
今天
編譯ㄑ

早上的時候弄了幾道關卡
然後繼續研究流程控制的迴圈

然後又是重構

其實 while 之後就差不多了,do while 和 for 都只是稍微不同的變體而已
do while 就是在開始前多插入一次 jump
for 就是多了初始化和更新而已

筆記

測試

把迴圈的部分又重構了一次,三種迴圈重複程式有點多,就把重複的地方併了

還有把編譯的幾個步驟拆進不同 class,不然原本寫在一起 class 便超長...雖然八成都是中間語言的部分

我通常是不會讓一個 class 有那麼多東西,但中間語言那部分也沒辦法再拆了

接下來
應該可以開始 bytecode generate 了
function call 的部分先放著,先確定其他部分正常再搞這個複雜的

現在 intermediate code 有個問題就是指標會因為流程控制的遞迴指到錯的位置
但是 bytecode 運作時是用 stack 操作,不確定最終編譯會不會造成影響,所以要先搞最終編譯測測看

然後我找到一部解釋編譯工作解釋的蠻直觀的影片,有興趣可以看看

就降
Imgur 復活了 ya

引用網址:https://home.gamer.com.tw/TrackBack.php?sn=5173194
All rights reserved. 版權所有,保留一切權利

相關創作

同標籤作品搜尋:ByteWorld|遊戲開發|程式

留言共 1 篇留言

ATK
[e18]

06-09 16:24

樂小呈
不知道會不會有影響 [e18]06-09 16:25
我要留言提醒:您尚未登入,請先登入再留言

14喜歡★angus945 可決定是否刪除您的留言,請勿發表違反站規文字。

前一篇:【專案】ByteWorl... 後一篇:【專案】ByteWorl...

追蹤私訊切換新版閱覽

作品資料夾

happy545午安阿~~
歡迎大家來看看纏繞畫,如果喜歡歡迎私底下跟ˇ我說喔~。看更多我要大聲說昨天15:55


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】