Menu About 過去ログ div命令の レイテンシ BBS アップローダ 最新の4件2016-01-20 BBS 2014-07-08 ??©¡???Ñ?¡ß???À 2012-07-08 テンプレ 2008-06-18 Upload 今日の2件 BBS(1) FrontPage(1) counter: 6535today: 1yesterday: 1online: 1 アセンブラとは † アセンブリ言語をアセンブルするのがアセンブラである。 ただし、アセンブリ言語を指してアセンブラと言うことが多い。 CPUの中身を知りたいと思ったらアセンブラでCPUを触ってみるとよい。 アセンブラ*1を使うには † 環境は、WindowsでVBとVC++があるのを想定。 VC++にはインラインアセンブラというのがある。または、アセンブルだけ他のアセンブラ(NASMなど)にやってもらうこともできる。
現在、アセンブラを使わなければならないという状況はあまりありませんが、最適化をする場合はアセンブラを知っている方がなにかと有利です。特に、コンパイラの吐いたコードを吟味することはとても重要です。よってここでは、アセンブラコードを読む能力と、簡単なアセンブラコードを書く能力を身に付けることを目標とします。 この記事は Windows 上で VC++ を使う場合を想定して書いていますが、BCC でも殆ど同じですし、gcc でも少し書き方を変えれば使えます。Intel のプロセッサ上で動く Linux 等でも基本的な部分は同じですし、命令セットの異なるプロセッサでも、基本的な部分は役に立つと思います。ターゲットは Intel Pentium 系プロセッサです。 第0回 アセンブラってどういうもの? 第1回 代入と基本的な演算 第2回 定数とメモリの扱い 第3回 レジスタについて 第4回 分岐命
はじめに. アセンブラを使って Linux のプログラミングで遊んでみます.アセンブラには NASM を使用して,カーネルを直接利用することにします. いまさらアセンブラでプログラムを作成することは,時代錯誤と感じる人も 多いかもしれません.「アセンブラでプログラミングなんて職人芸でしょう」 と思うかもしれません. 20年前では趣味のプログラミングは BASIC か アセンブラしか選択肢がありません でしたが,今ではPerl, Ruby からアセンブラまでの間に非常に多くの言語があって, アセンブラは普通では不要な最下層の知識となっていると思います. 10BaseT のツイストペアケーブルのインピーダンスを気にする人はほとんどいない ようなものでしょうか? アセンブリ言語の学習で最も困難なのは,最近では書籍が見つからないこと かもしれません. …と書いていましたが、また増えてきているようで
○GCC x86インラインアセンブラ asm ("命令 source,dest"); ■グローバル変数 --------------------------------------------------------- そのまま使えます #include <stdio.h> int i; int j; main(){ i=10; asm ("movl i,%eax"); asm ("add $10,%eax"); //数値は先頭に$マークを付ける asm ("movl %eax,j"); printf("%d %d\n",i,j); } ▼上のプログラムの書き方を変えたもの #include <stdio.h> int i; int j; main(){ i=10; asm ( "movl i,%eax \n\t" "add $10,%eax \n\t" "movl %eax,j"
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く