2 part forth ..
[2ch|▼Menu]
477:デフォルトの名無しさん
08/10/08 14:37:36
441だけど盛り上がってるね。

自分なりのまとめ。
リターンスタックはBPとcall/retの役割がある。

call/retを他の命令で書くと

・関数の呼び出し
push $LNEXT
jmp func
$LNEXT:

・関数のret
pop ecx ; $LNEXTのアドレスがecxに入る
jmp [ecx]

・関数のはじめ
push ebp
mov ebp, esp

・関数のおわり
mov esp, ebp
pop ebp

こうなる。
つまりBPはリターンスタックのトップと同じ。
BPを基点にすればデータスタックだけでも同じ事ができる。
「ボクが考えたforth」ではリターンスタックは必要ない。


次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5329日前に更新/129 KB
担当:undef