はりぼて日記
2007 | 01 | 02 | 03 | 04 | 05 | 07 | 08 | 10
2006 | 11 | 12
12月 19 (火曜日) 2006
00:59
三日目2
 
8〜10読破。三日目終了〜。
・・・ぶっちゃけ、ここいらへん、ちょーっと理解が甘いと自覚しとります。でも、私は細かい実務より理屈理解を優先するタイプなので、あえてここで無理に立ち止まらないで進んじゃおうと。(あとで読み返せばいいわけだし)

とはいっても、流し読みってわけじゃないですよ。

このセクションで大事なのは、まず、32bitとはなんじゃらほいということ。あまり詳しくない人(Kタンに教えてもらう前のオイラ)にとっては、多ビット=高性能 という、単純な図式しか頭にないことが多いですよね。もちろんこれは別にまちがいではないのですが、なぜ32bitは高性能なのか・逆になぜ16bitは低性能なのか・どうしていまや32bitや64bitが廉価で当たり前な時代に16bitを勉強しなくてはいけないのか。そこいらへんを怪しく理解している場合が多いんですよね。(え”私だけ??)

このへんのことは、私も昔自習してみたことがあります。ここいらへん。ご参考までに。

それともうひとつ大事なこと。この本では、「最後は機械語になる」と書かれていますが、私はあえて、一段緩和したいと考えています。つまり、「とにかくなに言語でもいいから.obj形式まで持って来い!」っていうこと。objにさえできれば、それを作ったのがC言語だろうがC++だろうがJAVAだろうがどうでもいい。できあがったobjファイルを連結すれば、それでプログラムになると。
この感覚(とりあえず感覚だけでも)を持っていれば、アセンブラが向いていればアセンブラを使えばいいし、Cが向いていればCを使えばいい。適材適所で使い分ければいいということになります。このセクションは、それをとりあえず提示and実践しているわけですよね。これが大事なことだと感じました。

(おおげさ?? (^^;  )

 
30日を過ぎたBlogにはコメントできません。
12月 16 (土曜日) 2006
18:09
三日目
 
さて三日目〜。まずは[7]まで。
IPLの作成なんだけど、ここすっごく重要な部分で、かつ、どうでもいい部分なんですよねぇ。(え?矛盾してる??)
どういうことかと言うと、かつてOSを自作したいという人達はほとんどここに達することなく終わってしまっているんです。つまり、OSの本体をメモリにロードして実行する。こういう動作をできるようになるまでがすごく高いハードルだったんですよね。
でも、逆に言えば、これはOSでもなんでもない作業ですよね?。大事なのはこれ以降の、OSの本体の部分なんです。なので「ほんとうはどうでもいい部分」ということになるんです。
川合さんもずいぶん「その部分はどうでもいい部分なんだから、在来のものや汎用のプログラムを有効活用して、OS本体のプログラムに着手しよう」と言い続けてましたね。

 
30日を過ぎたBlogにはコメントできません。
12月 05 (火曜日) 2006
19:39
二日目2
 
よっしゃ〜。二日目終了。

まだまだここいらへんは、川合流「まずはとにかく黙ってやってみましょう」のレベル。「解らない+実際に動く」なので、ちょっと楽しい。

余談:
私はもう数年OSASKに関わってます。その間にはいろいろな自作OSのプロジェクトが立ち上がっては消えて生きました。(ここTHE-BBLも、かつてはその一つだった)
今回のプログラムのように、「まずとにかくFDを入れれば動く」というプログラムを作るだけでダメになっていってしまったものも少なくありません。そういう意味では、今はこんなに詳しい解説付きの雛形があるんですからいいですよねぇ〜。
 
30日を過ぎたBlogにはコメントできません。
18:42
二日目
 
さて。二日目です。
32Pあたりからレジスタに関する説明がありますね。なるほどなるほど・・・。
(ちなみにAX・BX・CX・DXって、結構汎用的に使います。私はずっと、単に「レジスタ4つ」に、順番にアルファベットが振ってあったものと勘違いしてました。なので、もしCPUが拡張されてレジスタが加わったら、EX・FX・・・・と続くものなのかと。ABCDがあるのはたまたまだったんですねぇ。)

38PあたりのBYTEやWORD命令。これ、思い出すなぁ・・。ずいぶんこれに悩まされました。
ここに書いてますが、ようするは「ケタが特定できる時は省略可。基本は全てちゃんと桁指定をする」ということですね。なので、一切省略しないでぜーんぶBYTEやWORDを書いても、別に間違いではないと考えればわかりやすいかも?
 
30日を過ぎたBlogにはコメントできません。
1 2 (3) » 

PopnupBlog V3 Denali created by Bluemoon inc.