Fre00230 マシン語について教えて!!! #0000 sci2009 8811122229 だれか、マシン語(PC−9801)を教えて下さい。 それに関係する良い(初心者向けでわかりやすいやつ)の題名などでも結構です よろしくおねがいします #0001 sci1622 8811132351 何のためにマシン語を使うのかによって、最適の本は違います。 パソコンの場合はマシン語を使うと言えば、ハードウェアをいじる というのとほとんど同義ですからねえ。PC−9801と書いて いらっしゃいますが、98の場合MS−DOSのシステムコール や98本体のBIOSコールの方法も併せて知らないとマシン語 を使う意味も半減すると思います。 で、とりあえず私がマシン語をまったく知らないときに購入して 今だに愛用している本を紹介しておきます。 「実用マクロアセンブラ」 技術評論社 河西朝雄 著 これは、MS−DOSのMASMに関する本なので、もしDISK −BASICをお使いの場合はかえってわかりづらいかもしれません。 単に8086(またはV30)のインストラクションを知りたいとい うならば、 「V30プログラマーズ・リファレンス」 BNN企画部/編 をおすすめします。ただしこの本は「辞書」ですので、マシン語 を使い込むには必携ともいえますが、入門書には向きません。 あと、MS−DOS関連では、 「MS−DOSデータ活用ハンドブック」 技術評論社 編集部 編 「PC−9800シリーズ テクニカルデータブック」 アスキー出版局 テクノライト編 この2冊は、どちらか一方を買えばじゅうぶんです。 PC−9800関係は、その他にもいろいろ出てますので、上に あげた本をサンプルにしてさがしてみるとよいと思います。「わか りやすさ」というのは人によって違いますしね。 Tom #0002 匿名 8811140021 初心者ならば、 情報科学出版者 発行 星雲社 発売 の 「98マシン語一年生」 が 分かりやすいと思います。基本の基本なので内容はあまり深くないけど、 とっても(僕としては)分かりやすいです。遅れたけれど値段は220円だった と思います。 それになれてきたら、 アスキー出版局の 「PC−9801マシン語入門」 が、役にたつと思います。 これは2500円です。 最初の本だけど、値段は2200円の間違えです。 #0003 sci1772 8811141604 後、蛇足ですが、 もし、MS-DOSのMASMを使って勉強できる環境にあるのでしたら、DISK-BASICの 中での機械語よりは、MASMをやった方が良いです。(もし、BASICのゲームか何か を作っていて、一部を早くしたいと言うのでしたら、別かも知れないのですが。 これに付いても、MASMを使用してもできると思いましたが、BASICに付いては、良 く知らないので) それで、MASMで勉強するとし、CPUの話とかも全く知らないようでしたら、 JICC出版の「MASMトレーニングマニュアル」原達三・国臼圭 なんか、如 何でしょう? (で、それで難しかったら、ナツメ社の「いちばんわかりやすいマクロアセン ブラ入門」藤田英時などの、レベルに戻る) (私は、カラフルの方が分かりやすいと思ってるだけなのかなー?) Long #0004 sci1353 8811150145 沢山あってどれがいいのやら・・・ #0005 sci1398 8811160023 私はASCIIの「ディスクで学ぶマシン語」(2,000円)で 勉強をしようとして、現在挫折中です。 暇を見てもう一度挑戦しようと思っているのですが。 逆さ歯車 #0006 sci1398 8811160027 すみません。一つ前の書き込みの中で、間違いがありました。 「ディスクで学ぶマシン語」の値段は2,000円ではなく20,000円でした。 では、皆さん、頑張って勉強して下さい。 逆さ歯車 #0007 sci1380 8812150314 ちょいと8086を勉強しようとして、 「せぐめんと」 とやらで詰ってしまった。 うーん、8ビットは使いにくい。 ^^^^^^^^^^^^^^^^^^^^^イヤミ <ぺけろっぱ> #0008 sci1622 8812181322 そのいやみは的外れですね。8086は8ビットCPU として使うのが一番楽なんですから。 すごいイヤミ? Tom #0009 sci2468 8902052252 8086CPUは8bit というイヤミが続きましたが、そんなことはないとおもいます。 というのも、じつは8086CPUの開発時期では、8080CPUからの開発コン セプトをひきずる、もとい、引き継ぐ方針があったと聞いています。(だから、あくま でもきいたはなしなんですが。) 8086と68000とのア−キテクチャのちがいには、制御機器として使うか、ま たは計算機として使うか(68000側)とのちがいがあり、たまたまIBMが808 6を採用(ご存じの通り産業機械の最大メ−カ−)したことによって一気に世界へとひ ろまったわけです。 したがって、セグメントのシステムが非常に悪いとはおもいませんし、だからといっ て68000のシステムがすぐれているともおもいません。 まあ、セグメント自体はないほうが良いでしょうが。 さて、あなたは、64Kバイト以上のプログラムを、モジュ−ル化せずに 組みますか。(組むことができますか、ではありません。) ちなみに、私が現在使用しているシステム(パ−ソナル・ユ−スで)は、 あの、アフタ−サ−ビスのひ・ど・さでは、定評のある、 Mt−2500 ですが、プログラムをくむにあたっては、なんら不都合は感じていません。 しかし、アフタ−サ−ビスのわ・る・さでは、ほとほと閉口しています。 そんなメ−カ−が、68000をCPUとして開発した現在では最強のゲ−ムマシンも あまり売れてはいないみたいですね。 やはり、ア−キテクチャがどうの、プログラム環境がこうの、といったところで ユ−ザ−の意識ひとつで使いかたはきまるとはいえ、アプリケ−ション求む、の現 状ではソフトの数でその機種の人気が左右されるというのが事実です。 #0010 sci1395 8902060118 以前、CP/Mでプログラムを作っていたころは、10kのプログラム を書くのもままなりませんでしたが、MS−DOSでは64以内に収め ることの方がむづかしい。もっとも、コンパイラを使っているかぎりは そんなもんなのかも知れません。 それにしても、モジュール化とセグメントはあんまり関係ないのでは ないでしょうか。別のモジュールを呼び出すときに相手側が far か near かいちいち考えるのは大変でしょう? マシン語なんか知らない、MNEMO #0011 sci1622 8902060403 8086が制御用で68000が計算機用というのは 解りませんねえ。制御用にも68000は大変よく使わ れています。アセンブラも68000の方が簡単だと思 ますが。8086も捨てたもんじゃないなと思うのは、 セグメントの壁を越えないプログラムを書いたときだけ ですね。 それから、最強のゲームマシン用に、OS9が発売さ れましたね。これであの機械はもっとも安く手にはいる マルチタスク・マルチユーザーのマシンになったわけで す。OS/2なんて問題じゃない!! Poor Tom ハンドルネームをTomからPoor Tomに変え ました。今後も宜しく。 #0012 sci1395 8902061239 話を元に戻しますと、私個人の意見としては 「8086の機械語は、勉強しないで済ませられるのなら 勉強しない方がいい。」 と考えています。CPUもそろそろ世代が替わります。 セグメントという仕組みは将来的には生き残れないでしょう から、使いこなせるようになってもあまり得にならないと 思われるのです。 MS−DOSは高級言語だけで乗り切っておいてもっと 性能のいいCPUを使える環境に移ってからアセンブラも やることにしてもいいのではないでしょうか? MNEMO #0013 sci2423 8902062139 MNEMOさんの > MS−DOSは高級言語だけで乗り切っておいてもっと > 性能のいいCPUを使える環境に移ってからアセンブラも > やることにしてもいいのではないでしょうか? というのはどうも話が逆なような気がしますねぇ。 性能の良いCPUを使えるのならその分をコンパイラに 回す、というのが世の中の趨勢です。8086のような、 高級言語のことを何にもかんがえてないCPUだから、 アセンブラを使う必要があるのだと思います。 RISCみたいに、高級言語を使うことを前提にした コンピュータだって今は許される時代です。 あとね、8080、8086、80386ときた系統はIBMの天下 が続くかぎり生き続けるとおもいます。いくら汚くて も、性能がでなくても。25年前の360が未だに生き続 けている会社ですから。 #0014 sci1395 8902062352 そういわれてみればそうですねぇ。(ポリポリ) でも、特に“MS−DOS”だからという意味がこもっているんです。 ようするにこれがOS−9だったり、MacFinderだったり したら話は違うわけですよね。(CP/Mでもいいでしょう。) 80386になればアドレス空間はリニアになるらしいので、 機能的には中途半端な8086あたりのアセンブラはパスした方が 後で楽なんではないかなぁ、と思っているわけです。 MNEMO #0015 sci2377 8902080110 突然素朴な疑問を関連書き込みでしてしまいます。 8086 80186 80286 80386 と、iさんは成長していったのですが、 セグメントに関して言えば、最初から計画的犯行だったようですね。 セグメントとアドレスの差が8086では4ビットになっていますが、 当時このセグメントとアドレスの実際の倍率(?)は、どのマニュアルを 見ても出ていなかった記憶があります。・・・なんのことはない、 この差をギリギリ16ビットまで広げてやれば32ビット物理空間が できあがるのですね? それで、最初からこんな4ビットの差を気にしないプログラムを ユーザーたちに作らせておいて、平然と実はあの差は16ビットあったんです と言って、一挙に32ビットに移行してしまおうとしていた? と、言うことは、この差はどんどん広がり、最後には意味をもたなくなる? で、これで論理空間が一挙に無限大に広がってしまう!! と、まあ、こんなことを考えたんですが、どういったものでしょう。 ちなみに私は、プロテクトモードも、80386も見たこともありません。 #0016 sci1622 8902102322 IBMのPS/2の最新モデルはRISCマシンに なるそうですが。 Poor Tom #0017 sci5367 9005130146 ん? 8086ってあって 8ビットってあるのは ん? 8ビットのつかいがってを残したのは、8088だとおもってた TENNTENN てんてん 今、1990年なんですけど これらは89年1月の書き込みですね だれか、よんでくれるかなぁ 8088だとおもったなぁ 8びっと まあいいか うーん 勉強しなおそう @ みなさん 1990年ですいまは。 このあいだあきばで 80186をさがしたら もう売ってないとのことでした @ ううっ ときの流れと技術革新はとまらない * のは *