[閒聊] 命令介面的實作

看板PLT (程式語言與理論)作者 (ephesians)時間18年前 (2007/02/22 02:48), 編輯推噓1(104)
留言5則, 2人參與, 最新討論串1/2 (看更多)
最近在隔壁 p 板有個標題,"[問題] 字串比較的問題", 內容是討論一個命令解譯介面該怎麼做, 目前到的答案不外乎比較字串啦,或是查表啦. 我心裏其實一直在想,這應該是做一個直譯器的問題吧! 試想,從輸入裝置取得使用者打進來的命令,在程式中基本上是以字串儲存, 這時後就面對如何將字串當作指令執行的問題. 這在JavaScript很簡單,因為有個幾近於萬用的 eval() 函數. 但以BASIC直譯器來講,應該是做更低階的事情, 也就是將讀到的命令拿去查表,將PC指向該指令的位址,是不是呢? 順道說,我最早入門的程式語言是BASIC,使用MS DOS 6.22的BASIC.COM直譯器. 學完C/C++之後,一直有個實作直譯器的心願,不過都沒動手做過呢... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.231.70.115

02/22 09:25, , 1F
我是覺得用 map 做在效率和便利上都不錯,是否需要更高效,
02/22 09:25, 1F

02/22 09:26, , 2F
就不曉得了
02/22 09:26, 2F

02/22 09:44, , 3F
不是,問題是把文字當指令執行,這個解析層該怎麼做呢?
02/22 09:44, 3F

02/22 09:46, , 4F
不就 call func? 還是你指語法分析?
02/22 09:46, 4F

02/22 16:58, , 5F
那在組語中要把字串直接當指令執行,行得通嗎?
02/22 16:58, 5F
文章代碼(AID): #15t9GI3O (PLT)
討論串 (同標題文章)
文章代碼(AID): #15t9GI3O (PLT)