思うだけで学ばない日記 2.0

思うだけで学ばない日記から移転しました☆!よろしくお願いします。

マイクロスレッドで遊ばれよう12日目(11日目は欠番)

PCですぐ動かして試せるように、80x86版のサンプルを作成してみますた。VS2005で動作。
スイッチング関数はこれ。__declspec( naked ) で __fastcall な関数としてインラインアセンブラで記述。個人的に勝手がよくわからないCPUだが、Wikipediaの「呼出規約」の項がかなりまとまってて助かった、、
しかし、手元に8086のアセンブリプログラミングの本しかないのでよくわからんのですが、このスイッチング関数みたく、スタックポインタの指し先をいきなりデータ領域に切り替えちゃうのはセグメント的に何か問題無いんだろうか…?(汗