comparison paper/chapter2.tex @ 84:dbc35db820b4

tweak
author anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Mon, 18 Feb 2019 21:34:48 +0900
parents 7e50d0abefba
children 0118da5b64f4
comparison
equal deleted inserted replaced
83:e8f9e4559082 84:dbc35db820b4
51 \end{figure} 51 \end{figure}
52 52
53 この例では、 cg1, cg2, cg3という CodeGear を用意し、これらを図\ref{fig:cbc_example_test}の通り、 cg1,cg2,cg3の順で軽量継続していく。 53 この例では、 cg1, cg2, cg3という CodeGear を用意し、これらを図\ref{fig:cbc_example_test}の通り、 cg1,cg2,cg3の順で軽量継続していく。
54 それぞれのCodeGearへは、 goto文を利用する。 54 それぞれのCodeGearへは、 goto文を利用する。
55 入出力としてmain関数で生成したTEST構造体を受け渡し、 cg1で数値の加算を、 cg2で文字列の設定を行う。 55 入出力としてmain関数で生成したTEST構造体を受け渡し、 cg1で数値の加算を、 cg2で文字列の設定を行う。
56 main関数からcg1へのgoto文では、 Cの関数からCodeGearへの移動となる為、 call命令ではなくjmp命令で行われる。 56 main関数からcg1へのgoto文では、 Cの関数からCodeGearへの移動となる為、 jmp命令ではなくcall命令で行われる。
57 cg1からcg2、 またcg2からcg3へは、 CodeGear間での移動となるためjmp命令での軽量継続で処理される。 57 cg1からcg2、 またcg2からcg3へは、 CodeGear間での移動となるためjmp命令での軽量継続で処理される。
58 この例では最終的に test.number には1が、 test.stringにはHelloが設定される。 58 この例では最終的に test.number には1が、 test.stringにはHelloが設定される。
59 59
60 60
61 CbCでは関数呼び出しの他に、 for文やwhile文などのループ制御を廃している。 61 CbCでは関数呼び出しの他に、 for文やwhile文などのループ制御を廃している。