2008-07-01

本日情報の授業:アセンブリ言語の処理あれこれ

プログラムを学ぶ上での一番根源的なものとしてアセンブリ言語が扱われることってわりと多いように思う。

便利なプログラムコンピューター内ではこう処理されてます、とか。

だけど、その説明ってあんまり意味が無いよなとか思ったり。

add D1 D2 D3(アセンブリの命令でD1D2の値を足してD3へ代入を意味)なんてもはや単なるプログラミング言語に過ぎない訳で、それCでも出来るよ、としか思わない。

はいはいアセンブリ不便ですね、ってなって結局主軸は別の言語に移す。

プログラミングの楽しさや便利さはその別の言語を通じて学ぶことになるのだし、じゃあアセンブリ言語を学ぶ意義ってなによ。

c=a+bって書けばコンピューターが計算してくれますっていうのと、add D1 D2 D3ってやればCPUが計算してくれますっていうのは感覚としては同じ。

本当に根源的なものまで突き詰めるのなら電気信号をどう解釈してどういう仕組みで演算して数を格納してっていうことをやってほしい。

アセンブリを根源扱いして崇めることにはなにか抵抗を感じる。

  • プログラミングの楽しさや便利さはその別の言語を通じて学ぶことになるのだし、じゃあアセンブリ言語を学ぶ意義ってなによ。 昔は、必要に迫られて使ってたんですよ。 CPUも遅かっ...

  • クロック数えながらの最適化が楽しいんだよ。それだけ。 それも10年前の話で、K7やP6のあたりから同期/不同期で複数演算コアが同時に動くので見かけ上0クロックで終了する命令なんか...

  • ええー アセンブラやる前ってまず論理回路やって半加算機やって…って順序をたどってからやるだろ。普通。 単に授業の提供側がへったくそなだけなんじゃん?

  • アセンブリ言語は構文が単純な(1行1命令)為、m4 のようなマクロプロセッサがあればとりあえずアセンブルの真似事はできるという点が重要な気がします。 (じっさいそういう本があったは...

  • 機械語と一対一対応していて機械的に変換できるというのが大事 デコーダとか論理回路の話につなぐとそれで1単位の授業になっちゃうからそこは別の機会でいい気が

  • ソースが提供されていないモジュールとかデバッグビルドでで再現しない不具合の調査とかでたまーに役に立つ 組み込みとかやってる人はもう少し出番あると思うけど

  • ? Cが高級アセンブラの立ち位置なんだが?

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん