100万人のアーサーたちが持っているエクスカリバーを、アーサーたちが叩き折るというストーリーです。銃やバズーカのような剣ではない形のエクスカリバー、それを使うアーサーも男女ちびっ子いろんなアーサーがいます。聖剣エクスカリバーを抜いたっていうアーサー王が100万人いる、ってところで挫けました。発想は天才だなあと思います。天才に憧れるので、視聴は続けます。これもゲームが最初なんですね。どんなゲームなのか気になります。アセンブラの続きです。前回、if文をアセンブラで確認したので、今回は、for文を確認してみます。ベースの空mainはそのままです。}takk@deb9:~/tmp$for文で10回繰り返す処理を作ります。}takk@deb9:~/tmp$変数aを、10回+インクリメントする処理です。どのようなアセンブラが生成されるでしょうか。.L3takk@deb9:~/tmp$変数aは、-8(%rbp)、変数iは、-4(%rbp)のようです。aとiの初期化後、いきなり.L2へジャンプしてます。比較から始めるんですね。変数iの値tを10と比較するのではなく、9と比較しています。変数aとiのインクリメントは、直接メモリに1加算してますね。変数iをレジスタに変更してみます。C言語では、register指定子を付けるだけです。t2.ctakk@deb9:~/tmp$アセンブラを見てみます。%rbxtakk@deb9:~/tmp$レジスタにしても、コードの行数は同じでした。今回は戻り値の型でアセンブラがどう変わるか確認します。戻り値がchar型の場合。func1の戻り値はEAXに格納されるようです。char型の戻り値であっても、32bitのレジスタが使用されるんですね。骨が好きってどういう感覚なんでしょう。魚の骨は見慣れてますので、綺麗に魚が食べられた時は、魚の骨美しい、なんて思います。そんな感覚でもないんでしょうねえ。櫻子さんはスイーツが好きみた...9-1.ソース・ビルド・インストールsizeコマンドでdata,bssを確認するsizeコマンド続きです。文字列をchar*変数だけどrodataで、sizeの表示はtext。constをつけても、同じ。配列変数にすると、dataになる。血が繋がらない兄妹のどきどきアニメ。子供なのにプロのクリエーターって結構いるんでしょうねえ。