📄 forth_8cpp-source.html
字号:
00332 <a class="code" href="group__forth__imp.html#gga104a222">XT_CMOVE</a>, 00333 <a class="code" href="group__forth__imp.html#gga104a223">XT_CMOVE_UP</a>, 00335 XT_BREAKPOINT,00336 XT_END,00337 XT_CATCH_END,00338 XT_EXCEPTION_MESSAGE,00339 XT_CODE_EXECUTE,00340 00341 XT_UDM_SLASH_MOD,00342 XT_RDROP,00343 00344 XT_EMPTYS,00345 XT_EMPTYR,00346 XT_TIB,00347 XT_PAREN_SOURCE,00348 XT_CONTEXT,00349 XT_CURRENT,00350 XT_LATEST,00351 XT_FORTH_WORDLIST,00352 XT_PARSE_WORD,00353 XT_PAREN_SEARCH_WORDLIST,00354 XT_TO_CFA,00355 XT_PAREN_CR00356 };00357 <a name="l00364"></a><a class="code" href="group__forth__imp.html#ga65">00364</a> <span class="preprocessor">#define XT_BRANCH(offset) XT_PAREN_BRANCH,CELLS(offset)</span>00365 <span class="preprocessor"></span><a name="l00372"></a><a class="code" href="group__forth__imp.html#ga66">00372</a> <span class="preprocessor">#define XT_0BRANCH(offset) XT_PAREN_0BRANCH,CELLS(offset)</span>00373 <span class="preprocessor"></span><a name="l00379"></a><a class="code" href="group__forth__imp.html#ga67">00379</a> <span class="preprocessor">#define LIT(x) XT_PAREN_LITERAL,(CELL)x</span>00380 <span class="preprocessor"></span>00381 <a name="l00387"></a><a class="code" href="group__forth__imp.html#ga10">00387</a> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="group__forth.html#ga0">CELL</a> <a class="code" href="group__forth__imp.html#ga10">XT_NEST_CHECK</a>[] =00388 {00389 <a class="code" href="group__forth__imp.html#gga104a133">XT_EQUALS</a>, <a class="code" href="group__forth__imp.html#ga66">XT_0BRANCH</a>(2), <a class="code" href="group__forth__imp.html#gga104a163">XT_EXIT</a>, <span class="comment">// = IF EXIT THEN</span>00390 <a class="code" href="group__forth__imp.html#ga67">LIT</a>(ControlStructureMismatch), <a class="code" href="group__forth__imp.html#gga104a221">XT_THROW</a> <span class="comment">// -22 THROW</span>00391 };00392 00393 <a name="l00399"></a><a class="code" href="group__forth__imp.html#ga11">00399</a> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="group__forth.html#ga0">CELL</a> <a class="code" href="group__forth__imp.html#ga11">XT_FORWARD_BRANCH_COMMA</a>[] =00400 {00401 <a class="code" href="group__forth__imp.html#gga104a117">XT_COMMA</a>, <a class="code" href="group__forth__imp.html#gga104a165">XT_HERE</a>, <a class="code" href="group__forth__imp.html#gga104a206">XT_FALSE</a>, <a class="code" href="group__forth__imp.html#gga104a117">XT_COMMA</a>, <span class="comment">// , HERE 0 , </span>00402 <a class="code" href="group__forth__imp.html#ga67">LIT</a>(<a class="code" href="group__forth__imp.html#gga103a108">OrigMagic</a>), <a class="code" href="group__forth__imp.html#gga104a163">XT_EXIT</a> <span class="comment">// OrigMagic </span>00403 };00404 00405 <a name="l00411"></a><a class="code" href="group__forth__imp.html#ga12">00411</a> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="group__forth.html#ga0">CELL</a> <a class="code" href="group__forth__imp.html#ga12">XT_BACKWARD_BRANCH_COMMA</a>[] =00412 {00413 <a class="code" href="group__forth__imp.html#gga104a117">XT_COMMA</a>, <a class="code" href="group__forth__imp.html#ga67">LIT</a>(<a class="code" href="group__forth__imp.html#gga103a109">DestMagic</a>), (<a class="code" href="group__forth.html#ga0">CELL</a>)<a class="code" href="group__forth__imp.html#ga10">XT_NEST_CHECK</a>, <span class="comment">// , DestMagic NEST-CHECK</span>00414 <a class="code" href="group__forth__imp.html#gga104a165">XT_HERE</a>, <a class="code" href="group__forth__imp.html#gga104a118">XT_MINUS</a>, <a class="code" href="group__forth__imp.html#gga104a117">XT_COMMA</a>, <a class="code" href="group__forth__imp.html#gga104a163">XT_EXIT</a> <span class="comment">// HERE - ,</span>00415 };00416 00417 <a name="l00423"></a><a class="code" href="group__forth__imp.html#ga13">00423</a> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="group__forth.html#ga0">CELL</a> <a class="code" href="group__forth__imp.html#ga13">XT_IF</a>[] =00424 {00425 <a class="code" href="group__forth__imp.html#ga67">LIT</a>(<a class="code" href="group__forth__imp.html#gga104a168">XT_PAREN_0BRANCH</a>), (<a class="code" href="group__forth.html#ga0">CELL</a>)<a class="code" href="group__forth__imp.html#ga11">XT_FORWARD_BRANCH_COMMA</a>, <span class="comment">// ['] (0branch) >BRANCH,</span>00426 <a class="code" href="group__forth__imp.html#gga104a163">XT_EXIT</a>00427 };00428 00429 <a name="l00435"></a><a class="code" href="group__forth__imp.html#ga14">00435</a> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="group__forth.html#ga0">CELL</a> <a class="code" href="group__forth__imp.html#ga14">XT_AHEAD</a>[] =00436 {00437 <a class="code" href="group__forth__imp.html#ga67">LIT</a>(<a class="code" href="group__forth__imp.html#gga104a160">XT_PAREN_BRANCH</a>), (<a class="code" href="group__forth.html#ga0">CELL</a>)<a class="code" href="group__forth__imp.html#ga11">XT_FORWARD_BRANCH_COMMA</a>, <span class="comment">// ['] (branch) >BRANCH, </span>00438 <a class="code" href="group__forth__imp.html#gga104a163">XT_EXIT</a>00439 };00440 00441 <a name="l00448"></a><a class="code" href="group__forth__imp.html#ga15">00448</a> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="group__forth.html#ga0">CELL</a> <a class="code" href="group__forth__imp.html#ga15">XT_THEN</a>[] =00449 {00450 <a class="code" href="group__forth__imp.html#ga67">LIT</a>(<a class="code" href="group__forth__imp.html#gga103a108">OrigMagic</a>), (<a class="code" href="group__forth.html#ga0">CELL</a>)<a class="code" href="group__forth__imp.html#ga10">XT_NEST_CHECK</a>, <span class="comment">// OrigMagic NEST-CHECK</span>00451 <a class="code" href="group__forth__imp.html#gga104a165">XT_HERE</a>, <a class="code" href="group__forth__imp.html#gga104a181">XT_OVER</a>, <a class="code" href="group__forth__imp.html#gga104a118">XT_MINUS</a>, <a class="code" href="group__forth__imp.html#gga104a190">XT_SWAP</a>, <a class="code" href="group__forth__imp.html#gga104a110">XT_STORE</a>, <a class="code" href="group__forth__imp.html#gga104a163">XT_EXIT</a> <span class="comment">// HERE OVER - SWAP !</span>00452 };00453 00454 <a name="l00460"></a><a class="code" href="group__forth__imp.html#ga16">00460</a> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="group__forth.html#ga0">CELL</a> <a class="code" href="group__forth__imp.html#ga16">XT_BEGIN</a>[] =00461 {00462 <a class="code" href="group__forth__imp.html#gga104a165">XT_HERE</a>, <a class="code" href="group__forth__imp.html#ga67">LIT</a>(<a class="code" href="group__forth__imp.html#gga103a109">DestMagic</a>), <a class="code" href="group__forth__imp.html#gga104a163">XT_EXIT</a> <span class="comment">// HERE DestMagic</span>00463 };00464 00465 <a name="l00471"></a><a class="code" href="group__forth__imp.html#ga17">00471</a> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="group__forth.html#ga0">CELL</a> <a class="code" href="group__forth__imp.html#ga17">XT_AGAIN</a>[] =00472 {00473 <a class="code" href="group__forth__imp.html#ga67">LIT</a>(<a class="code" href="group__forth__imp.html#gga104a160">XT_PAREN_BRANCH</a>), (<a class="code" href="group__forth.html#ga0">CELL</a>)<a class="code" href="group__forth__imp.html#ga12">XT_BACKWARD_BRANCH_COMMA</a>, <span class="comment">// ['] (branch) <BRANCH,</span>00474 <a class="code" href="group__forth__imp.html#gga104a163">XT_EXIT</a>00475 };00476 00477 <a name="l00485"></a><a class="code" href="group__forth__imp.html#ga18">00485</a> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="group__forth.html#ga0">CELL</a> <a class="code" href="group__forth__imp.html#ga18">XT_UM_SLASH_MOD</a>[] =00486 {00487 <a class="code" href="group__forth__imp.html#gga104a159">XT_DUP</a>, <a class="code" href="group__forth__imp.html#gga104a120">XT_0_EQUALS</a>, <a class="code" href="group__forth__imp.html#ga66">XT_0BRANCH</a>(4), <span class="comment">// DUP 0= IF</span>00488 <a class="code" href="group__forth__imp.html#ga67">LIT</a>(DivideByZero), <a class="code" href="group__forth__imp.html#gga104a221">XT_THROW</a>, <span class="comment">// -10 THROW THEN</span>00489 XT_UDM_SLASH_MOD, <a class="code" href="group__forth__imp.html#ga66">XT_0BRANCH</a>(4), <span class="comment">// UDM/MOD IF</span>00490 <a class="code" href="group__forth__imp.html#ga67">LIT</a>(ResultOutOfRange), <a class="code" href="group__forth__imp.html#gga104a221">XT_THROW</a>, <span class="comment">// -11 THROW THEN</span>00491 <a class="code" href="group__forth__imp.html#gga104a163">XT_EXIT</a>00492 };00493 00494 <a name="l00501"></a><a class="code" href="group__forth__imp.html#ga19">00501</a> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="group__forth.html#ga0">CELL</a> <a class="code" href="group__forth__imp.html#ga19">XT_CHECK_NEG</a>[] =00502 {00503 <a class="code" href="group__forth__imp.html#gga104a159">XT_DUP</a>, <a class="code" href="group__forth__imp.html#gga104a199">XT_0_GREATER</a>, <a class="code" href="group__forth__imp.html#ga66">XT_0BRANCH</a>(4), <span class="comment">// DUP 0> IF </span>00504 <a class="code" href="group__forth__imp.html#ga67">LIT</a>(ResultOutOfRange), <a class="code" href="group__forth__imp.html#gga104a221">XT_THROW</a>, <a class="code" href="group__forth__imp.html#gga104a163">XT_EXIT</a> <span class="comment">// -11 THROW THEN</span>00505 };00506 00507 <a name="l00514"></a><a class="code" href="group__forth__imp.html#ga20">00514</a> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="group__forth.html#ga0">CELL</a> <a class="code" href="group__forth__imp.html#ga20">XT_CHECK_POS</a>[] = <span class="comment">// ( n -- n )</span>00515 {00516 <a class="code" href="group__forth__imp.html#gga104a159">XT_DUP</a>, <a class="code" href="group__forth__imp.html#gga104a119">XT_0_LESS</a>, <a class="code" href="group__forth__imp.html#ga66">XT_0BRANCH</a>(4), <span class="comment">// DUP 0< IF </span>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -