X



アセンブラ 13
■ このスレッドは過去ログ倉庫に格納されています
0518デフォルトの名無しさん
垢版 |
2021/02/04(木) 16:28:12.05ID:dB2jWvbu
だ右らか左々元は語本日
だ人本日は08Z
0519デフォルトの名無しさん
垢版 |
2021/02/04(木) 18:02:14.26ID:R0EDVzG0
古くは、Fortran, Basic の時代から、Pascal, C、C++、JS、Java、Perl, Ruby、C#、Python
に至るまで、変数 A に式 B の値を代入する構文は、
1. A = B
と書いてきた。これは、数学の記号と似てる。そしてその順序を
そのままアセンブラで持ち込めば、
2. mov A,B
と書ける。ところが、英語で mov (移動する)という言葉を使う際、
1と大体意味的に同じことは(本来はmovではなくcopyであるのだが)、
3. I mov an B to A.
の順序になってしまう。それでこの順序で書きたい人が出て来て
そういうアセンブラも存在するようになった。
今でも、LLVMでは、
4. A = add 型名 B, C で A = B + C の意味なのに、
A = B の意味では、Aがレジスタではない変数の場合には、
5. store 型名 B, 型名* Aのアドレス
の順序で書き、A がレジスタの場合には、
6. A = load 型名 * Bのアドレス
と書く。
5.では、1と順序が逆になっているが、6.では、1と同じである。
(この書き方は、数学的統一性が無いので好きではない。)
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況