トップページ⇒tech
1001コメント276KB

アセンブラ… (;´Д`) ハァハァ

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
アセンブラ全般に関するスレッドです。

【前スレ】
アセンブラ… (*´д`*)アハァ…
http://pc5.2ch.net/test/read.cgi/tech/1076157613/l50
0002デフォルトの名無しさんNGNG
【過去ログ】
アセンブラ… (゚д゚)ウマー
http://pc2.2ch.net/test/read.cgi/tech/1060928704/l50
アセンブラヽ(`Д´)ノモルァ
http://pc2.2ch.net/tech/kako/1040/10402/1040297337.html
アセンブラヽ(`Д´)ノモルァ
http://pc3.2ch.net/tech/kako/1016/10169/1016991911.html
アセンブラ… (・∀・)イイ!
http://pc.2ch.net/tech/kako/1002/10022/1002267809.html
0003デフォルトの名無しさんNGNG
This is kusosure!!
0004デフォルトの名無しさんNGNG
http://www.tron.co.jp/asamiya/conpilerworks/comp01.jpg
この人でつね?
0005デフォルトの名無しさんNGNG
ティンポ(;´Д`) ハァハァ
マムコ(;´Д`) ハァハァ
0006デフォルトの名無しさんNGNG
再利用されずにあぶれたスレ('A`)
[あせん] ぶりゃー!]
http://pc5.2ch.net/test/read.cgi/tech/1087618810/
0007デフォルトの名無しさんNGNG
アセンブラとは
妙齢の女性の、たっぷりと汗を含んだ純白のブラジャーのことを言う
するとアセンブルとは
アセンブラを十分に振り切って汗をおとすことでなければならない
したがって、マクロアセンブラとは
黒いアセンブラのことである

では、ニモニックとは何か
これが諸君への課題である。

回答を提示した結果、不都合が生じても
当局は一切関知しないからそのつもりで


0008デフォルトの名無しさんNGNG
ニモ(魚)の肉。
0009デフォルトの名無しさんNGNG
ニーモニック、mnemonicは実はムネモニクと読む。
胸も肉、つまり
「なんでおっぱいにハァハァするのですか? 肉です。」
という意味だ。
0010デフォルトの名無しさんNGNG
だれかOpteronで64ビットモード試してみた強者はいないのか。
0011デフォルトの名無しさんNGNG
なんでこんなもんに対応しなきゃならんのだと愚痴タレながらドライバ改造してる
人なら一人くらいいそうだがw
0012デフォルトの名無しさんNGNG
アセンブラで Windows アプリケーションを作成しようとしている私。
0013デフォルトの名無しさんNGNG
>>12
おお、頑張ってください。

アセンブラで開発されたWindowsアプリケーションといえば…
http://www.vector.co.jp/soft/win95/hardware/se254476.html
0014デフォルトの名無しさんNGNG
フルアセンブラでWinアプリ作っても意味無いyo。
面倒なだけで、やることはCで作るのと大してかわらんからな。
0015デフォルトの名無しさんNGNG
極小アプリ作るにはCだけじゃ限界がー
0016デフォルトの名無しさんNGNG
>>15
crt0を自前で用意して、標準ライブラリを一切使わない。
0017デフォルトの名無しさんNGNG
>>15
これでexeサイズ2.5k。
コメントはずせば警告がでるが、2.0kになる。

#include <windows.h>
#pragma comment(lib,"user32.lib")
#pragma comment(lib,"kernel32.lib")
#pragma comment(linker,"/nodefaultlib:libc.lib /entry:CodeStart /opt:nowin98")
//#pragma comment(linker,"/merge:.rdata=.text")
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int);
void CodeStart()
{
ExitProcess(WinMain(GetModuleHandle(NULL),NULL,GetCommandLine(),SW_SHOWDEFAULT));
}
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{
MessageBox(NULL,"TEST","",MB_OK);
return 0;
}
0018デフォルトの名無しさんNGNG
>>17
WinMainのlpCmdLineはGetCommandLine()から自分自身のプログラムのパスの部分を抜いたものってことになっているんで
直接GetCommandLine()を渡すわけには行かないんだな
0019デフォルトの名無しさんNGNG
コマンドラインの解釈ってめんどいよな
なんでCRTが処理すんだよOSの仕事だろ
0020デフォルトの名無しさんNGNG
>>19
CommandLineToArgvW() では不満かえ?
0021デフォルトの名無しさんNGNG
うわこんなAPIあったのかー
ありが�d
0022デフォルトの名無しさんNGNG
>コマンドラインの解釈ってめんどいよな

およそアセンブラを扱うスレで聞くようなコメントではないなw
評価ボードかってきて動くものを作ってみればいかにWin環境が恵まれているが
恐竜のように肥大化しているかがわかると思うよ
0023デフォルトの名無しさんNGNG
>>17
>コメントはずせば警告がでるが、2.0kになる。

まだ甘いな。
/merge:.data=.text /merge:.rdata=.text /section:.text,erw
にすれば1.0KBか1.5KBになるはず。
/section:.text,erwをつけておかないとNT4.0では動かない。
0024デフォルトの名無しさんNGNG
>>22
確かに。
今そのコマンドラインを渡す側をアセンブラで作ってるとゆーことで今日のところは簡便してくだちい
0025デフォルトの名無しさんNGNG
>>23
それやったら、WInXP SP2で動かない予感がするのだが・・・
0026デフォルトの名無しさんNGNG
>>1
またハァハァシリーズかよ!!
キモい
0027デフォルトの名無しさんNGNG
     _ _/  _ _/      /
    _ _/ _ _/ _  /
     /      /      /
   __/   __/   _/
0028デフォルトの名無しさんNGNG
>>25
そうか? XP SP2 では実行可能属性が付いていないメモリからのコード実行が
できなくなるわけだろ。/section:.text,eで実行可能属性を付けているのだが。
今XP SP1aで試してみたが、/section:.text,rwとして実行可能属性を外して
コンパイルしても問題なく実行できたが、SP2だとこれは動かんのだろうな。
0029さっきゅんNGNG
SP2でも動かなくなるのは一部の機種の罠ー
0030デフォルトの名無しさんNGNG
>>28
そうだったのか…

実行可能属性が付いてるメモリは書き込み付加、
書込可能属性が付いてるメモリは実行不可能
と勘違いしていたようだ、すまんかった。
0031デフォルトの名無しさんNGNG
このスレタイは今までで一番いいね。
汗かいてるし。 アセンブラだけに。
0032デフォルトの名無しさんNGNG
・・・
0033デフォルトの名無しさんNGNG
>>31
30代のセンスネタキタ─wwヘ√レvv〜(゚∀゚)─wwヘ√レvv〜─ !!
0034デフォルトの名無しさんNGNG
アセンブラでActiveXやDirectXは使えないの?
0035デフォルトの名無しさんNGNG
使える。沢村って奴がスゴい。
0036デフォルトの名無しさんNGNG
沢村とやらは、何故にアセンブラでそんなことをやろうとするのか。
何のメリットもない単なるオナニーにしか思えないんだが。
0037デフォルトの名無しさんNGNG
メリットってなんですか?その書き込みにはメリットがあるんですか?
0038デフォルトの名無しさんNGNG
好きでやってるんだし、別にオナニーでもいいと思うけどな
0039デフォルトの名無しさんNGNG
DirectXと言えばゲーム
これに関してはメリット大有り
0040デフォルトの名無しさんNGNG
CやC++でできる以上、面倒なだけでアセンブラでもできる。
でもメリットなんて無いよ。
高速化したければその部分だけインラインアセンブラ使えばいい。
0041デフォルトの名無しさんNGNG
次のタイトルは

「 アセンブラ… 。・゚・(ノД`)・゚・。 ウエーン 」

でお願いします
0042デフォルトの名無しさんNGNG
これだからハード任せのプログラマは…
0043デフォルトの名無しさんNGNG

      \∧_ヘ     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ,,、,、,,, / \〇ノゝ∩ < >>950盗り合戦、いくぞゴルァ!!       ,,、,、,,,
    /三√ ゚Д゚) /   \____________  ,,、,、,,,
     /三/| ゚U゚|\      ,,、,、,,,                        ,,、,、,,,
 ,,、,、,,, U (:::::::::::)  ,,、,、,,,         \オーーーーーーーッ!!/
      //三/|三|\     ∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
      ∪  ∪       (    )    (     )   (    )    )
 ,,、,、,,,       ,,、,、,,,  ∧_∧∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
      ,,、,、,,,       (    )    (    )    (    )    (    )
0044デフォルトの名無しさんNGNG
>>36
アセンブラを学習することのメリットはあるんだが、説明するのはメンドウだな。
0045デフォルトの名無しさんNGNG
CPUの速度が今以上に上がれば、高速なアプリなんか苦労して作る必要なんか極端に減るよ。
8Bit、16Bit全盛のころはアセンブリ言語で書くのが普通だったのが、32Bitの高速CPUが出てきたころには
Cなどの高級言語で書くのが一般的になった。
今時、アセンブリ言語でプログラムを組む機会はほとんどない。
このまま、CPUの速度が向上すれば、VM上で動作する言語でほとんどのアプリが作成されるようになるんじゃないの?
要するに、ハードウェアの進歩によって、実行速度よりも、簡単に開発できることが優先されるようになるってこと。
0046デフォルトの名無しさんNGNG
NASMのトレンドとか追いかけてませんが、SSE3のコード吐けるパッチとか
ないですかね?
0047デフォルトの名無しさんNGNG
>>45
って10年前もいってたな。
0048デフォルトの名無しさんNGNG
というか、レイトレやリアルタイム3Dなど、計算量が膨大なアプリでは、ベクトルの内積・外積、行列の乗算、変換くらいは、SSEや3DNow!をサポートするためにアセンブリで書くよ。あとx87のパイプラインも目いっぱい使いたいしね。

0049デフォルトの名無しさんNGNG
え、またこの話題ぶり返してるの?
1スレ目の最初の方で結論出てると思ったが。
アセンブリ書いて得するのは書いている本人。
コンピュータの動作等に対する理解が深まる。
まあ、やってる人は殆ど趣味でやってるんだろうから
ほっとけってこった。
0050デフォルトの名無しさんNGNG
いい加減、くだらんネタは放置しろ。
こんなんだから、この板じゃまともなネタ師が
育たない、なんて言われるんだ。
0051デフォルトの名無しさんNGNG
>>45
>8Bit、16Bit全盛のころはアセンブリ言語で書くのが普通だったのが
(16bit ってのは見なかったことにするとして)
それはリーズナブルな価格のコンパイラが無かったからであって
速度云々ではない。
0052デフォルトの名無しさんNGNG
なんでアセ否定する人っていつも実用前提で書くのん?
趣味なんだよオタクなんだよ俺は
口出しするなあああああああああああああきええええええええええええええ
0053デフォルトの名無しさんNGNG
高級言語なんてのは、ただ高いだけの鉄筋コンクリート製のビルみたいなもんだ。
そこへいくと低級言語は、古式ゆかしい木造建築に通じるものがある。
無論、99%は風化し忘れ去られるだろうが、1000年経っても生き残るのは我々なのさ。
そのうち伝統工芸に指定されるかもしれんぞ。
0054デフォルトの名無しさんNGNG
人間国宝デーブ・カトラー
0055デフォルトの名無しさんNGNG
要するに古墳とかピラミッドみたいなものでしょ? > アセンブラ
後世の人間は「あぁ、昔の人は力押しの人海戦術で大変だったんだなぁ」と思いながら、土産物のZ80饅頭を売りさばき、
C+++++++くらいの超高級言語でプログラムを組むのさ。
0056デフォルトの名無しさんNGNG
>C+++++++
error: invalid lvalue in increment
0057デフォルトの名無しさんNGNG
斡旋ブラーどもにはCすら書けないようだ
0058デフォルトの名無しさんNGNG
Z80饅頭にワロタ
0059デフォルトの名無しさんNGNG
近くのFORTRAN遺跡ではパンチカード(まんまか)、
メインフレーム遺跡ではオープンリール磁気テープ型バームクーヘンが人気だそうだ。
0060デフォルトの名無しさんNGNG
マシン語出来る人間は何だって書けるが
CやJAVAしか書けない低能はそれだけ
0061デフォルトの名無しさんNGNG
何で偏る人がいるんだろうかね
共生できなきゃプログラマじゃねーよ
0062デフォルトの名無しさんNGNG
基板設計みたいなもんだな。いまはLSIの組み合わせが主流だが・・・。
アセンブラが必要になることはたまにはあるよ。
0063デフォルトの名無しさんNGNG
ドライバもかけないのね
0064デフォルトの名無しさんNGNG
C出来るやつはアセンブラだってやればできるだろ。
0065デフォルトの名無しさんNGNG
別に共生の必要性なんてゼロだしな
アセンブラさえあれば全てが可能なわけだろ
他の言語はただのアホ用ラッパーに過ぎない
0066デフォルトの名無しさんNGNG
そんな高尚な天才さんに付き合えるほど長い納期なんて無いけどな
0067デフォルトの名無しさんNGNG
exit();する前にfree();する必要が{ある|無い}双方の理由をアセンブラ的に教えてください
0068デフォルトの名無しさんNGNG
くだらん
0069デフォルトの名無しさんNGNG
>>67
アセンブラでの問題ではないな
OSとかそういうレベルのような
0070デフォルトの名無しさんNGNG
アセンブラやりたいけど、鯖や制御関係じゃなければ意味無いよな
0071デフォルトの名無しさんNGNG
例えはうまいようでも全くアセンブラでプログラムが書けない香具師ばかりだな。
0072デフォルトの名無しさんNGNG
鯖でアセンブラ要する場面ってめっちゃ少なくないか?


ところで最近のx86 CPUでは、Decoderがネックとなる場面がもっとも
多い感じがするな、つぎにLoad/Store Unitあたりか?

と寝た振りしてみる
0073デフォルトの名無しさんNGNG
今更x86でアセンブラ使う意味なんて無いよ。
コンパイラ作者でも無い限り。
0074デフォルトの名無しさんNGNG
このスレはコピペばかりだな

しかしアセンブラが必要な場面が減っているのは確かだな
qemuはダイナミックリコンパイラすらCで書いているし
0075デフォルトの名無しさんNGNG
スタートアップルーチンとかIPLとか、そういうところはアセンブラの出番じゃない?
0076デフォルトの名無しさんNGNG
画像処理で高速化したい場合よく使うけど。
まあそれでもインラインアセンブラまでだけどな。
0077デフォルトの名無しさんNGNG
VXDドライバを書く人もいないし。
0078デフォルトの名無しさんNGNG
大量の算術演算やゲームとか普通に使うだろ
0079デフォルトの名無しさんNGNG
>大量の算術演算やゲームとか
は、普通じゃないよ(w

0080デフォルトの名無しさんNGNG
UD Agentとかには使うかもなw
0081デフォルトの名無しさんNGNG
コンパイラの最適化じゃ拡張命令とか対応遅いしねー

SSE2とかもしばらくはicc買うかインラインで手書きしかなかったし
AMDになると尚更
0082デフォルトの名無しさんNGNG
結局、インラインアセンブラで十分ってことじゃん
0083デフォルトの名無しさんNGNG
インラインで十分でもアセンブラ不要説にはならない
0084デフォルトの名無しさんNGNG
アセンブラ不要説にはならないが沢村不要説の補強は出来る
0085デフォルトの名無しさんNGNG
アセンブラ知らないとOS作れない。
0086デフォルトの名無しさんNGNG
OSkitを使えばアセンブラ不要
0087デフォルトの名無しさんNGNG
BIOS作れないよ
0088デフォルトの名無しさんNGNG
そんなもの個人で作る物じゃない
0089デフォルトの名無しさんNGNG
あとエミュレータもつくれないな。
0090デフォルトの名無しさんNGNG
アセンブラは既にボトルネック改善にしか使われないからな
0091デフォルトの名無しさんNGNG
でも斡旋ブラ書けるとちょっとだけカコイイ。変態度が高そうだから近づきたくないけど。
0092デフォルトの名無しさんNGNG
Javaなんてもうサーバサイドにも使われなくなるからな。
0093デフォルトの名無しさんNGNG
Cとか言ってるのはサニーやカローラでも動けばいいジャンってタイプだな
アセンブラー使いは知能が高く判断する目があるからからセルシオやシーマ乗ってると
0094デフォルトの名無しさんNGNG
寧ろ86最強とか言って豆腐屋信仰してるキモオタにしか思えないのだが
0095デフォルトの名無しさんNGNG
ハコGT-R最速
0096デフォルトの名無しさんNGNG
アセンブラ最強だよ。使 い こ な せ れ ば な
アセンブラだけを最後に使ったのは何年前のことか…
0097デフォルトの名無しさんNGNG
違いが分かる男とか言いながらインスタントコーヒー飲んでやがんの
0098デフォルトの名無しさんNGNG
Subversionは何故Cで書かれたか。Cは勿論のことC++、Java、Perl、Rubyその他多くの言語で容易にラッピング出来、エクステンションを書くのが簡単なためである。


アセンブラはせいぜいCでラッピングしてもらわなきゃろくに使えないね。
0099デフォルトの名無しさんNGNG
>>98
アセンブラをCでラッピングってどうやるんですか?
0100デフォルトの名無しさんNGNG
Cの仕様そのものじゃん
0101デフォルトの名無しさんNGNG
>99
インラインに放り込むってことでしょ
■ このスレッドは過去ログ倉庫に格納されています