5: 2009-01-02 (金) 13:18:43 [6] | 6: 2009-11-17 (火) 12:08:37 [7] | ||
---|---|---|---|
Line 2: | Line 2: | ||
-(by [[K]], 2008.12.23) | -(by [[K]], 2008.12.23) | ||
-メモのうち重要な部分をそのうちまとめてまともなページを作る | -メモのうち重要な部分をそのうちまとめてまともなページを作る | ||
- | *** (30) helloの改良の歴史 (118→17) | + | *** (30) helloの改良の歴史 (118→16) |
-(参考として)''DOS''の.COM形式: | -(参考として)''DOS''の.COM形式: | ||
--22バイトが限界 | --22バイトが限界 | ||
Line 75: | Line 75: | ||
['G' 01 で2バイト] [セクション記述子1バイト] | ['G' 01 で2バイト] [セクション記述子1バイト] | ||
[5 12 "hello, world" の内容で13.5バイト、フォーマット制御で0.5バイト] | [5 12 "hello, world" の内容で13.5バイト、フォーマット制御で0.5バイト] | ||
+ | -''16バイトのhello'': | ||
+ | --2009.01.10に思いついた。コンソールへの文字列出力のとき、デフォルトの文字列は当然ASCIIなので(.g01ではモードを変更しないと日本語などは出せない)、いつも7bitしか必要ないのに1bitの0を補って8bit出力していることになっていた。これはなんかムダじゃないか?他ではものすごくがんばっているのにここでこんなムダを容認していいのか?ということで、7バイト出力するごとにMSBを集めて、これが0でなければもう一文字表示できるようにした。 | ||
+ | ['G' 01 で2バイト] [セクション記述子1バイト] | ||
+ | [5 12 "hello, world" の内容で12.5バイト、フォーマット制御で0.5バイト] | ||
+ | --最近ではすっかりこの内部形式に慣れてしまい、27バイト程度で限界だと思えた過去の自分が不思議でしょうがない(笑)。 | ||
* こめんと欄 | * こめんと欄 | ||
#comment | #comment |
(This host) = http://osask.net