• 締切済み

アセンブリ言語の参考になる本

こんにちは。 初心者でもアセンブリ言語に関しての本で参考になる書籍はないでしょうか? 動機は、アセンブリが全ての言語に通じるものがあり知識を深めるとプログラムの理解を深めるのに助かると聞いたからです。 私のような初心者でも理解ができより深く学べるお薦めの書籍はないでしょうか? よろしくお願いします。

みんなの回答

回答No.18

基本的な命令のザックリとした分類は下記のようになる。 勿論、これより細かく分類すると複雑になってくるが、とりあえず最初は下記の分類で理解しておけば良いでしょう(ここでは「FPU、MMX、SSE」などは言及しない)。 細かい分類は勉強していく中で少しずつでも学習していけば良いでしょう。 >データ転送命令 >制御転送命令 >算術演算命令 >論理演算命令 >シフト命令とローテート命令 >x86の割り込み 【参考】 X86アセンブラ/x86の命令 https://ja.wikibooks.org/wiki/X86%E3%82%A2%E3%82%BB%E3%83%B3%E3%83%96%E3%83%A9/x86%E3%81%AE%E5%91%BD%E4%BB%A4

全文を見る
すると、全ての回答が全文表示されます。
回答No.17

Visual C++のインライン・アセンブラ(MASM(Microsoft Macro Assembler):x86アーキテクチャ)なら、C++からの呼び出しも学習できます。

全文を見る
すると、全ての回答が全文表示されます。
回答No.16

x86アーキテクチャ「Intel CPU(又はAMD CPU)」は現状で一番普及しています。 x86アーキテクチャ:MASM(Microsoft Macro Assembler)なら無料開発環境があります。 x86アーキテクチャ:MASM(Microsoft Macro Assembler)の本も少し出ているようです(本を買う前に無料開発環境で実際に体験してみては如何でしょうか?) https://www.amazon.co.jp/s/ref=nb_sb_noss_2?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&url=search-alias%3Dstripbooks&field-keywords=MASM&rh=n%3A465392%2Ck%3AMASM

全文を見る
すると、全ての回答が全文表示されます。
  • unokwave
  • ベストアンサー率58% (966/1654)
回答No.15

初心者によるアセンブリ言語の勉強にx86は向きません。 ハードウェアを知らない初心者にとってはアーキテクチャが複雑すぎます。 今は数千円でARMボードが購入できるのですから、ArduinoやRaspberry Piのような学習に向いたボードを購入するべきです。

全文を見る
すると、全ての回答が全文表示されます。
回答No.14

VC++ でインライン・アセンブラ http://www.sol.dti.ne.jp/~yoshinor/program/prog0001.html アセンブラの話 http://www.geocities.co.jp/SiliconValley-Cupertino/3384/Asm.html 第一報:アセンブラの基礎と資料について http://www7b.biglobe.ne.jp/~robe/pf/pf001.html まず、アセンブラの前に、勉強の素材として どのCPUを選ぶかと言う所から考えなくてはなりません。 現状で一番普及しているx86アーキテクチャ「Intel CPU(又はAMD CPU)」が良いでしょう(Intel CPUとAMD CPUは ほぼ同じ)。 それでは32bitにするか64bitにするか、勉強のためなら頑張って64bitにせず、32bitで良いでしょう。

全文を見る
すると、全ての回答が全文表示されます。
回答No.13

本を買う前に無料開発環境で実際に体験してみては如何でしょうか? Microsoft Macro Assembler https://ja.wikipedia.org/wiki/Microsoft_Macro_Assembler MASM32(Microsoft Macro Assembler 32)によるアセンブラ入門:パート1 https://codezine.jp/article/detail/64 MASM32によるアセンブラ入門:パート2 https://codezine.jp/article/detail/65 Win32 MASM プログラミング入門 http://uno036.starfree.jp/PRGmanual/masm1a/index.html

全文を見る
すると、全ての回答が全文表示されます。
回答No.12

分かりやすく喩えると アセンブリ言語→フリークライミング C系(C++)→エイドクライミング C系(C++)でも困難ですが、アセンブリ言語は更に困難。 アセンブリ言語に労力と時間を費やすより、実用的(就職に有利)なC系(C++)を勉強したほうが良いと思います。 そもそもクライミングって何ですか? https://climbing-au.jp/post000019.html >「クライミング」は前進手段に道具を使用せずクライマーの手と足のみで登る「フリークライミング」と、前進手段として道具を使用する「エイドクライミング」に大きく分かれます。

全文を見る
すると、全ての回答が全文表示されます。
回答No.11

>回答No.10 amanojaku1 C言語とは http://gihyo.jp/dev/serial/01/c-programming-introduction/0001 >C言語は,高級言語と低級言語の両方の特徴を持った言語と考えられます。C言語は,もともとUNIX自体を記述するための言語として開発された言語であり,高級言語のようにわかりやすくプログラムできると同時に,低級言語のようにメモリの直接アクセスなどの低レベルの操作もでき,OSのカーネルやデバイスドライバといったハードウェアに密接なプログラムも記述することが可能です。そういう意味では,C言語はCPUに依存しない汎用アセンブラであると言ってもよいでしょう。

全文を見る
すると、全ての回答が全文表示されます。
回答No.10

>回答No.8 amanojaku1 >ただし「C、C++」の習得は困難だと言われて言わすけど。 アセンブリ言語よりは、マシです。

全文を見る
すると、全ての回答が全文表示されます。
回答No.9

>回答No.8 amanojaku1 C言語 https://ja.wikipedia.org/wiki/C%E8%A8%80%E8%AA%9E >汎用性が高い。プログラムの自由度や、目的に応じた拡張が容易であるため、オペレーティングシステムやアプリケーションソフトウェア・ファームウェアの記述、デバイスドライバー開発や機械制御など、あらゆる分野に適応している。 >対応する機器の範囲が広い。パーソナルコンピュータはもちろん、自動車や家電の組み込み用マイコンからスーパーコンピュータまで、C言語を使用できるハードウェアは多様である。多目的性と、対応機器の多彩さのため、「コンピュータを使ってやること」は大抵、C言語で対応可能である。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • C言語のお勧め本

    ゲームなどを制作するにあたり、C言語のお勧めの 参考書籍や出版社等ありましたら教えてください。 レベルは初心者と考えてくださって結構です。 ただ、私が本格的にプログラムを組むことは、あまり考えられません(^^; プランナやデザイナーの人が読んでおいたら、 プログラマーの方々と密にお話できるものがよいですね、 そんな便利な本ってあります??? とにかく、もっと予備知識をつけておきたいのです。 ちょとしたことでもお待ちしておりまーす、

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

    アセンブリ言語がアセンブラ&実行出来るサイトを知らないでしょうか?また、アセンブリ言語のプログラムが載っているサイトを知らないでしょうか?教えて頂けると幸いです。

  • アセンブリ言語について

    現在電気工学科の学生です。アセンブリ言語の講義を受けているんですが、試験で単位が取れる自信がありません。。。全くわからないことだらけです。C言語に関してはほんの触りだけ勉強したことがありますが、アセンブラ言語については全くの素人です。演習問題があるんですが、色々本等で探しても見つかりませんでした・・・私の努力不足かもしれませんが、問題の解答と解説を教えて欲しいです。 問題は→メモリアドレス3000H~30FFHの内容(データ)を2000Hから始まるメモリアドレスにコピー(格納)するプログラムをアセンブリ言語で書いてください!それとこの問題には参考のためにアセンブリ言語の命令の例があるんですが LD A、(BC) LD A、(DE) LD A、(HL) って書いてあるんですが、このBCやDE,HLはどんな意味があるんでしょうか?初歩的なことばかりで申し訳ありませんが、ご教授よろしくお願いします。

  • アセンブリ言語を学ぶことは意味がありますでしょうか。

    アセンブリ言語を学ぶことは意味がありますでしょうか。 プログラミングの上達や理解を深めるためにアセンブリ言語を学ぶ意味はありますでしょうか。 C++を学ぶとプログラミングの上達や理解は確かに深まりましたが、アセンブリ言語はどうでしょうか。 アセンブリ言語でポインタの意味が分かったと言う人もいますし・・・。 また、アセンブリ言語で役立つことがあれば何でも教えてください。

  • 素数を求めるプログラム(アセンブリ言語)

    アセンブリ言語で素数を求めるプログラムを作っているのですが、どうしても内容が理解できなくて困っています。 難しいのは、多分理解できないので、できるだけ簡単なプログラムソースを書いて頂けないでしょうか? または、それがあるページを教えてください。

  • アセンブリ言語とC言語

    アセンブリ言語とC言語について調べているのですが、この二つ言語のプログラムについて実質的に同じと言えることはなんでしょうか? また異なっていることはなんでしょうか?(たとえばアセンブリは低級言語であり、C言語は高級言語であるなどなんでもいいです。) 是非解答お願いします。

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

    熱血!アセンブラ入門という書籍を借りてきたのですが、どこから、アセンブリ言語が組めるものをダウンロードすれば良いのでしょうか? また、また、そのダウンロードしたものは、独習アセンブラという書籍でも使えるのでしょうか?教えていただけると助かります。すみません。以下のURLです。 http://kozos.jp/books/asm/menu.html

  • アセンブリー言語

    すでに、同様の質問があるかもしれませんが、教えていただけますか? アセンブリー言語に関する初歩のとても参考になるウエッブサイトがあったら、教えてください。 よろしくお願いします。

  • [C言語→アセンブリ言語]はどうするのですか?

    C言語でプログラムを作って、それをアセンブリ言語に変換したいのですが、どうしたらよいでしょうか?

  • アセンブリ言語についてと言語の違いについて。

    高水準と低水準言語の違いは、まず、マシン語の2進数の羅列では分からないからアセンブリ言語が生まれ、 アセンブリ言語よりさらに人間が理解できる言語が、C言語やBASICなどでしょうか?教えていただけないでしょうか?合っていますでしょうか?