みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

初心者です。アセンブラの習得方法について教えてください。

今更ながら、アセンブラを勉強したいと思いスクールなどを探しましたが、見つかりません。
ネットでも色々と検索してみましたが、種類が多いのか何やら理解ができません。
プログラミングも全くしたことがありません。唯一、昔にマイフェス?というものを
使ったことがあるぐらいです。それも少しだけの期間です。
仕事で使うかもしれないので、努力でカバーしたいと思いますが、
寄り道せずに最短で習得していくには、どういったルートをたどるのが
宜しいでしょうか?

経験者の方のアドバイスをお伺いしたく、こちらに掲載しました。

過去の質問から色々と辿りましたが、???なので新たに質問させて頂いています。

どうかよきアドバイスをお願いいたします。

投稿日時 - 2009-03-19 20:04:11

QNo.4810520

すぐに回答ほしいです

質問者が選んだベストアンサー

アセンブラで何をやるか? それによって違ってくると思います。あと、CPUによっても違ってきます。
”仕事で使うかもしれない”というのでしたら、何を使ってどんな仕事で何を作るのか、それがわからないとアドバイスも難しいかもしれませんね。内容によっては職場で経験者に聞くしかない、となるかもしれません。

投稿日時 - 2009-03-19 23:34:52

ANo.5

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(5)

ANo.4

アセンブラに王道はないと思いますよ。

CPUが直接理解できる唯一の言語がマシン語です。
そして、マシン語と1対1に対応するのがアセンブラですね。
つまり、CPUパワーを余すことなく、最大限引き出せるのが
アセンブラということもできます。

アセンブラが簡単に習得できたら、CもVBもJavaも全然
必要ないです。それらの言語は皆、アセンブラの欠点を
補う為に生まれてきたともいえるわけですから....

まず、C言語の習得をお勧めします。
C言語は"高級アセンブラ"と言われるくらい、
アセンブラに近い言語です。

かつては、ほとんどアセンブラの独壇場だった
PCのゲーム(特にアクション、RPG等)も
現在ではC言語が主流です。

Cである程度プログラムが書けるようになってから
アセンブラにチャレンジすれば、
理解しやすいと思います。

現在では、"オール・アセンブラ"というプロジェクトは
少なくなっているのではないでしょうか?

C言語などでほとんどを作って
能力的に不足な部分をアセンブラでつくり、
C言語等から呼び出す形の方が多いと思います。

その意味でも、C言語を学ぶのは
余分な遠回りではなく、
現実的な方法と考えます。

投稿日時 - 2009-03-19 21:58:09

ANo.3

アセンブラ(アセンブリ言語)はマシン語と1対1で対応しています。
という事は、つまりCPUの種類ごとに仕様が異なることを意味しています。
基本になる考え方は同じなので1個マスターすればたいてい応用が利きますが、
>最短で
を希望するならターゲットになるCPUのアセンブラを学習するのが最短です。

全くの未経験の場合、教材が揃っていて学びやすいZ80かCASL2で学んだほうが良いと思います。
CASL2の方が簡単で教材も多いです。(基本情報処理を受ける時に有利になるオマケ付ですし。)

ネットで解説しているサイトを探しても良いですが
http://masudahp.web.fc2.com/casl2/

個人的には参考書を購入して勉強する事をお勧めします、
http://www.amazon.co.jp/dp/4405046441/

投稿日時 - 2009-03-19 21:03:55

ANo.2

仕事で使うんですよね。それなら、仕様とかハードウェア構成とかわかってるんですよね?

とりあえず、それにあわせて勉強するしかないんじゃないでしょうか。
「アセンブラ」という、決まった言語があるわけではないので、関係ないハードウェアのアセンブラを勉強しても、あまり役に立たないですよ。

マイフェスはプログラムとはなんの関係もないわけですが、この文脈で話が出てくるあたり、本当に「経験なし」なのでしょうね。

ですが、アセンブラは最初に覚えるにはハードルが高いです。言語として「低級(人間の操る言葉から遠く離れている)」ですし、たいていの場合、ハードウェアを理解していないと「まったく見当もつかない」話がたくさん出てきます。それに加えて、先述のように「アセンブラという名前の共通言語」があるわけではありません。
対して、たとえばC言語なら、「高級(日常の書き方に近い)」ですし、ハードウェアを知らなくてもプログラムができますし、世界共通の言語ですから参考書もたくさんありますし、需要もあるのでスクールも参考書も掃いて捨てるほどあります。

> 寄り道せずに最短で習得

50年前ならともかく、現在なら寄り道したほうが早いと思いますよ。

投稿日時 - 2009-03-19 20:53:46

ANo.1

マイフェス(MIFES)っつうのは、テキストエディタですので、アセンブラというかプログラムとは何の関係もないです。

ネットで「アセンブラ」「入門」とかすると結構勉強になるサイトがひっかかりますよ。お試しあれ。

投稿日時 - 2009-03-19 20:29:58

あなたにオススメの質問