問題タブ [y86]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
277 参照

loops - y86でforループを書く方法

私は y86 で for ループに相当するものを書こうとしていますが、何らかの奇妙な理由で 1 回だけ反復します。y86 には cmp 命令がないので、push、sub、pop を使用します。

0 投票する
0 に答える
36 参照

y86 - ここで間違ったパラメーターが渡されるのはなぜですか?

私は Y86 を初めて使用し、再帰的な乗算関数を作成しようとしていますが、間違ったパラメーターが渡され続けています。

乗算関数を呼び出すコード:

そして実際の乗算コード:

x と y の両方に 4 を渡します。これは、それらを呼び出す関数が数値を 2 乗しているため、同じである必要がありますが、次の行では:

最初に入力した 4 の代わりに 2 が渡され、16 ではなく 13 の値が返されます。

Y86 についての私の限られた理解から、「mrmovl 8(%ebp),%ebx」は Y に等しく設定した 2 番目のパラメーターを返す必要があり、「mrmovl 12(%ebp),%edx」は X に等しい最初のパラメーターを返す必要があります。どちらも 4 として渡されます。