アカウント名:
パスワード:
>こういう議論で「アセンブラ」を出す奴からは教えてもらわないほうがいいと思います。
なんか「おじいちゃんが買ってくれるご本」な話だなニーズギャップが大きいしマンガばっか読んでたよでも本は好きな経験からすると国語の授業のおかげかしら
たぶん重要なのは「正しい知識の吸収順」より「正しい?はじめのきっかけ」なのかね?
アセンブリ→C
という順は、分かりやすいと思う。「C=構造化アセンブリ」ですし :-pでも、Cありきのプログラミングが初心者向きのプログラミングとは思えない。
BASIC/PASCAL/FORTRAN/COBOL/LISP/CAP-Xしかなかった時代、処理系の入手もままならなかった時代は、BASIC→アセンブリ→Cしかできなかっただけのことでしょう。
それでもアセンブリというならば、EDSAC [warwick.ac.uk]を学ぶべきでしょう。
分かりやすいとしてもニーズギャップが大きいという話では
12歳はともかく
最近の新入社員研修では、汎用機のマニュアルを渡されて、0から1ヶ月でOSを設計&実装する研修はやってないんでしょうか?# 当然、チームマネジメントも受講生がやります。
使わされたのが、DIPSなんでAC
> これだけ意味不明だと質問の意図すら分かりません。
あなたがアセンブラを理解すれば、質問者の意図も判りますよ。
もうそんな時代じゃないのよ
そうだね。でも8051はまだ現役なんだ。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
目玉の数さえ十分あれば、どんなバグも深刻ではない -- Eric Raymond
プログラムは手段だから (スコア:2)
人生経験の少ない子どもに、実務的なものはハードルが高いだろうから、
ゲームとかツールみたいなものになるでしょう。
そうすると結果の見えやすい、イアンタプリタのBASICあたりが入りやすいと思います。
昨今なら、JavaScriptでもいいでしょう。
しかし、高級言語は基本部分をライブラリに下請けに出してしまうので、
コンピュータの原理を学ぶために、アセンブラは勉強しておくのがいいと思います。
そこで、BASICからアセンブラを呼ぶといった方法が役に立つでしょう。
大切なことは、プログラムは、何かを実現するための手段であって、
目的ではないということです。
そこを理解してもらうことが肝要でしょう。
Re:プログラムは手段だから (スコア:0)
アセンブラの使い方を勉強しても原理は分からないので、
アセンブラの中身を勉強するんですよね :-p
ソースを読み込んで、オペコードとオペランドに分割したり、
ニモニックから表をひいて処理を振り分けたり、
命令を展開するバイト数を計算したり、
データ定義命令を実装したり、
アドレス疑似命令でベースアドレスを決定したり、
ラベルにアドレスを割り付けたり、
相対アドレスと絶対アドレスを計算したり、
マクロを実装したり、
週一の講義を3か月続けて理解できるだけでもすごいけど、
実装できるくらいなら、ほとんど天才かも :-p
こういう議論で「アセンブラ」を出す奴からは教えてもらわないほうがいいと思います。
Re: (スコア:0)
>こういう議論で「アセンブラ」を出す奴からは教えてもらわないほうがいいと思います。
なんか「おじいちゃんが買ってくれるご本」な話だな
ニーズギャップが大きいしマンガばっか読んでたよ
でも本は好きな経験からすると国語の授業のおかげかしら
たぶん重要なのは「正しい知識の吸収順」より
「正しい?はじめのきっかけ」なのかね?
Re: (スコア:0)
アセンブリ→C
という順は、分かりやすいと思う。「C=構造化アセンブリ」ですし :-p
でも、Cありきのプログラミングが初心者向きのプログラミングとは思えない。
BASIC/PASCAL/FORTRAN/COBOL/LISP/CAP-Xしかなかった時代、
処理系の入手もままならなかった時代は、
BASIC→アセンブリ→Cしかできなかっただけのことでしょう。
それでもアセンブリというならば、EDSAC [warwick.ac.uk]を学ぶべきでしょう。
Re: (スコア:0)
分かりやすいとしてもニーズギャップが大きいという話では
Re: (スコア:0)
という前提で、
Cを理解するのにアセンブリが必要→どうせ必要ならば先のほうが楽?
予備知識がいろいろあったほうが理解が楽なのは確かだけど、
コンピュータの原理だのアセンブリだの、
『プロカメラマンを目指すわけでもなく家族写真を撮るためだけに、
写真学校に通ってからプロカメラマンの弟子になる』
くらい大げさな気がするんですけどね(^^;
Re: (スコア:0)
12歳はともかく
最近の新入社員研修では、汎用機のマニュアルを渡されて、
0から1ヶ月でOSを設計&実装する研修はやってないんでしょうか?
# 当然、チームマネジメントも受講生がやります。
使わされたのが、DIPSなんでAC
Re: (スコア:0)
アセンブラからライブラリを呼ぶだけというのは、アセンブラの勉強とは違いますし、
例示されているようなのは、アセンブラの書き方の勉強であって、アセンブラの勉強ではありません。
Re: (スコア:0)
「アセンブラが書けるようになる」→アセンブラを実装する?
「アセンブラからライブラリを呼ぶ」→??
「アセンブラの書き方の勉強」→アセンブラの設計?実装?
「アセンブラの勉強」→?
これだけ意味不明だと質問の意図すら分かりません。
Re: (スコア:0)
> これだけ意味不明だと質問の意図すら分かりません。
あなたがアセンブラを理解すれば、質問者の意図も判りますよ。
Re: (スコア:0)
# あなたを含む :-p
Re: (スコア:0)
FortranでもC++でもいいから、置き換えて考えればワカルでしょう。
C++言語なんて言うか。
「アセンブラ」推進者のみなさん、どうぞ! (スコア:0)
C++やFORTRANならば、コンパイラ(システム)に相当。
ふまえて、意味を説明してください。
>アセンブラの書き方の勉強であって、アセンブラの勉強ではありません。
→Fortranの書き方の勉強であって、Fortranの勉強ではありません。
→C++の書き方の勉強であって、C++の勉強ではありません。
====
アセンブラが違えば、CPUが違えば、言語仕様は違います。
仕様の違いは、CやLispの方言のレベルではありません。
どれがおすすめなんでしょうか?
Re: (スコア:0)
どんな言語でも最後は機械語に落ちるわけで、アセンブラの知識があるかどうかで
他の言語でも効率のよい速いコードを書けるようになります。
私は2冊位しか本を買わず、殆ど独学でZ80(MSX)のアセンブラを12歳頃から始めて、
15歳位にはM80やL80を使ってフルアセンブラでコードを書けるようになっていました。
ブートセクタのブート部分から自分で書いたり、未定義命令もオペコードの組み合わ
せから自分で探してマクロ登録したり、描画系とかよく使うサブルーチンはライブラリ
化したり色々やっていました。
日高徹氏のマシン語秘伝の書シリーズは面白くてためになるのでおすすめです。
今のプロテクトモード(32bitや64bit)なx86は命令数が多すぎるので、リアルモード
(16bit)なx86や、エミュレータを使って68000,Z80,6502,6809辺りで始めるのがよろしいかと。
Re: (スコア:0)
もうそんな時代じゃないのよ
Re: (スコア:0)
そうだね。
でも8051はまだ現役なんだ。