Menu About 過去ログ div命令の レイテンシ BBS アップローダ 最新の4件2016-01-20 BBS 2014-07-08 ??©¡???Ñ?¡ß???À 2012-07-08 テンプレ 2008-06-18 Upload 今日の0件 counter: 6506today: 1yesterday: 0online: 1 アセンブラとは † アセンブリ言語をアセンブルするのがアセンブラである。 ただし、アセンブリ言語を指してアセンブラと言うことが多い。 CPUの中身を知りたいと思ったらアセンブラでCPUを触ってみるとよい。 アセンブラ*1を使うには † 環境は、WindowsでVBとVC++があるのを想定。 VC++にはインラインアセンブラというのがある。または、アセンブルだけ他のアセンブラ(NASMなど)にやってもらうこともできる。 VBならVC++でDLL化したものを使
現在、アセンブラを使わなければならないという状況はあまりありませんが、最適化をする場合はアセンブラを知っている方がなにかと有利です。特に、コンパイラの吐いたコードを吟味することはとても重要です。よってここでは、アセンブラコードを読む能力と、簡単なアセンブラコードを書く能力を身に付けることを目標とします。 この記事は Windows 上で VC++ を使う場合を想定して書いていますが、BCC でも殆ど同じですし、gcc でも少し書き方を変えれば使えます。Intel のプロセッサ上で動く Linux 等でも基本的な部分は同じですし、命令セットの異なるプロセッサでも、基本的な部分は役に立つと思います。ターゲットは Intel Pentium 系プロセッサです。 第0回 アセンブラってどういうもの? 第1回 代入と基本的な演算 第2回 定数とメモリの扱い 第3回 レジスタについて 第4回 分岐命
はじめに. アセンブラを使って Linux のプログラミングで遊んでみます.アセンブラには NASM を使用して,カーネルを直接利用することにします. いまさらアセンブラでプログラムを作成することは,時代錯誤と感じる人も 多いかもしれません.「アセンブラでプログラミングなんて職人芸でしょう」 と思うかもしれません. 20年前では趣味のプログラミングは BASIC か アセンブラしか選択肢がありません でしたが,今ではPerl, Ruby からアセンブラまでの間に非常に多くの言語があって, アセンブラは普通では不要な最下層の知識となっていると思います. 10BaseT のツイストペアケーブルのインピーダンスを気にする人はほとんどいない ようなものでしょうか? アセンブリ言語の学習で最も困難なのは,最近では書籍が見つからないこと かもしれません. …と書いていましたが、また増えてきているようで
http://0xcc.net/blog/archives/000128.html を見て、なんかこの手の命令はたいてい GCC 拡張にあるんだよなーとか思ってたらありました。 __sync_bool_compare_and_swap と __sync_val_compare_and_swap 。 #include <stdio.h> void once(void) { // int は atomic な読み書きが可能 static volatile int entered; // 最初は 0 int result; result = __sync_val_compare_and_swap(&entered, 0, 1); // cmpxchg になる if (result == 1) { // すでに入ったことがある場合は return; // すぐ出る } // 初回の場合のみ、何かを
How to find words by their prefix, which can be mistyped, and sort them by frequency stored with the word. 12 years ago Intel® Architecture Instruction Set Extensions Programming Reference (PDF reference). The description of new instructions in the upcoming Haswell processor, including transactional memory support, hardware random number generator, and 256-bit vector integer operations. The transa
最近ではコンピューター、ウェブ、モバイルでゲームを楽しめるようになりました。これらのゲームプログラミングについて学びましょう。 ゲームプログラミングの特徴 ゲームプログラミングは比較的新しいジャンルです。 ゲーム開発に使用される言語は、C#、C++、JavaScript、Swift、Rubyです。ゲームでは通常のアプリケーションと異なり複雑なビジュアルを操作するパフォーマンスと速度が要求されますので、プログラム言語もそれに特化している言語がおすすめです。 ゲームプログラミングは今後も人気の職種です。習得してステップアップを目指しましょう。 Oracle PLのプログラミング言語について学びましょう。 Oracle PLの特徴 SQL、T-SQLと同様にOracle PLもデータベースを処理するための言語です。違いとしてはOracle PLは世界最大のデータベースのひとつであるOracleデ
○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"
SEA & FSIJ 合同フォーラムでビット演算による最適化の妙味とJITアセンブラの中でデモに使ったVMを紹介します. JITの紹介のために前日に2時間ででっちあげたVMなので本当に小さい(200行程度)ですが,エッセンスは楽しめるかなと思います. ソースはXbyak.zipです.この中のxbyak/sample/toyvm.cppが今回作ったVMです(Win, Linuxと多分Intel Macでも動きます). このサンプルはフィボナッチ数列を計算して表示するだけのものです. ここではどのように作ったかの説明をします.一つ前のエントリの資料も参考にしてください. 話の流れ toyVMのスペック,命令セットと命令フォーマットを決める toyVMのアセンブラを作る toyVMの実行部分を作る toyVM用のフィボナッチ数列プログラムを作って実行する toyVMのマシン語をx86に変換するリ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く