• ベストアンサー

アセンブラの勉強方法

アセンブラの勉強をしてみようと思うのですが、勉強する上でのよいホームページや本があったら教えてください。 一応Java、C++の基礎は本などである程度理解しています。 できれば、アセンブラを勉強することで他のプログラミング言語などに知識がつながっていくといいのですがどうでしょう?

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

  • ベストアンサー
回答No.4

恐らく、自分のPC(DOS/V)をお持ちでしょうから、 自分のPCにLinuxをインストールして x86アセンブラーをやると良いでしょう。 LinuxのアセンブラーはMASMではなくATT文法です ATT文法の入門書は、見たことがありませんが 下の書籍を参考にすれば、なんとかなるかも。 「プログラミングの力を生み出す本」橋本洋志他著、(オーム社) 「Linuxのブートプロセスをみる」白崎博生著、(ASCII)

その他の回答 (3)

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.3

アセンブラに本気で取り組むのであれば、まずは8~16ビット程度のローエンドのCPUから入った方がよいと思います。そして、実際に基板を手にとって、自分でハンダ付けも行ってみてください。また、簡単なデジタル回路も読めるようになってください。 H8とかM16Cとかを中心に、数千円程度のマイコンボードが出回っていますので、それらを入手して始めるのがよいでしょう。

回答No.2

「はじめて読む486」はプロテクトモードやページングといった OS の機能に関係した話がほとんどなので、質問者さんの目的にはそぐわないような気がします。 かなり古い本ですが「はじめて読む8086」、「はじめて読むMASM」の方をお勧めしておきます。 私はこの辺りの本を読んで、 ・C の関数の呼び出し時の動作 ・局所変数はスタックに作成される と言ったことが、具体的にイメージできるようになったので、読んでよかったと思いました。 http://www.amazon.co.jp/s/ref=nb_ss_gw/250-5656360-5035406?__mk_ja_JP=%83J%83%5E%83J%83i&url=search-alias%3Daps&field-keywords=%82%CD%82%B6%82%DF%82%C4+8086&Go.x=0&Go.y=0 http://www.amazon.co.jp/s/ref=nb_ss_gw/250-5656360-5035406?__mk_ja_JP=%83J%83%5E%83J%83i&url=search-alias%3Daps&field-keywords=%82%CD%82%B6%82%DF%82%C4+MASM&Go.x=0&Go.y=0

回答No.1

当然、アセンブラはCPUごとに違い、高級言語のように仕様はなく、作成者によって多少異なります。したがってどなたも助言はできないでしょう。 一般的には実地にやってみる。先輩のコードを読む。最近は殆どアセンブラ の本はありませんね。インテル系でしたら http://www.amazon.co.jp/exec/obidos/search-handle-url/index=blended%26field-keywords=%E3%81%AF%E3%81%98%E3%82%81%E3%81%A6%E3%81%AE486%20-%E3%82%A2%E3%83%80%E3%83%AB%E3%83%88%26results-process=default%26dispatch=search/ref=pd_sl_aw_tops-5_blended_400938159_2&results-process=default

関連するQ&A

  • アセンブラ→C言語

    アセンブラを学んでから C言語を学ぶとわかりやすい(理解しやすい) と聴きました。 どうやって勉強すれば良いですか? やっぱり本屋さんでアセンブラについての本を買って 勉強した方が良いですか? 今まで全くコンピュ-タ-についての言語を 習ったことがありません。

  • アセンブラ言語についてです。

    こんにちは。 現在大学3回生で就職活動をしております。 ESに得意科目の欄があり、大学の講義で習ったアセンブラ言語と書こうと思います。 アセンブラ言語は、将来どのような役に立つのでしょうか?? アセンブラ言語を学んでCやJAVAのプログラミングに生かせるのでしょうか?? 知識としては、基本情報技術者のCASLIIの問題が解ける程度です。 よろしく願いします。

  • アセンブラについて

    アセンブラでプログラミングを書くとき c言語だと説明文などを/* */ や // で書けると思うのですが アセンブラはどうすれば良いですか?

  • アセンブラ言語がわかりません。

    初心者です。まとを得ていない質問でしたらすみません。 C言語は理解できる程度なのですが、アセンブラのコードを書く事ができません。 今アセンブラ言語を学び始めた所ですが、「jr」「jarl」「jmp」などの分岐命令の指定の方法がわかりません。 C言語でいうとどういうコードを書いた時に、このような命令を出力できますでしょうか。 本を読んでも、この上記の命令の意味は書いてあるのですが、実際出力が出来なかったもので。 またアセンブラ言語を学ぶためにいい方法などありましたらお教えく頂けないでしょうか。 よろしくお願いします。

  • コンパイラとインタプリタとアセンブラの違いって何?

    言語プロセッサの説明で「コンパイラ、インタプリタ、アセンブラ」などがあると書かれていたのですが、 コンパイラもインタプリタもアセンブラもどれも説明が「機械語に翻訳する」と書かれていました。 何が違うのでしょうか? 違いをわかりやすく教えてください。 いろいろなプログラミング言語があるというところまでは理解できましたが、プログラミングはわかりません。(涙) これから勉強します。

  • アセンブラ言語について。

    アセンブラ言語について詳しい解説サイトなどありましたらご回答お願いします。僕はプログラミングじたい初めてなので、わかりやすいサイトなどお願いします。ちなみに大学一年で理解できる程度であれば幸いです。お願いします。

  • 組み込みアセンブラとは何ですか?

    私はx86でアセンブラを勉強中ですが、ネットでアセンブラ関係のことを検索していて組み込みアセンブラという記述をを見ました。 C言語から利用する場合インラインアセンブラより良いとかなんとか。 組み込みアセンブラという名前も怪しく合っているかわかりません。 掲示板のようなところで組み込みアセンブラの方が良い、早いと書いてありました。いろいろ検索して見かけたのでどこの掲示板かもわかりません。後から探したのですが見つけることができませんでした。 そこで質問なのですがそのその組み込みアセンブラとは何なんでしょうか? C言語からアセンブラを利用する場合、今読んでいる本「やさしいアセンブラ入門」にはインラインアセンブラとアセブラ言語モジュール(オブジェクトファイル)をCプログラムでリンクする方法の2種類が書いてありますが。組み込みアセンブラはモジュールで使うということでしょうか? 違うとすればどのような方法でアセンブラを利用することでしょうか? わかる方教えてください。ヨロシクお願いします。

  • 勉強の方法!

    今年の4月からシステム会社のプログラマとして就職が 決まっているのですが、ほとんどプログラムの知識が ありません。 言語は、C言語を勉強しているのですが、 本やホームページを見て勉強するだけで いいのでしょうか? 効率がいい勉強方などがあったら教えてください。 時間はありますのでアルゴリズム等もしっかりと 覚えたいと思っています。 又は、他の言語でおすすめがあったら、教えてください。

  • PICプログラム C言語とアセンブラ言語

    PIC18シリーズを使用して、プログラミングをしています。コンパイラはCCS-Cです。今まではすべてC言語で書いてきたのですが、アセンブラでしか設定ができない部分があり、今までのC言語のソースに加えてアセンブラを組み合わせようと思っているのですが、C言語とアセンブラを組み合わせることは可能なのでしょうか?

  • プログラミング初心者の勉強方法

    本屋さんで立ち読みしたり、この「教えてgoo」で調べては見たのですが すっきりしないので質問させてください。 プログラミングの勉強方法なのですが、 プログラミングは全くしたことがないので 実際、何から手を付けたら良いか分かりません。 できれば、C言語を勉強したいと考えています。 動作環境はWindows98です。 また、私自身のコンピュータに関しての知識は、 シスアド初級程度で、ホームページ作成の経験が少しある程度です。 それと、プログラミングの勉強には コンパイラ?とか言うソフトが必要で(間違っていたらすみません。) そのソフト上で勉強すると言うことを聞きましたのですが メモ帳なんかではできないのでしょうか? よろしくお願いします。

専門家に質問してみよう