測定に使ったコード↓
//int
mov eax, 0x2000
int 0x2e
//sysenter
mov eax, 0x2000
mov edx, 0x7ffe0300 //SystemCallStab
call edx
far call ト sysenter ドッチガハヤイ?
926 :
デフォルトの名無しさん:04/02/04 18:25
質問です。
今の時代でもアセンブラ覚える意義はありますか?
当方、BASIC、C/C++ とやってきましたが
最近のコンパイラは性能が良く、最適化はコンパイラに任せた方が良いと聞きます。
それでも今からアセンブラを覚えるメリットはあるのでしょうか?
当方は組み込み用途では一切コーディングしませんし、Winでしかコードは書かないと思います。
>>926 知っていればデバッグする時に便利な事もあります。
>>926 別にアセンブラ=最適化でもあるまいに。
ハードの知識が足りないと思うならかじっとくべきだよ。
>>926 そういう趣旨は10年前からずっと言われてる。
本物のアルゴリズムも、神のアセンブラ最適も知らない
無学の輩
コンパイラがする最適なんぞ、人間は息をするかのように
自然にこなすものだ。
>>925 far call→retf戻りの処理時間、1800clock、キャッシュして1600clock。
sysenterはジャンプ先でいろいろやっているので、それを考慮すると
命令自体の速さはsysenterが一番速いと思う。
ブル-スクリーン1回やってしまった。
組み込み系の事は素人なんだけど
>>926 「当方は組み込み用途では一切コーディングしませんし、 」
これって、どうやってCPU動いてんの?出来合いのプログラム
つっこんでるって事かな?
>>931 Embedded-Windows があるでしょうに。
>>926 意義はあります。
まず、ローレベルデバッグの必要性が生じたときに助かります。
次に、プログラミング・パラダイムが豊かになります。
低次元で何が行われているかを知っているかどうかで、
プログラミングのスタイルもより洗練されるでしょう。
例えば、現在主流のSIMDアーキティクチャ(IA-32も、PowerPCも、CELLもそうですね)
では、並列実行を常としますが、コンパイラの吐くコードがどういう風に並列化されているか
見てみるのも、勉強になると思いますよ。
「〜しかしないから、これは覚える必要がない」
というのでは、進歩がなさ過ぎると思いませんか?
>>926 意義は無いがメリットはある。
こんなチマチマしたモノを覚える時間で別の言語でもやれば?
>>926 高級言語を使うときでも
何をすればプログラムが遅くなるか、速くなるか、などの
見通しが付きやすくなる。
あとは、逆汗解析したい時には必須かな。
アプリケーション層だけど、ハード直接アクセスのドライバ書くときも必須です。
インラインで埋め込まなくてはなりません。
940 :
デフォルトの名無しさん:04/02/05 18:59
おいおい。
943 :
名無し@沢村:04/02/05 23:21
ここも沢村がきてからすっかり糞スレになったな
と言うわけで、
>>950は早々に次スレを立ててくれ。
> (*´д`*)アハァ…
これは確定なのか・・・?
950 :
名無し@沢村:04/02/07 21:14
よりによって沢村が950かよ・・・
特令により
>>952にスレ立てを命ずる。
沢村は帰っていいよ
Σ(゚Д゚||)
がんがってみます・・・
乙(*´д`*)アハァ…
早くも沢村が・・・_| ̄|○
>>950 <BODY onresize=ResizeWindow(); leftMargin=0 rightMargin=0 topMargin=0 MARGINWIDTH="0"
MARGINHEIGHT="0" bgcolor="CCFFCC">
なんでマージンが全部ゼロなんだ。ハァ?
960 :
名無し@沢村:04/02/08 23:10
ザコのおまーらよ、言語は何やってる?
C言語?C++?Java?VB?COBOL?HSP?ふっ…おまーらって、ホントザコだな。
おれはE言語やってるね。
おまーら、D言語ってのは聞いたことあるが、E言語って聞いたことないだろ?
おまーらよ、E言語ってのはな、「executive language」日本語に訳すると「実行可能言語」だよ。
まあ、ぶっちゃけ、早い話がマシン語のことなんだよ。わかる?
おまーらよ、E言語はまたの名を「実行可能言語」とか「実行ファイル記述言語」とか呼ばれるよ。
それにしても、E言語ってすげー命名だな。命名者はおれだぞ!このおれだ。
おれはもしかして、E言語の祖と呼ばれるようになるかもしれないな。どうよ?
http://hp.vector.co.jp/authors/VA015412/
なぜ沢村とかいう人は嫌われているの?
このスレを見る限り、あまり悪い印象はないんだけど。
どうか他のスレや板も見てから判断してください
このスレだけでも充分わかると思う
× E言語
○ アセンブリ言語
それはマシン語ではない。
>>962 俺は別に嫌いじゃないぞ。
……なぜ評判悪いかは普段のレス見てりゃ何となく分かるけど。
粘着荒らし野郎という訳ではないから比較的無害な方。
あと、最近そこら中で宣伝してるマシン語のページは悪くはないと思う。
しかしあの嫌がらせとしか思えない文章とデザインはどーにかならんのだろうか。
ただ、根本的に、「マシン語(機械語)」と「アセンブリ言語(アセンブラ)」は違う
ということをわかってないようだが。
今時16bit DOSのアセンブラで
> ここは世界初のマシン語完全解説サイトになるかもよ。楽しみにねぇ♪
って言われても・・・
Win32でアセンブラならもうちょっと評価してやらんこともないんだが。
>>969 俺は、マシン語とアセンブリ言語は同じだと思うけど。
マシン語に直すのをアセンブルっていうわけだから・・・。
確かに、プログラミングするときは.txtで書いて、拡張子を.asmにしてコンパイルするわけで、プログラミング段階で.asmファイルだけど。
でも、プログラム言語はニーモニックでしょ。
マシン語はマシン語の文法があるわけで。
マシン語ってのは2進数(16進数で表記されることが多い)の羅列ですよ。
ソースをアセンブル/リンクした結果がマシン語になるんです。
ソースをコンパイル/リンクした結果がマシン語になるんです。