forth

    0熱度

    1回答

    我正在嘗試與串口(位於/dev/ttyUSB0上的Arduino設備)進行通信。我遇到了麻煩,因爲要正確讀/寫數據,我需要設置各種參數,如速度和奇偶校驗。 是否有Gforth圖書館已經這樣做? 我發現這個鏈接經過並調用C函數直接設置termios參數 - http://www.forth.org/svfig/kk/TestSerial.f.txt,但我更願意使用Gforth自帶的東西。

    7熱度

    2回答

    實施SWAP我看到在interview with Chuck Moore,他說: 操縱該堆棧的字是DUP,DROP和OVER時期。 有沒有,很好的SWAP非常方便,你想要它,但它不是 機器指令。 於是,我就在僅僅DUP,DROP和OVER方面實現SWAP,但無法弄清楚如何做到這一點,沒有至少增加堆棧。 這是怎麼回事?

    0熱度

    1回答

    我對於Forth中的s>d和d>s函數的工作方式非常困惑。 從我讀過,打字16.0會把160 0在棧上(因爲它佔用了兩個單元)和d.將顯示160。 現在,如果我進入16 s>d我希望將棧160 0和d.顯示160像以前的例子那樣。但是,堆棧是16 0和d.是16。 我輸錯了嗎? ?作爲「轉換一個單細胞數值爲雙單細胞值s>d不是那麼簡單沒有任何理由爲這種不規則任何線索將不勝感激

    2熱度

    1回答

    從Rosetta code開始,我使用以下方法連接Forth中的字符串。 s" hello" pad place pad count type s" there!" pad +place pad count type 使用此代碼,我希望能夠連接多個字符串連接在一起。然而,下面的Gforth s" hi " pad place s" hello " pad place s" world

    1熱度

    1回答

    我目前正在編寫一個用Forth編寫的小型解釋器。對於一個小的優化,我想有它創建編譯的話,例如一個字,這東西的行爲是這樣的: : creator (-- a) :noname (u -- u) 10 + ; ; 10 creator execute . >> 20 ok 如果試了幾種方法,到目前爲止和非工作(幼稚象上面,在解釋開關模式,試圖編譯一個Forth源代碼的

    0熱度

    1回答

    我試圖在沒有使用遞歸的情況下在Forth編寫Hofstadter sequence。我覺得我很接近,但我不斷收到正在告訴我一個錯誤, TypeError: x[m[w]] is not a function 當我10 MALE運行它。我該如何解決這個錯誤? 我的代碼如下: VARIABLE SIZE VARIABLE MALE-ARR VARIABLE FEMALE-ARR : MALE

    1熱度

    2回答

    我正在做C中的Forth解釋器。我無法決定如何更好地實現Forth字典。 struct Word { struct Word* next; char* name; int* opcode; // int arg_count; } struct Dictionary { struct Word words; int size;

    4熱度

    1回答

    我使用的是Gforth,我想在定義中創建一個單詞。在Gforth的CMD線I可以輸入: create foo ok 或者更具體地說,我定義預計在堆棧上的尺寸和與所述地址到該陣列創建一個字的陣列功能: : array (n --) (i -- addr) create cells allot does> cells + ; 所以如果我輸入10 array foo,我可

    1熱度

    1回答

    我有興趣在遊戲引擎中使用SuperCollider的各種插件。但我的編程語言(SwiftForth)中的FFI僅支持普通的舊C語言DLL文件。 我知道,對於初學者,我需要某種OSC界面。然後,SuperCollider需要以某種方式運行。我不知道如何在遊戲中完成這些細節。 我也讀了一些關於SuperCollider的命令行接口。對於我想要做的事情,這是否實用? 我願意接受建議和選擇,但唯一不可協商

    1熱度

    2回答

    我有一個複雜的程序,用Forth編寫,在DOS下運行。我使用DOSBox在Windows下運行此代碼  7. 有沒有辦法以某種方式讓此程序在雲上運行,以便我可以通過任何啓用了Internet的計算機訪問它,並使用完整的I/O?