« IT技術者として生き抜くための十ヶ条 | Main | ドラゴンブック始めました »

2008.04.02

パタヘネを一緒に勉強する人募集中、めざせバイナリアン!

春ですね。パタヘネを勉強しませんか?

パーサの本で注文した、Compiler Implementation In CとParsing Techniquesがアマゾンから、一緒に頼んだ本のせいで全然届かない。ドラゴンブックでも読もうかと思ったのだが、ふとパタヘネを手にとって読んでみる。以前読んだのが新人の頃なので、約10年くらい前になるんだ。

ぱらぱら眺めて気がついたこと。CDROMのIn More Depth とFor More Practiceって面白くない?例えば、2.10-2.12はジャンプテーブルの最適化、2.16-2-18は末尾再帰の最適化の話がCDROMに入っています。ジャンプテーブルの最適化てのは、Cのcase文がテーブルジャンプに置き換わる話。http://alohakun.blog7.fc2.com/blog-entry-878.html、とかhttp://shinh.skr.jp/m/?date=20071121#p01とか。末尾再帰の最適化ってのはhttp://alohakun.blog7.fc2.com/blog-entry-813.htmlとか。

こういうトピックが載っている本て意外に無いんですよね。それこそ、コンパイラの本読まないと出てこない。パタヘネに比べると上のリンクの方がよっぽど突っ込んだ話になっているのですが、そこにいくステップとしてパタヘネは悪くない。

ちょっと面白くなって、付属のCDに入っているMIPSの開発環境を動かしてみるとこれがそのままでは動かない。
YUKI.N>sde-make SBD=GSIM32L
sde-gcc -g -mcpu=4kc -mips32 -EL -mno-float -DGNUSIM -D__SIM '-Afloat(no)' -I../../kit/GSIM32L/../gnusim -c hello.c -o hello.o
sde-make: *** [hello.o] Error 53

この辺りの情報もまとまっているとうれしいよね。

とここまでが前振り。

やること

目標としているのは、ひげぽんさんのSICP関数型言語の勉強に「計算機プログラムの構造と解釈」を読もうのような構成。ただ自分の勉強した結果を残していくだけ。一緒に勉強すると言っても、ただ各自のブログなり、なんなりにお互いの勉強の成果を記録するだけ。途中参加、一章だけ参加も大歓迎。SICPに比べたら、途中参加は全然楽ですよ。


僕向けルール

・主に章末の練習問題と、CDROMを中心に勉強する。
 練習問題は基本的には解いていきたいけど、初版のやつは「CPUをHDLで書け」とか無茶な練習問題もあったので、ボリューム次第。
・プロセッサ周辺は、たとえ少しでもVerilogとかSystemCで動かしてみる
・勉強していく課程で、勉強の為のノウハウを共有したい
 こういうの関数型言語の勉強にSICPを読もう - (6) 1章 - 小休止 traceを使えるようにする。SICP勉強したときに先人に助けられたので、同じ事をしたい。
・原書で進めていくけど、盛り上がったら邦訳も買う。
・記録の場所は、こことは別にしたい。
 http://d.hatena.ne.jp/natsutan/ が第一候補。ただ、はてなダイアリーはAirHでアクセスするとき、ココログに比べて明らかに遅いので悩み中。そっちには長門とか書かない。長門プロンプトはぎりぎり可。
・マイペースでする。
 仕事が混めば2~3ヶ月の放置もある。途中で飽きたら終わり。(今までの勉強の実績から行くと、飽きても飽きたなりに飛ばしもって最後までするとは思う。)
・まずは隗よりメソッド
 無知をさらすことになるが気にしない。


余裕があったらしたいこと

・MIPS以外のプロセッサとの比較。主にx86+gccとか。
・Veritakとの連携
 ここの後半のような事をテキストに沿った形でやりたい。ついでに、Veritakの技も覚える。
・OpenSparcハック。キャッシュやMMU等、CPUから一歩出たところは、OpenSparcから該当するソースを探して見てみたい
・パタヘネ初版、コンピュータ・アーキテクチャ(ヘネパタ)との内容比較

数日放置しますので、興味がある人は、コメント、トラバ、はてぶ等で教えてください。特に、生暖かく見守っていただける人は、はてぶで「生」とだけ書いていただければ伝わります。難しそうだって人はハッカー養成塾:ハッカーへの遠回りを読めば良いと思うよ。

|

« IT技術者として生き抜くための十ヶ条 | Main | ドラゴンブック始めました »

Comments

Post a comment



(Not displayed with comment.)




TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/18154/40739553

Listed below are links to weblogs that reference パタヘネを一緒に勉強する人募集中、めざせバイナリアン!:

» パタヘネ [EDA Blog]
なつたんさんのブログのこの記事に影響されて、パタヘネを勉強しなおしてみたいと 思います。 5年ほど前に、ARM920Tを使ったASICの開発で初めてキャッシュとMMUを扱うことに なり、パタヘネを読んで勉強して以来です。そのときは練習問題などほとんど解きませ んでしたが、今回は練習問題もできるだけ解くようにしようと思います。 CoDeveloper の40日限定ライセンスである程度大規模な回路が動作合成できれば、 例題を ImpulseCで記述して、動作合成できるかもしれません。 ... [Read More]

Tracked on 2008.04.03 at 08:26 PM

» [cs][book]パタヘネ [初学者の箸置]
パタヘネを一緒に勉強する人募集中、めざせバイナリアン! - なつたん 昔、たかーい村上先生の翻訳本を買ったけどちゃんと読めなかったヘネパタ。 でも読みたい。自分の中のいい加減なカオス知識をRESTfulな知識(?)に変えたい。よーし僕も読んでみようかなー、、、って買... [Read More]

Tracked on 2008.04.08 at 05:33 PM

« IT技術者として生き抜くための十ヶ条 | Main | ドラゴンブック始めました »