[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 06/24 11:52 / Filesize : 195 KB / Number-of Response : 910
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

アセンブラ… Part 12



1 名前:デフォルトの名無しさん [2007/08/14(火) 17:18:08 ]

アセンブラ全般に関するスレッドです。

【前スレ】
アセンブラ… ( ゚д゚)ウッウー
pc11.2ch.net/test/read.cgi/tech/1174825173/



313 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 23:18:58 ]
どなたか教えてください。
参考書を見ながら学習中ですが、1.の環境で2.のファイルを3.のコマンドでビルドした結果4.のアセンブリコードを得ました。コールして欲しいsys_writeがコールされず、実行ファイルは思った動作になりません。
5.のように修正し、6.で実行ファイルを生成すると思った動作になります。
何が問題となって3.のコマンドでsys_writeコールが生成されないのかわかりません。


314 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 23:19:37 ]
1.環境
CPU:AMD-K6(tm)
gcc version 4.1.2
GNU ld version 2.17 Debian GNU/Linux
ldconfig (GNU libc) 2.3.6

2.ファイル hello-asm.c
#include<unistd.h>
char message[]="Hello, world!\n";
int sys_write(int fd, const void *buf, int len){
int ret;
asm("int $0x80" : "=a" (ret) : "a" (4), "b" (fd), "c" (buf), "d" (len));
return ret;
}
void sys_exit(int stat){
asm("int $0x80" : : "a" (1), "b" (stat));
}
void main(){
sys_write(1, (void*)message, sizeof(message));
sys_exit(123);
}

3.コマンド
gcc -nostdlib -save-temps -Wl,--entry=main -Wl,-t -o hello-asm -O2 -finhibit-size-directive -fno-ident -fomit-frame-pointer -fcall-used-ebx hello-asm.c


315 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 23:21:57 ]
4.生成アセンブリコード一部
main:
leal 4(%esp), %ecx
andl $-16, %esp
pushl -4(%ecx)
pushl %ecx
subl $4, %esp
movl $123, (%esp)
call sys_exit
popl %eax
popl %ecx
leal -4(%ecx), %esp
ret

5.正常動作アセンブリコード
main:
削除: leal 4(%esp), %ecx
削除: andl $-16, %esp
subl $16, %esp
pushl $15
pushl $message
pushl $1
call sys_write

6.修正後コマンド
as hello-asm.s -o hello-asm.o
/usr/lib/gcc/i486-linux-gnu/4.1.2/collect2 --entry=main -o hello hello-asm.o


316 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 00:10:48 ]
asmにvolatileを付けてみたらどうかね。


317 名前:313 mailto:sage [2008/03/11(火) 00:25:38 ]
>>316
おおー、直りました!
コンパイラは不要なソースとして認識したんですね。。。
-O2 → -O0 に変更したらvolatile無しでも動作しました。
ありがとうございましたm(_ _)m

318 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 12:31:21 ]
gccでアセンブラはかせてみたら下のようになった(抜粋)んだが・・・

main:
        pushl   %ebp
        movl    %esp, %ebp
        subl    $8, %esp
        andl    $-16, %esp
        movl    $0, %eax


"andl $-16, %esp"の部分は動作的にはスタックポインタの下位4bit切り捨てはわかるんだけど、
どういう意味なのかがよく分かりません。
ページング方式だからメモリ確保かなあと思ったけど確保される容量みても全然すくないし・・・

319 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 12:43:39 ]
アラインメント合わせだと思うけど

320 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 19:19:06 ]
-n での AND は便利なので覚えるべし。
>>318の例だと
16バイトアラインで8バイト以上のスタック領域を確保
という意味になる。
机上で考えてごらん。

もちろん>>318の例のエピローグコードは理解できるね?

321 名前:318 mailto:sage [2008/03/14(金) 14:02:58 ]
レスありがとうございます。
いろいろ自分でも調べてましたが、アライメントの調整っぽいですね。
アセンブラは学校で理論的なことは教えてもらったんですが、実践的なことは全然ならってなくて・・・

>>320
エピローグコードって最初の3行のコードですよね?
これって
呼び出し元のベースポインタの退避
呼び出し先のベースポインタの設定
最初のプッシュしたデータ分のスタックポインタの設定
ですよね?



322 名前:デフォルトの名無しさん mailto:sage [2008/03/14(金) 18:24:59 ]
辞書位引け epilogue prologue

323 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 23:37:20 ]
プロローグとエピローグのどっちがどっちだったか分からない時期が俺にもありました…

324 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 23:41:13 ]
pro- 前〜
epi- 後〜

325 名前:デフォルトの名無しさん mailto:sage [2008/03/17(月) 04:01:46 ]
GCCの拡張で、".code16gcc"を使えば、32bitセグメントから16bitセグメントの関数を
呼び出したり(その逆も)するのが簡単になるようなんですけど、16bitと32bitが混在
するようなコードを書く場面ってあるんですか?

326 名前:デフォルトの名無しさん mailto:sage [2008/03/17(月) 10:51:51 ]
ブートローダーとか?

327 名前:デフォルトの名無しさん mailto:sage [2008/03/17(月) 10:54:18 ]
仮想86モードとか?

328 名前:デフォルトの名無しさん mailto:sage [2008/03/17(月) 10:55:11 ]
リブートのためのエピローグコードとか?

329 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 00:06:50 ]
16ビットで書いてあるコードを32ビットに移植したいときとか?

330 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 19:44:52 ]
物好きとか?

331 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 22:27:27 ]
code16gccは16bitコードを埋め込める機能であって呼び出せる機能ではないようだが



332 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 22:28:17 ]
DEADBEEF

333 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/03/20(木) 22:31:35 ]
BADFACE

334 名前:デフォルトの名無しさん mailto:sage [2008/03/21(金) 12:18:21 ]
CAFEBABE

335 名前:デフォルトの名無しさん mailto:sage [2008/03/21(金) 13:13:16 ]
EFFACED

336 名前:デフォルトの名無しさん mailto:sage [2008/03/21(金) 15:47:17 ]
BACA

337 名前:デフォルトの名無しさん mailto:sage [2008/03/21(金) 17:13:58 ]
LCDのバイアス電源は主電源落とす前に切っとけよ。
とかいうときに。

338 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 12:46:20 ]
Ce11Ba11

339 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 09:51:15 ]
最近アセンブラ勉強し始め、初めての8086+Debugコマンドで本を読み終わったんだが、
次はどこぞのアセンブラを使ってみたいと思う。

少し前だとnasmだと思うけど、最近は何がメインで使われてる?
Win+CygwinかFreeBSDの環境で使う予定。

340 名前:デフォルトの名無しさん [2008/04/13(日) 10:03:05 ]
あげ

341 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 10:13:32 ]
>>339
Windowsのデバドラ開発とかだったら由緒正しいMASM。確かDDKに添付。
PC-Unix界隈だとやはりnasmか、あるいはgas



342 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 10:28:09 ]
こんな過疎スレ常に見てるやついないって 今でもNASM・GAS

343 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 10:38:01 ]
>>341,342
thx
まだnasmがいいのか。MASMも使えるならやってみるかな

ム板ってアセンブラスレ、ここくらいだっけ?
やっぱり2chにはアセンブラ使い少ないのか。。。

344 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 11:38:47 ]
て言うか、RISC が流行りだした頃から、アセンブラのコード書くのが
激しく面倒になったし C でそれなりの性能が出るようになったから、
BIOS / ブートローダとか、ほんとにカリカリチューニングする奴ぐら
いしか使ってないだろ。

345 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 11:46:34 ]
音声処理、画像処理、暗号化、圧縮…
まあこんなとこか

346 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 11:55:44 ]
ダンゴさんはもっと有用なことに使ってそうだな

347 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 12:01:05 ]
>>344
R3000とかは、そこら辺のCISCなどよりむしろ楽だったよ、しかも高速だった。
R4000以降は最低だけどね

348 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 12:03:01 ]
gas は嫌いだ、人が書くようにできてない

349 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 14:04:07 ]
gasの構文はきもいんだよな

350 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 14:55:30 ]
>>347
アセンブラの書きやすいCPU(基本に忠実な32ビットCPU)
68020、MIPS32、V70
アセンブラの書き難いCPU
SuperH、Alpha、SPARC、ARM、IA64など

351 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 15:23:07 ]
アセンブラの書き難いCPU
x86も追加してくれ



352 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 15:49:20 ]
ARM そんなに悪くないけどなぁ。


353 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:40:32 ]
こなれてると思う。

354 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 17:17:44 ]
350がロートルだということはわかった

355 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 19:18:04 ]
遅延ジャンプの理由は何?

356 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/04/13(日) 19:54:15 ]
SHは「Cの関数で変数はほとんど16個以内に収まるからレジスタ数は16あれば十分」
みたいな設計思想で作られてるんでアセンブラではそんなに扱いやすくないんでないの?
良くも悪くも高級言語時代の組み込みCPUアーキテクチャって感じ

あとIA64も同意する。

357 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 20:33:20 ]
SH はセコくて嫌だったな。
そーゆー設計思想だからしゃーないけど。


358 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 21:39:52 ]
アドレスの指定がめんどくさい

359 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 04:44:51 ]
8085やZ80や6809や8051はASM書きやすかったな。85は今でも現役だけど。

360 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 04:47:36 ]
要求がそれほどじゃなかったからね、昔は。

361 名前:デフォルトの名無しさん [2008/04/14(月) 07:01:20 ]
8085よりは演算命令が充実してレジスタの多い8086の方が書きやすい。
でも68000はもっと書きやすい。って行くとR3000は書きやすかった。



362 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 10:31:08 ]
>>356 はGPLv3とAGPLを混同する悪質なFUDをばらまいてた固定

363 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/04/14(月) 11:46:57 ]
一言で言うとGNUは嫌いです

364 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 11:48:32 ]
>>359
この時代で一番いいのは6502だろ、マイナーだったことと周辺LSTのそろいが悪いので売れなかったけど。
反面一番売れたZ80は、タイマー・DMA・I/Oインターフェイスと大抵の物がそろっていて、はんだこて握らなくて済むように
ソケットにでもしてしまえば今のPC自作と変わらないレベルだった。
それ以外にもZ80は、メモリーを節約しやすかったので、この点もメモリーの制約の大きな時代では大きなアドバンテージになったと思う。
それで、書きやすかったかといえば・・・・・ちょっと微妙な気がするな。
16ビット計算もなんちゃって計算なのでフラグが使えなかったりと・・・
高速な乗算に使える1を入れての右シフトは公開してほしかった、こんな大事なもの非公開の隠し命令にするなんて何事だと当時思った。
もうひとつついでにDRAMのリフレッシュをする機能であるRレジスタは、CPUリセットで停止してしまう片手落ちをなんとかして使えるものにしてほしかったな。
リセットするごとにメモリーが消えては使い物になりましぇん。
こんな事書いていると年がばれるぅぅぅ

365 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 13:06:09 ]
>>363
わざと誤情報をばら撒いたという事か
悪質だね

366 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 22:18:02 ]
>>361
MIPSは良かったねぇ

>>365
かわいそうな子にさわっちゃいけません


367 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 23:22:44 ]
>>364
今もこれだけの愚痴が出るということは
かなり根に持ってるな?w

アセンブラ、ゴリゴリいじってみたい気もするけど、
今いじる仕事といえばかなり卓越してないと無理だろうな。。。
趣味だけにしとこ

368 名前:デフォルトの名無しさん mailto:sage [2008/04/14(月) 23:40:36 ]
6502ってハミコンか?

369 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 01:05:09 ]
ダンゴさんがピシっと〆てくれたな

370 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 06:51:48 ]
6800作ったMotorolaからスピンアウトした連中がMostekって会社作って6502作った
6800は8bitとしては歪んだ(贅沢な)設計だったが6502は潔かったので安くて速かった
AppleIIに採用されたことで有名
ファミコンはそれのカスタム版だったと思う

371 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 13:22:15 ]
>>367
いやぁ、懐かしい思い出だよ
Z80はプログラムを作る方はともかく、ロボットを作ったりしたときなどはそりゃもう一番楽しいチップだったよ。
大手メーカーがこぞってこれを使ったのは、技術的なハードルが低いのとコストの安さだろうね。
逆にいえば、これを使っているメーカーの技術力はしれていたと思ってます。
シャープのテレビ事業部の製品などは、技術とかそんなの関係なしに楽しかったな、ハードはああでなきゃいかんです。
富士通は技術力あったけれど、つまらんマシンだったと思ってるので。

>>370
6502は、無駄を省き必要最小限にシェープアップすると、ここまで変わるのかという例だね。あとR3000も。
不必要な命令セットは、憶える事も余分に増えるし、大して代わり栄えのしないトライアンドエラーによるチューンが増える。
時間が無駄になる割には効果は薄いと思った。



372 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 17:25:44 ]
>>371
全くだ。6502は6802に対応するチップだが本家より先に出したんだから凄い。
多分Moto内部で6800に負けたデザインなんだろ。

373 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 21:44:58 ]
>>371
そういう経験っていいなー。ハード屋目指してみるかな?w
けど、今のハードのレベルだと三十路過ぎから勉強しても無理だよな。。。

趣味でやろうと幾つか買ってるけど全然いじってないしorz

374 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 23:26:42 ]
>>373
それハード屋じゃない。

375 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 00:02:56 ]
>>374
じゃあ何屋になるんだろ?単純に組み込み系かな?
すまん、門外漢で全然分からんw

376 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 00:13:07 ]
>>372
> 6502は6802に対応するチップ

どこが対応してるんだ?

377 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 00:21:28 ]
ソフト屋(低レベル)とか制御屋とか?

378 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 00:40:43 ]
>>377
thx

ハード屋=回路設計だっけ?

379 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 13:06:17 ]
組み込みとか楽しそう。

380 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 03:10:43 ]
>>376
中味の話じゃなくて位置付け

381 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 21:49:11 ]
>>390
だから、位置付けのどこが対応してるんだ?

# 中身は、言わずもがなだろ。



382 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 21:49:29 ]
対抗するチップ、のほうがしっくり来るな。

383 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 21:50:25 ]
はいはい、おじさん同士喧嘩しないの!

384 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 22:13:22 ]
横からお邪魔しますが,型番が全てを表してるんじゃないの?

385 名前:デフォルトの名無しさん mailto:sage 全てって何さ [2008/04/18(金) 12:22:59 ]
いえ、型番だけではビット数もパッケージのピン数も
開発者の嫁の顔もわかりません。

386 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 13:02:05 ]
【コラム】Hello Worldコレクション (5) アセンブラ編 - OSごとに微妙に異なるスタイルを使い分ける
ttp://journal.mycom.co.jp/column/helloworld/005/index.html

387 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 15:08:28 ]
昔はVRAMのアドレスやジョイステックのポートを直接読んだり書いたり、Hello World なんかよりよほど面白かったんだけどな
アセンブラがわからなくても、ベーシックについているモニタモードなどでアドレス指定して直に書き換えしているうちに憶ちまった人もいるし
今はいちいちOSにお問い合わせしないと何もできないからすぐに結果が出せなくて面白くないね。
言語関係をやっている人以外には興味の湧くところでなくなった。

388 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 16:20:14 ]
> 昔はVRAMのアドレスやジョイステックのポートを直接読んだり書いたり

必要なのはアセンブラではなくてメモリのマッピングの情報だったりする。
自身でも書いているけど、ベーシックだろうがCだろうが可能だよね。

ちょっと前に趣味でDSの自作ソフト作ってみたけど、
そこでもARMのアセンブラの知識が有効活用されたと思ったことはあまりなかったな。

本当にもうコンパイラ屋さんしか必要ない情報なのかも

389 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 16:21:53 ]
思い出した。ゲームのプロテクトを外すのにはアセンブラ必須だったね。
9801のディスクアクセス割り込みの CD 1B とか懐かしいな。

390 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 17:48:26 ]
>>388
コンパイラのアセンブリ出力見たりしない?
私は最適化をどう行なったのか当たりをつけるために、しばしば見てるんだけどねぇ。

391 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:08:06 ]
>>388
> 本当にもうコンパイラ屋さんしか必要ない情報なのかも

ブート部分を書く人にも必須だよ。

まあ、流通量の多い機器ならコンパイラ屋さんがサンプル提供している
ケースも多いけど。

>>390
>>388 は知らんけど、俺は何か問題かある時とかよっぽどきちきちに組み
たい時以外は見なくなった。



392 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:26:12 ]
最近はコンパイラの品質も高く

あとは言わな(ry

393 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:31:45 ]
>必要なのはアセンブラではなくてメモリのマッピングの情報だったりする。
最近のハードウェアがまたI/Oをメモリーにマップする(x86場合はIO空間か?)より
通信が中心になってパケットをDMAまたは、それに類似する方式で送る形式になっているので、
「すぐにアクセスできる感」は直に触ってもないんだよな。
近年のハイパフォーマンスを実現するにはアドレスとデータのペアなんか送っていたのでは性能が出ないというのも難解にしているような気がする。
すっかり総ネットワークプログラミング状態だよ。
昔ながらのアクセス方法が今に続いているのはメモリーだけになってきている。

394 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:37:08 ]
>>392
高くはないけれど、最近のハードウェアの特性が地味チューンを無意味にしている所はある。
メモリーキャッシュに乗せる技術でほぼ全部だし、それ以外はやってもやらなくても殆ど変わらない。

395 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:46:25 ]
うーむ、アセンブリ出力を眺めてループ内にdivがいくつあるか数えるような使い方するのはうちくらいか?w

396 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:06:55 ]
よし、みんなで秋葉原の鈴商にHD64180を買いに行こう!

397 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 20:50:36 ]
>>389
よく SYMDEB で弄ったな。

>>396
作りかけのCP/Mボードが部屋に転がってるw
まだ64180なんて売ってるのか。
まぁ8085とか6800とかも売ってる所が在るから不思議では無いか。

398 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 21:33:00 ]
6800系はまだ現役だね。マイクロコントローラになっちゃってるけど。

399 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 23:24:05 ]
>>395
多分君のところだけ。

普通のところはそんなことする必要がある部分は初めからアセンブラで書くと思う。

400 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 11:24:59 ]
86や使いこなせばこなすほどコンパイラなる我が身なりけり
68kどれを使えばよいのやらgccに道を問ふまで

引用元忘れた

401 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 16:31:46 ]
最初のコンパイラはASMで書いたけど、cができたらそのcもcで書き直すよね。
そうすると新しいチップができてもそのコンパイラはコンパイラで書くんじゃないの?



402 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/04/21(月) 16:45:42 ]
機械語やデータのバイト列生成するだけならfwriteとかfputcharで十分だな

403 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 17:42:38 ]
sレコードとかならprintfでいける。

404 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 17:47:04 ]
ところで昨日鈴商いったんですよ、でね、HD64180探してたら目の前に8085があるじゃないですか。
マルチプレクスされたバスなんて、ちょっと回路組んだ気分にひたるには丁度よさそうなんで、
そのまま8255と8251と8KSRAMまで買って帰ってきちゃいましたよ。
あと373とかも。
あとはROMが欲しいので、今日、若松でDIPのFlash買って来ました。

さて、ハンダ付けハンダ付け・・・

>>397
CP/M関連でお勧めのサイトありますか?
あったら教えてください。

405 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 17:58:42 ]
www.auction.co.jp/mem1/item/mem_itm_item.asp?LOT=1036477
120円、高っ、いつか10円になっていた時代があったような・・・

406 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 19:56:06 ]
>>396
俺が知っているのはTMP64180だな。

407 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:52:02 ]
>>401
コンパイラ本体は C で書くけど、どんなコード生成すればいいかはアセンブラと
言うか機械語の知識が必要でしょ。

あと、コンパイラによってはアセンブラソースを吐く奴もいるし。

408 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 15:14:04 ]
>>407 コンパイラの最終一歩手前フェーズ(機械語生成フェーズ)がその知識を抱え込めば
いいはずですよね。 その後に最適化フェーズが何パスかあるかも。
アセンブラソースを吐かすのはデバックとかそのフェーズ検証のためが第一義で、
コンパイラでアプリを開発する人には、ゼロとは言わんがあんまりメリット無い気がする。

409 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 07:22:49 ]
>>408
いや。コンパイラ使いにも、-S 出力のメリットはある。
同じ処理で、どっちの書き方が効率良さそうかをみる時には活用できる。
もちろんベンチを取るでもいいんだけど。


410 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 18:19:15 ]
半田づけする時のヤニが焦げる香りが好きで吸い込んでいた事があったのを思い出して今ぞっとした。鉛中毒は何年後にでるかなorz
融点が高いという話は聞いていますが今の鉛フリーの半田は取り扱い難くなっているとかあるんですかね?

411 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 18:32:06 ]
はげしく板違いだな。
鉛フリーは使った事ないけど、濡れにくいと聞いている。



412 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 19:40:41 ]
上でも言われてるけどコンパイラの最適化具合見る為にアセンブリ吐かせるっしょ。
iclもifort単純な演算にハメてやらないとすぐベクトル化諦めやがる。
ま、大抵の場合はそこまで単純化出来ないから結局intrinsics使う事になるんだけどな。

413 名前:デフォルトの名無しさん mailto:sage [2008/04/26(土) 12:41:25 ]
>>411 処女みたいなもんだな。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<195KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef