本の内容に関する質問(特別版)

  • (by K, 2006.04.12)
  • 親ページ : q_and_a
  • このページは、K特別に許可した方しか質問できませんが、回答なら誰でもできる質問ページです。初めての方、一般の方は、q_and_aにお願いします。

  • 過去のQ&Aのまとめがありますので、まずはそこでチェックしましょう! →faq
  • 質問するときは、 第1版の第1刷のp.123の○×についてです みたいに、できるだけ質問個所をはっきりさせてください(ページが特定できないような質問であればそのときはページを書かなくてもいいです)。
  • その上で何がわからなくて、何がわかるのかも書いてください。
  • 回答はK以外でもOKです。というかKは忙しくて回答が遅れたりするので、誰か読者の中で分かった人がいれば、その人が代わりに答えてくれたほうが助かります。
  • 本の内容の質問ではない場合は、impressionsを使ってください。

  • 恥を覚悟でお聞きします。書いてあることを全く理解できない場合は諦めるしかないのでしょうか?Chapter2で挫折してしまいました。 -- byt 2006-03-27 (月) 19:22:46
  • 勇気をもったご質問をありがとうございます。あきらめるには早すぎます。0章にもありますとおり、どこまで分かったのかを把握してください。まず1章までの内容はOKなのでしょうか? -- K 2006-03-27 (月) 22:01:18
  • まさかレスを頂けるとは思いませんでした。有難うございます。ただ、理解した内容や質問をその都度ここに書く訳には行きませんし、その度にお手数をお掛けするのは心苦しいのでどうしようもないと思われます。1章までは何とか理解できたのですが残念です。 -- byt 2006-03-27 (月) 23:45:28
  • ごもっともです。もちろん見切りをつけてあきらめてしまうのも一つの方法ではありますが、「1年かけて2章だけが分かればそれでいいや」という気持ちでゆっくり読み返せば、そのうち理解が行くのではないかと(著者としては)信じています。最初からつまづかれたせいでがっかりなさっていると思いますが、この本は全体としては後になるほど易しくなるので、そんなにめいる必要はありません。また質問も1日に1つくらいであれば負担にはなりませんので、気が向いたときはご遠慮なくお書きください。このページはまさにそういう質問のためのページですので。・・・とにかく疲れているとき、気が乗らないときなどは、普通なら分かるものも分からないので、何週間でも気兼ねなくお休みください。 -- K 2006-03-27 (月) 23:55:59
  • とにかくせっかく読んでくださったのに、筆者の力量不足でがっかりさせてしまい申し訳ありませんでした。最終的に読破にいたるせよ、いたらないにせよ、申し訳ないことだと思っています。 -- K 2006-03-27 (月) 23:57:56
  • P.23〜26のソースプログラムは具体的に「何を使って」、「どうすれば良いのか」書かれていない思われますが、どうなのでしょうか?それとも書くまでも無い当然のことなのでしょうか? -- byt 2006-03-28 (火) 18:09:57
  • ご質問ありがとうございます。p.23のプログラムは説明のためのもので、実際には読者は読むだけで何もしません。そしてその次のp.24のプログラムについてですが、bytさんの場合は、まずこれを入力する必要はありません。p.24〜25に書いてあるとおり、付録のCD-ROMからhelloos1フォルダをコピーして、インストールしたtolsetへ貼り付けてください。 -- K 2006-03-28 (火) 18:41:30
  • 無事に貼り付けることができたらメモ帳を起動して、 ファイル→開く と選択して、ファイルの種類を「すべてのファイル」に変更した後、今コピーしたhelloos1の中のhelloos.nasを開いてみてください。本文と同じものがあるはずです。同じ方法でasm.batやrun.batなど見たいものはすべてみてください。どれもメモ帳で開けるものばかりです。そして筆者はメモ帳でこれを作ったのです。まずそれをしっかり頭に入れてください。 -- K 2006-03-28 (火) 18:47:30
  • bytさんももちろん同じものをメモ帳で作れますし、もしこのへんてこな文章の意味がわかれば、自分の好きなように改造する事だってできるはずです。そこまで理解できたら、!cons_nt.batをダブルクリックしてコンソールを出し、「run」と入力してください。そのプログラム(OS)が動きます。フロッピーディスクをお持ちなら、「install」と入力することでそのOSをフロッピーディスクにインストールすることもできます。 -- K 2006-03-28 (火) 18:50:07
  • 回答有難うございます。本文中にもそう書いてあると悩まなくて済んだのですが、何処か見落としがあったのか不安になりました。 -- byt 2006-03-28 (火) 18:52:32
  • ここまでがしっかり分かれば、p.26も問題なく読めるはずです。・・・それで質問の答えを申し上げますが、p.24〜26に関しては、この説明で十分だと今でも思っています。つまりここに書いていない「メモ帳」等に関しては、「書くまでも無い当然のこと」と考えているということです。どうもすみません。 -- K 2006-03-28 (火) 18:55:07
  • 回答の途中でレスを付けてしまったようです。申し訳ありませんでした。 -- byt 2006-03-28 (火) 19:01:03
  • どうぞお気になさらずに。こういう具体的な質問は歓迎ですので、またありましたら1日に1つくらいのペースでどうぞ。 -- K 2006-03-28 (火) 19:09:30
  • 今日最後の質問をさせてください。P.45〜46でhelloos5を実行するとhelloos.img以外が削除されるそうですが、実行させてみると他のファイルも残ったままになってしまいます。文章の受け取り方がおかしいのでしょうか? -- byt 2006-03-28 (火) 23:20:22
  • bytさんへ。それは文章の受け取り方がおかしいです。helloos5を実行(?)する方法は6つあります。「make asm」「make img」「make install」「make clean」「make src_only」「make」。それぞれについてどういう動作なのかの説明が本文にありますのでよく読んでください。 -- K 2006-03-28 (火) 23:58:41
  • 初版第1刷P.28の1行目ブートセクタの説明で「最後の2バイトとを見ます」とありますが、最後の2バイトとは511バイト目と512バイト目のことなのでしょうか? -- byt 2006-04-01 (土) 16:09:34
  • はいそうです(先頭を1バイト目と数えた場合)。(参考:先頭を0バイト目と数えるやり方ですと、510バイト目と511バイト目になります。) -- K 2006-04-01 (土) 16:22:11
  • なるほど、0から数えるというのが基本なんですね。これでP.27の「510バイト目に55〜」の謎が解けました。有難うございます。 -- byt 2006-04-01 (土) 23:03:20
  • helloos5とharib00aとではMakefileのファイルの中身が異なりますが、動作は同じだと思われますが何故違うのでしょう? -- byt 2006-04-02 (日) 20:01:19
  • bytさんへ。p.53の最後の2行を読んでください。 -- K 2006-04-02 (日) 22:49:13
  • 先の方に書いてあったのですね。確かに読みやすいとは感じました。有難うございます。でも何故最初からこの様に書かなかったのでしょうか?素朴な疑問ですいません。 -- byt 2006-04-02 (日) 23:25:18
  • 最初から変数を使った例にすると普通の書き方が分からなくなり、必ず変数を使わなければいけないのかと思ってしまいます。そうなるとmakeは複雑なものだと思われる危険があり、読者が疲れてしまいます。それで普通の書き方に慣れたころを見計らって変数方式を取り入れました。・・・それとこの本はわからなくても1〜2章くらいは先読みすることがお勧めされているので(p.9)、是非そうしてください。 -- K 2006-04-03 (月) 00:46:08
  • 初版第1刷P.55の本文6行目で「ESを0x20だけ増やす」とありますが、プログラム上のどこの部分でしょうか?また何故「0x20」を増やすのでしょうか? -- byt 2006-04-03 (月) 23:52:02
  • bytさんご質問ありがとうございます。お答えする前にちょっとお願いなのですが、bytさんの質問の多くはbytさん固有の疑問のようなので、特別な質問用ページを用意しようかと思っているのですが、よろしいでしょうか?そのほうがbytさんも自分の質問&回答だけになるので読みやすいのではないかと。いかがでしょうか? -- K 2006-04-04 (火) 01:39:49
  • 御好意は有り難いのですがそれだとWikiの主旨から外れてしまうと思われるのですが? -- byt 2006-04-05 (水) 00:11:29
  • bytさんへ。ええと作るのはもちろん当wiki内です(OKがもらえたらKがページを作ります)。どうもbytさんの質問は他の人の質問とは内容の毛色が違うように思うので、これを混ぜてしまうとあとで他の人が既出の質問を探すのに苦労しそうな気がするんです。ご理解をお願いします。 -- K 2006-04-05 (水) 00:37:06
  • 先日の件、了承しました。宜しくお願いします。 -- byt 2006-04-09 (日) 19:50:47
  • ESを0x20だけ増やすための処理は、p.55のリストのうちの次の3行です。 -- K 2006-04-12 (水) 15:56:55
            MOV     AX,ES          ; アドレスを0x200進める
            ADD     AX,0x0020
            MOV     ES,AX          ; ADD ES,0x20 という命令がないのでこうしている
  • なぜ0x20なのかはp.55に説明が書いてあるのですが、そのうちのどこが分からなかったのかが分かりませんので、お返事できません。 -- K 2006-04-12 (水) 15:59:47
  • 「0x20」は3行目のコメントにしかありませんが「0x20」と「0x200」と「0x0020」は同じなのでしょうか? -- byt 2006-04-13 (木) 20:02:23
  • お願いがあるのですが、なんでもここで聞くわけにはいかない為、自分でも勉強をしたいと思っています。もし「このような関連の書籍を読んだほうが良い」というものがありましたら、ジャンル(私には皆目見当がつきません・・・)でかまいませんので挙げて頂けないでしょうか? -- byt 2006-04-13 (木) 20:14:16
  • 0x20と0x0020は同じものです。私たちが10進数で考えるときに、123点と000123点が同じなのと同じです(ゲームとかの点数でこういうのがよくありますね)。0x20は0x200とは違います。番地(=アドレス)を「0x200」進めるために、ESに「0x20」を加えてます。 -- K 2006-04-13 (木) 20:34:30
  • うーん、残念ながらどんな本をお勧めするべきかが私にも分かりません。どうもすみません。 -- K 2006-04-13 (木) 20:36:08
  • 「ESを0x20だけ増やす」の件ですが回答が理解できないので整理して後日また質問したいと思います。 -- byt 2006-04-15 (土) 11:47:08
  • どんな本をお勧めするべきかずっと考えていましたが、以下の案ではどうでしょうか。気に入らなければもちろん無視してください。今までの印象では、bytさんはものすごく細部にこだわっているせいで全体像がつかみにくくなってしまい、それがこの本を読むのに必要なセンスの獲得を妨げているように思います。ということで2周読みをお勧めしようと思います。つまりこの本を2回読むだけのことなのですが、1回目はなぜそうなのかということはすべて保留にして、まあそんなものなのかなという感じで読みます。たとえば「なぜこれで番地が0x200増えるのかは分からないけど、でもとにかくこれでESが0x20だけ増やせるらしいし、それで番地も0x200増えるというのだからきっとそうなのだろう」と受け入れてしまうのです。受け入れるだけで納得する必要はありません。もちろん暗記する必要もありません。 -- K 2006-04-16 (日) 00:01:27
  • そしてとにかくひたすらにプログラムを改造して遊びます。faq/othersにあるように自分で改造できそうなところを見つけて改造するんです。分からなくてもいいんです、1周目は。そうやってじっくりのんびりやっていれば、1周目が終わる頃には、この本を理解するのに必要な「センス」を獲得することができるのではないかと思います。それにアセンブラがそれほどには重要でないこともよく分かると思います。そうであればアセンブラにこれほどこだわらなくてもよくなって、もっと気が楽になるかもしれません。 -- K 2006-04-16 (日) 00:10:16
  • アドバイス有難うございます。確かに仰るとおり「木を見て森を見ず」的な考えが頭にあるのかもしれません。あまりに細部にこだわり過ぎて流れを理解することができなくなっていました。これで力を抜いて楽に読み進める事ができそうです。 -- byt 2006-04-16 (日) 01:24:05
  • メニューボタンをクリックしたら、メニューを表示したいのですが、どうしたらいいですか? -- hlt 2006-05-09 (火) 17:56:36
  • メニューボタンをクリックしたら、メニューを表示したいのですが、どうしたらいいですか? -- hlt 2006-05-09 (火) 17:56:59
  • (多くの面でルールを無視した書き込みに見えます。 hltさんはこのページで質問する権利はありません。 本の内容を超えた発展的な質問なのでq_and_a系ではなくimpressionsにするべきです。 個人ページを持っていないくせにNameLinkをチェックしてはいけません。) -- K 2006-05-09 (火) 18:20:08
  • impressionsにいったら無視されるよ。 〜〜〜〜のくせには、ないでしょ -- hlt 2006-05-09 (火) 18:34:36
  • impressions以外でこの質問をするのは完全な荒らし行為です。もしルールを守る気がないのなら当wikiの利用をやめてください。大変迷惑です。 -- K 2006-05-09 (火) 18:47:42
  • impressionsでいったら反応してくれるのですか? -- hlt 2006-05-09 (火) 18:53:17
  • 一応質問してみました。反応がくるか分かりませんが。ほかにもたくさん聞きたいのですが、何個も聞いていいのですか? -- hlt 2006-05-09 (火) 18:57:24
  • その質問そのものがここでは不適切です。まさかこのページの一番上の説明を読まずに書いているのですか。以後hltさんがKの事前の許可なくここで1つでも質問するようなら、より厳しい対応を検討します。 -- K 2006-05-09 (火) 18:58:42
  • 本書で乗っていることについて質問。「X」ボタンによる終了について。あれってどうやって、終了させているかいくら読んでも分かりません。教えてもらえないでしょうか? -- hlt 2006-05-09 (火) 18:59:27
  • (どなたさまも上記のhltさんのルール違反な質問に対してお返事しないように管理者としてお願い申し上げます。) -- K 2006-05-09 (火) 20:04:19

コメントお名前NameLink

リロード   新規 編集 差分 添付   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS
Last-modified: 2007-03-22 (木) 07:05:22 (4324d)