2008-01-01から1年間の記事一覧

前回のデモのソースコード

前回公開したデモのソースコードを公開。 デバッグ用コードや見た目が地味で没にしたコードもコメント化されて残ってます。nasm -f bin -o ファイル名.bin ファイル名.asm でブートセクタ用バイナリを生成 nasm -dMSDOS -f bin -o ファイル名.com ファイル名…

OSが無くても動くデモ

前回作ったプログラムのブートセクタ版を公開します。 使用するときは自己責任でお願いします。 B8 20 7C 8E D0 BC 00 16 B8 13 00 CD 10 31 D2 B9 3F 00 51 89 CB 88 DE 88 DD B8 10 10 CD 10 59 E2 F1 B0 B6 E6 43 FC B8 20 7C 8E D8 BF 00 16 B9 00 10 60…

510bytesで何ができるか

PCの電源を入れてからOSが起動するまでをおおまかに説明すると 1, CPUが初期化されてBIOSにあるプログラムが実行される 2, BIOSは設定されたメディア(ハードディスクとかフロッピーディスク等)のブートセクタと呼ばれる最初の512bytesを読み込んでメモリに書…

ループカウンタのi,j,k

C言語系ではよく以下のようにループカウンタにi, jという名前の変数を使う。 for(int i=0; i<3; ++i) for(int j=0; j<7; ++j) { printf("%d, %d\n", i, j); } 今まで外側のループカウンタから順番にi, j, k, ...という変数名を付けていたがこのやり方には欠…

cygwinにboostインストールメモ

・前準備 boost 1.35.0ではmpiが使えるようなのでcygwinにmpich2をインストールしてみた。 Pythonが入ってないとconfigureで失敗するので入れておく。 普通にソースコードをゲットして ./configure make make install でインストールできた。 自宅に一台しか…

g++でwcharが使えない

http://d.hatena.ne.jp/gpuppur/20080420 でビルドしたgccでは boost-1.35.0をビルドするときにboost::serializeのwchar_t関連を使っているファイルでコンパイルエラーがでる。 ググったところ http://d.hatena.ne.jp/y-hamigaki/20070327 iconv.hがないとli…

cygwinにgcc-4.3.0(CとC++のみ)をインストールする

cygwinのsetup.exeでは少し古いgcc-3.4.4しかインストールできないようなので現在最新の4.3.0をインストールすることにした。 ここにやり方をメモしておく。 きちんとgccをインストールしたい方はgccのドキュメントを参照して下さい。 必要なpackageのリスト…