Message Log 16 Return to Parent Menu 
Last Updated by 07/01/05(Fri)  

 
Tips
 

 プログラマは消耗品って聞いたことがあります。


 
Message log list
 

 アセンブラ掲示板に書き込まれた過去のログです。


Message log 44 (05/01/0506/30/05)
Message log 43 (01/01/0504/30/05)
Message log 42 (01/01/0412/31/04)
Message log 41 (11/01/0312/31/03)
Message log 40 (10/01/0310/31/03)
Message log 39 (04/01/0309/30/03)
Message log 38 (12/01/0203/31/03)
Message log 37 (08/01/0211/30/02)
Message log 36 (05/01/0207/31/02)
Message log 35 (03/01/0204/30/02)
Message log 34 (01/01/0202/28/02)
Message log 33 (09/15/0112/31/01)
Message log 32 (08/01/0109/14/01)
Message log 31 (05/26/0107/31/01)
Message log 30 (05/15/0105/25/01)
Message log 29 (05/01/0105/14/01)
Message log 28 (02/01/0104/30/01)
Message log 27 (01/01/0101/31/01)
Message log 26 (10/01/0012/31/00)
Message log 25 (07/21/0009/30/00)
Message log 24 (06/16/0007/20/00)
Message log 23 (05/20/0006/15/00)
Message log 22 (05/01/0005/19/00)
Message log 21 (04/01/0004/30/00)
Message log 20 (02/01/0003/31/00)
Message log 19 (01/01/0001/31/00)
Message log 18 (11/01/9912/31/99)
Message log 17 (09/05/9910/31/99)
Message log 16 (08/21/9909/04/99)
Message log 15 (07/01/9908/20/99)
Message log 14 (04/01/9906/30/99)
Message log 13 (02/01/9903/31/99)
Message log 12 (11/01/9801/31/99)
Message log 11 (09/21/9810/31/98)
Message log 10 (08/01/9809/20/98)
Message log 09 (07/01/9807/31/98)
Message log 08 (05/04/9806/30/98)
Message log 07 (04/08/9805/03/98)
Message log 06 (02/23/9804/07/98)
Message log 05 (01/01/9802/22/98)
Message log 04 (11/09/9712/31/97)
Message log 03 (10/17/9711/08/97)
Message log 02 (08/22/9710/16/97)
Message log 01 (06/20/9708/21/97)


 
Message log 08/21/9909/04/99
 




syunsyun  [1999/09/04 Sat 21:44:57]  [210.147.135.23]

澤口@大崎さんありがとうございます。
教えていただいたとうりC:\workというディレクトリを
作ってからアセンブルしてみたのですが全く同じエラーが
出てしまいます。
他に対処方法は、ありますか。
澤口@大崎  [1999/09/04 Sat 20:48:37]  [210.141.243.66]

澤口@大崎です。

to ココアラさん:

プロドライバーと言っても宅急便の運ちゃんから F1 レーサーまで
さまざまあるように、プロのプログラマと言っても様々です。
別に免許や資格がいるわけでもないので、
「俺は今日からプロのプログラマだ!」といえば誰でもプロです。
わたしは制御・計測系という組み込みプログラミングが中心なので、
ハードウェアアクセスが中心になります。
学生のプログラム作りと違うといえば、工程設計と実験量でしょう。
24時間稼動で10年休みなしなどと言うシステムがごろごろありますの
で、むやみにこみいったテクニックやややこしい技は使いません。
プログラミングテクニックやテンションはアマチュアのトップの方が
高いと思います。
開発工程でも違うのは、アマチュアの大部分はプログラムを頭から順
序に作って行くんだと思いますが、わたしの仕事では全部のモジュー
ルを同時に作り込んで行きます。
これはユーザーにデモするのと、デバッグなどの作業を分けて分割開
発するためです。
例えば表示画面が百パターンあったとして、アマチュアは1番から順
に作って行くんだと思いますが、これをやってしまうと、最初の画面
と最後の画面で同じことを別々のソースでやったり、動きが微妙に違
ってきたりします。(最初のうちはテンションも高いし余裕もあるの
で細かい動きまで作り込む。疲れてくるとだんだん手を抜きたくなる)
また、例えば66番目の画面デザインで技術的な問題点が出ても、とり
あえず棚上げしておいて次の画面を動かすことができるように工程設計
を済ませておくのです。
デバッグもできるだけ手作業を使わずに済むようにプログラム側で工夫
します。
この前は画像伝送モジュールを作ったのですが、いちいち実験の都度
カメラから画像を取り込んでいたのでは手間を食うし、再現性がない
のでフルカラー画像を OBJ にしてそのままプログラムにリンクして
実験したりしました。
あと、これはわたしの個人的な方針なのですが、100% の技術をプロ
グラムに盛り込もうとすると、長丁場の開発ではテンション維持が
難しくなります。もうちょっと気の利いたレベルまで作り込めるな、
と思っても7,8割の力で押さえておくのがコツですね。
小技、裏技を使いたければ、とにかく動くものができてから。
ゲームプログラマやツールプログラマは 100% 以上の力を出し切っ
ていないと仕事にならないんでしょうが。彼らは 10年後のメンテ
ナンスをどうしようか考える必要はないですからね。
で、よく言われる、プログラムはできるだけ CPU 依存、OS 依存が
ないように作れ、というのは大学の中だけで通じる話です。その時
点でのハード機能を使いきることができないと、次の仕事につなが
りません。32bit CPU を使うときは 16bit CPU では逆立ちしても
できないような動作をさせなければ競争になりませんからね。
澤口@大崎  [1999/09/04 Sat 20:14:06]  [210.141.243.66]

澤口@大崎です。

to syunsyunさん:

Hello.asm のパスが通っていないんだと思います。
簡単にやるには、例えば C:\work などと言うディレクトリを
自分で作って、そこにソースファイルもアセンブラ、リンカも
コピーして置いておけばいいです。
DOS プロンプトからそのディレクトリの中に入って作業をする、と。
ココアラ  [1999/09/04 Sat 01:41:17]  [210.228.248.135]

>わたしは一応職業プログラマなのですが、5,6 年前、お客様に納品
>に行くとき、なんと EXE ファイルを持って行くべきところをソース
>ファイルを持っていってしまい、あわてて出張先で Turbo C++ 4.0
>を買って現場でコンパイルして納品したことがあります。で、どさく
>さまぎれに TASM 5.0 も会社の金で買いました。


・・・学生はのんきでいいなぁ。
ところでお聞きしたいのですが、お仕事でプログラムをされるのは
どんなもんなんでしょうか。やっぱり趣味とは違うと思うので。
僕なんか気が向いたらバージョンアップしたり、面倒になって
企画倒れになったり、そんなんばっかなもので・・・
最近僕の所属しているサークルに、うちの学校の助教授から
プログラムの移植依頼が来ました。納期がきっちり設定されているのは
初めてなので・・・なんかドキドキ、心配です。
しかも移植元がBASIC(!!)で、変数名がAだのBだの・・・
いい加減にしろ!ってな感じです。
聞いたところによるとウン千万もするレーザー過渡吸収装置(だったかな?)とか
いうのを制御するそうで、壊さないか心配・・・
そんなの弁償できないよ・・・

>あまりよく知られていないことですが、Borland社は会社と自宅で一
>本の製品を別々のパソコンにインストールすることを認めているんで
>すよね。同時に使わなければ複数インストール OK です。そういうわ
>けでわたしの自宅のパソコンにも TC++,TASM が入っているのです。

あ、良かった・・・
そういや僕も高校時代に学校のパソコンにも(勝手に)TC++と
TASMインストールしてたので・・・
同時には・・・使ってないはず、よかった。
学校は・・・Solarisだなぁ。だめだこりゃ。
あ、NTもあった。NTでもTASM5.0(32ビット版)
使えるのかなぁ。

>486 までの環境なら Turbo Assembler と Turbo Debugger の組み
>合わせはおそらくベストチョイスに近いんじゃないかなと思いますが、

そういって頂けるとなんだか嬉しいです。
僕が喜んでも仕方ないけど。

>Inprise 社はおそらくこの種のツールの開発に興味がないんじゃない
>かな、というのが欠点ですね。

・・・そうなんですか、この会社好きなのに。

syunsyun  [1999/09/03 Fri 23:11:40]  [210.147.135.178]

はじめまして
いきなりで失礼なのですが少し質問があります。
このページを参照してMASMをDLしてきたのですが、
HELLO.ASMというサンプルファイルを
ML.EXEでアセンブルしようとすると
Assembling:hello
MASM:fatal error A1000:cannot open tile;hello
というエラーが出てアセンブルできません。
どうすればよいのでしょうか。
澤口@大崎  [1999/09/03 Fri 12:45:22]  [210.141.243.66]

澤口@大崎です。

to ココアラさん:

わたしは一応職業プログラマなのですが、5,6 年前、お客様に納品
に行くとき、なんと EXE ファイルを持って行くべきところをソース
ファイルを持っていってしまい、あわてて出張先で Turbo C++ 4.0
を買って現場でコンパイルして納品したことがあります。で、どさく
さまぎれに TASM 5.0 も会社の金で買いました。
あまりよく知られていないことですが、Borland社は会社と自宅で一
本の製品を別々のパソコンにインストールすることを認めているんで
すよね。同時に使わなければ複数インストール OK です。そういうわ
けでわたしの自宅のパソコンにも TC++,TASM が入っているのです。
それはさておき・・・
486 までの環境なら Turbo Assembler と Turbo Debugger の組み
合わせはおそらくベストチョイスに近いんじゃないかなと思いますが、
Inprise 社はおそらくこの種のツールの開発に興味がないんじゃない
かな、というのが欠点ですね。
MMX 命令を使うだけでもこんなものを見つけてこなければならない。

http://support.intel.co.jp/drg/pentiumii/appnotes/812.htm

intel 社って目立たないところでもいろいろサポート活動しているん
ですね。日本の半導体メーカーにも見習って欲しいものです。
澤口@大崎  [1999/09/03 Fri 11:22:05]  [210.141.243.66]

澤口@大崎です。

to chaohさん:

ちなみに、softlib FTP サイトのインデックスはここにあります。

http://www.cyf-kr.edu.pl/ftp/softlib/full.html
(HTML がいきなり 660K あります。全部みるには決心が必要)

AZUCO さんと同様に、わたしも chaoh さんのホームページに期待し
ている一人です。
フリーの OS (DOS clone ってやつですね)も 30種類くらいコレク
ションしているのですが、全部走らせてみるわけにはいかないのが悩
みの種。
フリーの OS とフリーツールで DOS インターネットというのを一応
個人テーマにしてますが、仕事もあるのでコレクションから先がなか
なか進まない。chaoh さんのページに使えそうなものは協力しますよ。
最終的には 「Z80 でインターネット」まで持っていきたいんですが。
chaoh  [1999/09/03 Fri 06:31:29]  [203.140.129.10]

ども、chaoh です。

> 持ってない方のためにちょっと解説とまとめ。

うう、先越されてもうた。自分とこの作成中のページの目玉にするつも
りが。「はよページ作れや〜」という啓示か。(わら
似た感じですが、自分が見つけたとこは以下のページです。

http://www.jmas.co.jp/FAQs/assembly-language/x86/microsoft
http://www.davidparker.com/assembly.html

澤口 さんって、 外国サイトに強いですね。自分はからっきしなんで、
いろいろと参考にさせてもらっています。ありがとうございます。

ココアラ  [1999/09/02 Thu 23:55:28]  [210.228.248.44]

>> ということで、動くと思います。
>> 98に依存さえしていなければ、たぶん。
>> こればっかりは実際に動かしてみて下さい。それがイチバン確実です。
>グラフィックスプログラムみたいです。モロに98依存ですから動かな
>いと思います。

すみません、元の投稿にそんなフシがありましたね。
ズバリ動かないでしょう。

>TASM 5.0 は C++Builder についてくるんでしたっけ?
>TC++4.0 とか Delphi 購入者はオプションで購入申し込みができ
>たと思います。TC++4.0 などはときどき展示品を数千円で売って
>いたりするので、そういう場合はお買い得なのですが。

えっと僕はTurbo C++4.0Jです。TASMはあとから申し込んで
買いました。高1のときはぜんぜん自分がアセンブラできるように
なるとか思っていなかったんですけど、CやってるうちにMOVと
INT「だけ」インラインアセンブラで使えるようになって(音源
ドライバのコントロール)、そのうちINT21hをフックする
プログラムを作っていたらCに限界(というか煩わしさ)を感じ
初めて・・・いつの間にか想像もしなかったあのアセンブラを
手にしていた・・・高2の冬。受験勉強そっちのけ。
なぜかBASICからCに入ったときよりもCからアセンブラに
移行したときの方がずぅっと楽でした。すんなり、といった感じ。
(Cを始めたときはエラーメッセージの意味がわからなくて
ものすごく悩んだ時期があった。ヘルプを見ても、そこで用いられ
ている単語の意味すらわからない)

しかし大学入ってWindowsマシン買って半年、まったくプログラミング
やってません。学校で作らされるCプログラムは・・・あんなの
プログラムのうちじゃないし。gccの使い方まだアヤしいし。

僕も数学はニガテです。理系ですが。
某○○屋大学の工学部後期日程の数学は驚くほど簡単で・・・

どうやらs.vさんはMASMに落ち着かれたようですが、僕としては
TASMを・・・いや別にMicrosoftはきらいなわけではないんですが。
Borlandが好きなだけです。
でもWinで開発するんだったらMASMなのかな・・・?


澤口@大崎  [1999/09/02 Thu 15:22:15]  [210.141.243.66]

澤口@大崎です。

s.y さんは MSDN で MASM をすでに入手済みということですが、
持ってない方のためにちょっと解説とまとめ。

http://www.microsoft.com/ddk/download/98/BINS_DDK.EXE
(2.9 MBytes)
http://www.microsoft.com/ddk/download/98/98SETUP.EXE
(1.9 MBytes)
の2つをダウンロードして解凍します。
ml.exe
ml.err
link.exe
がアセンブラプログラムに必要なツールです。
ml.exe は 現在 MASM 6.11d 相当ですが、これは MMX や 3DNow!
に対応していないので、パッチを入れます。

ftp://ftp.microsoft.com/softlib/mslfiles/ML612.EXE
ftp://ftp.microsoft.com/softlib/mslfiles/ML613.EXE
ftp://ftp.microsoft.com/softlib/mslfiles/ML614.EXE

です。
また、link.exe は 32bit リンカですので、リアルモードプログラ
ム(16bit プログラム)を作るときは

ftp://ftp.microsoft.com/softlib/mslfiles/lnk563.exe

が必要です。

数学の方は、まぁ CG 指向の場合は3角関数と行列演算の概念把握は
必須事項ですが、プロのプログラミングを目指すのでなければアーカ
イブサイトからグラフィックライブラリとか Math ライブラリをダウ
ンロードして使うのが簡便でしょう。数値演算が趣味ならともかく、
こういう基本的なルーチンはきちんと作ろうとすると意外な手間暇が
かかります。



s.y  [1999/09/02 Thu 14:04:05]  [210.238.250.99]

ココアラさん、澤口@大崎さん、ありがとうございます。
MASMがよさそうですね。
調べてみます。

数学に関しては、学生時代に数学が苦手だったツケが
ここで出た感じです。
やっぱり高校の教科書かもしれませんね。


澤口@大崎  [1999/09/02 Thu 13:24:32]  [210.141.243.66]

澤口@大崎です。

DOS プログラミングの参考になるアーカイブサイトの主なところ
を集めてみました。

ftp://nic.funet.fi/pub/msdos/
http://www.simtel.net/simtel.net/msdos/index-msdos.html
ftp://x2ftp.oulu.fi/pub/msdos/programming/
ftp://garbo.uwasa.fi/pc/

アセンブラの勉強法として参考書を読むのはいいのですが、これは
あくまで「参考のために」読むという姿勢の方がいいと思います。
基本はニーモニック表をあきるまで眺めることじゃないでしょうか。
あと、他人の作ったソースを理解できるまで読み込むとか。
耳学問でできるかどうかわからないことにチャレンジするよりは
確実に理解している技術を組み合わせることが結局早道のような
気がします。
澤口@大崎  [1999/09/02 Thu 12:42:05]  [210.141.243.66]

澤口@大崎です。

to ココアラさん:

> うちにはTASM5.0があります。WinでもDOSでも
> 開発可能です。16/32ビット両対応です。ただし単品での
> 販売はしていないみたいです。インプライズ製です。
> マイクロソフトのMASMという手もあります。
TASM 5.0 は C++Builder についてくるんでしたっけ?
TC++4.0 とか Delphi 購入者はオプションで購入申し込みができ
たと思います。TC++4.0 などはときどき展示品を数千円で売って
いたりするので、そういう場合はお買い得なのですが。

今日はこういうアセンブラを見つけました。名前がちょっと紛らわしい。

http://www.pbq.com.au/home/hutch/masm.htm
澤口@大崎  [1999/09/02 Thu 10:55:50]  [210.141.243.66]

澤口@大崎です。

to ココアラさん:

> 9801Eって・・・x86系ですよね、たしか。
> DOS/Vってことなので、intel86プロセッサ互換CPUを
> 積んでると思います、たぶん。
> ということで、動くと思います。
> 98に依存さえしていなければ、たぶん。
> こればっかりは実際に動かしてみて下さい。それがイチバン確実です。
グラフィックスプログラムみたいです。モロに98依存ですから動かな
いと思います。


澤口@大崎  [1999/09/02 Thu 10:43:15]  [210.141.243.66]

澤口@大崎です。

to WilloWさん:

とりあえず、CodeView の使い方らしきものはここにありました。

http://www.nuvisionmiami.com/books/asm/student/

の appendixC.zip です。

CodeView があれば SYMDEB はいらないでしょう。 COM ファイル
を作るのでなければ EXE2BIN もとりあえずいりませんね。
アセンブラ関係のアーカイブサイトを探せば EXE2BIN に相当する
ユーティリティはたくさん見つかると思いますが。
ココアラ  [1999/09/01 Wed 23:56:25]  [210.228.248.3]

まだまだ夏休みです。
こんな暇なのも1年生のうちだけか?
しかしテストが・・・

>1.アセンブラ言語を扱った書籍で、新しいのってありますか?
>前記の書籍では、対象機種がPC9801Eになっているん
>ですけど、実際に家のDOS/V(APTIVA・133Mhz)
>でも同じアセンブラコードで通用するんでしょうか?

9801Eって・・・x86系ですよね、たしか。
DOS/Vってことなので、intel86プロセッサ互換CPUを
積んでると思います、たぶん。
ということで、動くと思います。
98に依存さえしていなければ、たぶん。
こればっかりは実際に動かしてみて下さい。それがイチバン確実です。

>アセンブラ言語は、環境によって、左右されるみたいなんで。
>できれば、「今」に合わせた本が欲しいです。

「今」ってことはたぶんWindowsだと思うのですが・・・
アセンブラでWinプログラム開発をする人は・・・あんまり
いないような。よって書籍もほとんどないような。
ベースをC++やPascalで書いて、必要に応じて
インラインアセンブラで対処する、というのが自然な気がします。

>2.アセンブルやリンクを行うツールは、どれがいいんでしょう

うちにはTASM5.0があります。WinでもDOSでも
開発可能です。16/32ビット両対応です。ただし単品での
販売はしていないみたいです。インプライズ製です。
マイクロソフトのMASMという手もあります。

>3.ペンティアムは、32ビットCPUですよね。
>ってことは、例えばAXレジスタは32ビット、
>AH、ALレジスタは16ビットという考えでいいんですか?
>(8086は16ビットなので、AXが16、AL、AHが8)

32ビット・・・EAX
16ビット・・・AX
 8ビット・・・AH,AL
こんな感じです。同様に、
EBX、ECX、EDXなどもあります。他にもありますが。
フラグも32ビットになってたと思います。

>4.数学が全然分かりません。「めざせゲームプログラマ」という
>本を買ったんですが、サイン、コサイン、ベクトルとかが
>さらりと流されて書かれているんで、自分の知能レベルの
>低さに愕然としているとともに、意味が分かりません。
>コンピュータ数学を基礎から扱ったサイトってありますか?

・・・これはコンピュータ数学と言うのでしょうか?
高校基礎数学だと思いますが・・・
ここいらはプログラマにとっては常識(ですよね?)になってると
思うので確かにわからないと辛い(というか何もできない)と思います。
一番いいのは高校数学の教科書・・・!?
s.y  [1999/09/01 Wed 23:27:01]  [210.151.42.151]

こんな所にメッセージを書ける者では無いんですが、
済みません、ド素人の悩みを聞いてください。

今度、アセンブラの勉強を始めました。
といっても、なかなか書籍が見つからず、1994年に出版された
8086マシン語入門という本を読みました。

が、友達に聞くと、WINDOWSやコンシューマ機の
開発環境は、もう少し難しいよ、と言われました。
確かに、僕の学んだ画像表示の規格は680×400の8色表示というもので
今の他機種での開発は現状では無理そうです。

そこで、質問です。
1.アセンブラ言語を扱った書籍で、新しいのってありますか?
前記の書籍では、対象機種がPC9801Eになっているん
ですけど、実際に家のDOS/V(APTIVA・133Mhz)
でも同じアセンブラコードで通用するんでしょうか?
アセンブラ言語は、環境によって、左右されるみたいなんで。
できれば、「今」に合わせた本が欲しいです。
2.アセンブルやリンクを行うツールは、どれがいいんでしょう
3.ペンティアムは、32ビットCPUですよね。
ってことは、例えばAXレジスタは32ビット、
AH、ALレジスタは16ビットという考えでいいんですか?
(8086は16ビットなので、AXが16、AL、AHが8)

また、アセンブラには直接関係ないんですが、
4.数学が全然分かりません。「めざせゲームプログラマ」という
本を買ったんですが、サイン、コサイン、ベクトルとかが
さらりと流されて書かれているんで、自分の知能レベルの
低さに愕然としているとともに、意味が分かりません。
コンピュータ数学を基礎から扱ったサイトってありますか?

質問だらけで申し訳ありません。
WilloW  [1999/08/31 Tue 11:56:05]  [202.33.96.47]

はじめまして、WilloWと申します。
最近MASMを勉強することになったのですが、
使っているMASMのバージョンがV6.11(MSDN)ということもあり、
なかなかいい入門書がみつかりません。
(SYMDEBもEXE2BINも持っていない)

どなたか、MASM6関連の書籍をご存知の方がいたら教えてください。
とりあえず、CodeViewによるDEBUG方法がわかれば、
あとは他の書籍でもなんとかなると思うのですが。
ちなみに今持っている(借りている)本は下記の3冊です。

・Ver5.1 MASM初級プログラム入門
・MASM V6.0ハンディマニュアル
・MS-DOSシステムコールハンドブック

Rio  [1999/08/30 Mon 23:13:50]  [210.130.71.94]

AZUCOさん、澤口@大崎さん。どうもありがとうございました。
とても参考になりました。

fnami  [1999/08/30 Mon 17:20:49]  [202.238.80.23]

Infoseekでこのメッセージボードを見つけました。最近はアセンブラに関する話題をけっこう見つけるなと思ってうれしくなって読んでいたら、自分のWWWページが紹介されていてびっくりしました(armさん: 1999/07/14)。しばらく更新をさぼっていたのですが、また新しい情報を追加したいと思っています。

ところで、最近見つけたVGAのプログラミングのページを紹介します。
http://www.goodnet.com/~tinara/FreeVGA/home.htm
です。

澤口@大崎  [1999/08/30 Mon 16:13:19]  [210.141.243.66]

澤口@大崎です。

to Rioさん:

あまり役に立たないレスですが・・・
DOSアプリというのは、たとえば Lotus 1-2-3 とか一太郎とか
の一般市販アプリでしょうか。
だとすれば、ハード割り込みや VRAM アクセスをすべて仮想化し
た製品を使ったことがあります。

http://www.tsubasa.co.jp/pub/cai/tool.htm
の Virtual-DOS というツール(6万円くらい)

いわゆる、「行儀の悪い DOSアプリ」まで面倒みようとすると
えらく大変なことになりますね。
わたしならそこまで作り込む自信はないので、並列プロセスを作
らずに、いわゆるスイッチャーにするか、必要最小限のバックグ
ラウンドプロセスを TSR で走らせることになると思います。
澤口@大崎  [1999/08/30 Mon 13:37:03]  [210.141.243.66]

澤口@大崎です。

to Kakushiさん:

link.exe は DOS アプリケーションで、 DLL 参照はしていないと
思うのですが。わたしのところでは出てませんし。
ml.exe は DOS アプリです。DOS 3.x 以前はわかりませんが、日付
からいって、 5.0 とか 6.2 でも動作すると思います。PC-DOS なら
わかりません。

Int09H に限らず、Interrupt を調べるのはここのサイトがデフォル
トです。

http://www.cs.cmu.edu/afs/cs.cmu.edu/user/ralf/pub/WWW/files.html
AZUCO  [1999/08/29 Sun 23:56:54]  [210.249.173.36]

疑似マルチタスクですが、タイマ割り込みをかけて、
呼び出されたときにInDOSフラグが立ってなければ、
再度タイマをセットして、次のタスクのIPにジャンプする・・・・
というのはどうでしょう?
おそらくこれが非常に簡単だと思いますが・・・・

あと、DOS5だか6だかから、疑似マルチタスク用の
ファンクションがサポートされていたような気がするのですが・・・
OADGかなんかのドキュメントにないかな?
Rio  [1999/08/29 Sun 23:06:36]  [210.130.71.71]

はじめまして、Rioと申します。
アセンブラの情報は少ないのでこのサイトが発見できてとてもうれしいです。
ところで、私は今DOSのアプリを疑似マルチタスクで動かすミドルウェアのようなものを作ろうとしているのですが、どのようにタスクを管理すればよいかわかりません。とりあえずINT 21Hに割り込みがあったときに直接ファンクションをコールせずタスク管理プログラムを呼び出そうと思うのですが...
よろしければご指導をお願いします。

Kakushi  [1999/08/27 Fri 20:40:11]  [210.238.31.202]

どうも、Kakushiです。なんか1日にいくつもログを書き込んじゃって怒られないかなぁ…

 この掲示板の過去のログを頼りにMASMをマイクロソフトのホームページからダウンロードしたのですがいくつかわかりません。
 @Link.exeを実行しようとするとDLLが見つかりませんと表示される。(これに関しては、いろいろと他のファイルのファイル名を変えていたら解決できたのですが皆さんのパソコンでもこうなるのでしょうか?)
 AこのMASMは32bitだと聞きました。DOS上でちゃんと動作するのでしょうか?
以上よろしくお願いします。
Kakushi  [1999/08/27 Fri 18:48:20]  [210.238.31.202]

to 澤口@大崎さん

 いろいろとアドバイスをありがとうございます。「プログラマーズPCソースブック」についてですが、一つだけ問題があります。初心者の僕に理解できるものでしょうか?(リファレンスだから理解できるできないの問題じゃないのかもしれないけど…)

それと何度もでてきている「DOS/Vプログラミングリファレンス」の内容で一つ質問があります。この本では、たびたびINT09Hを使っているのですが、INT09Hっていったいどんなしすてむこーるなんでしょうか?誰か教えてください。
澤口@大崎  [1999/08/27 Fri 15:35:44]  [210.141.243.66]

澤口@大崎です。

to Kakushiさん:

わたしは持ってませんが、世間で定番とされているのは
プログラマーズPCソースブックです。高いですが、DOS/V
のハードについてはたいていのことがわかります。(実は
会社にある)

http://home.impress.co.jp/catalog/impress/bk4615/index.htm

DOS/V プログラマーズハンドブックはプログラムのマニュアル本では
ありませんで、DOS/V の BIOS 番号とか VGA はじめハードウェアの
IO 一覧とかの簡易リファレンスです。版が小さいので、手元におくと
重宝します。
メガデモの方は、まぁ趣味の問題ですが、プログラミングしだいでこれ
だけのことができると肌で感じることができます。
他人に強制するわけにはいきませんが、わたしは PC でアセンブラを使
う目的は1にも2にも高速化以外の理由付けはできないと思っています。
つまり、誰よりも高速な処理を目指さなければ PC でのアセンブラプロ
グラミングは価値がないと思います。その意味ではトップレベルの高速性
を知っておくことは必要だと思うのですが。

Kakushi  [1999/08/26 Thu 19:05:01]  [210.238.31.202]

to 澤口@大崎さん

MyBest Buy!という本の通信販売のホームページを見ていたら、
 「DOS/Vプログラマーズハンドブック」と「メガデモを作ろう」の2つの本は、まだ購入できるらしいです。買うべきでしょうか?ちなみに僕は、VGAに関して少々興味があるので、ためになるなら買っておきたいと思います。どうするべきでしょうか?どうかよろしくお願いします。
Kakushi  [1999/08/26 Thu 18:47:20]  [210.238.31.202]

to 澤口@大崎さん&他の人へ

 今日、巣鴨のCQ出版社のギャラリーへ行って来ました。バックナンバーもいろいろとありましたが、さすがに1993年発売の本などは、もうありませんでした。
 澤口@大崎さんが、「CQ出版は、コピーサービスをやっている」と言っていましたが、実際にやっていました。でも「1枚につき60円」だそうです。澤口@大崎さんのログに書いてあった本もコピーサービスならできるそうですが、さすがに僕は学生で、お金もあまり持っていないのでコピーをする気にはなりませんでした。
 結構、インターネットの通信販売をあたれば、まだ在庫があるようですし…

 で、ここからやっとアセンブラのことです。
僕の前のログで、「DOS/Vプログラミングリファレンス」を持っていますと書いたような気がしますが(書いてないかも)、それについて質問です。この本には、DOS/V(IBM−PC)の「業界標準」をベースに音源やキーボード、VGAなどのことについて書いてあるのですが、僕はまだアセンブリをやり始めて間もない(というか、ハードウェアに関することがよくわからない)のでこの本はいまいち難しいです。誰かもっと易しい本を教えてください。一応知り合いに、この本の前書である「DOS/Vテクニカル・リファレンス・マニュアル」と、アスキーからでている「DOS/Vプログラミング」みたいなタイトルの本があるよと言うことは聞いたのですが、この2つの本はもうとっくに絶版ですし、内容を見たこともないのでいい本なのかそうでないのか全然わかりません。「要らないからこの本やるよ。」と言う人がいれば、もちろん頂きますが…

 それと、「DOS/Vプログラミングリファレンス」に書いてあることで一つ質問ですが、VGAのところで旧モードの取得と新モードの設定に「INT10H」を使っているのですが、INT10Hってどんなシステムコールなんでしょうか?誰か教えてください。また、DOSのシステムコールについて詳しく(易しく)書いてある本を知っている人がいればご一報を。

それでは、誰かよろしくお願いします。
澤口@大崎  [1999/08/24 Tue 12:51:30]  [210.141.243.66]

澤口@大崎です。

to MINTさん:

DOS/V に関してはわたしは本を探すより Web 上でデータを探すこと
が多いのですが、一応持っている VGA 関連の書籍を書いてみます。
・トラ技コンピュータ 1993年5月号(CQ出版社)
 特集 DOS/V の VGA プログラミング入門 \650
・トラ技スペシャル No.10 (CQ出版社)
IBM PC & 80286 のすべて \1,500
・トラ技コンピュータ別冊 (CQ出版社)
 IBM PC & DOS/V 活用ハンドブック \2,400
・DOS/V プログラマーズハンドブック(SOFTBANK)
 ISBN4-89052-429-0 1993.7.1 初版 \3,800
・メガデモを作ろう(SOFTBANK) 山崎由喜憲/著
ISBN4-7973-0352-2 \3,000

やっぱり古い本が多いんで、入手困難ですね。CQ出版ではコピー
サービスもやってたとは思いますが。
Graphics 中心でプログラムを組むんでしたら、VGA だけでなく
XMS,VCPI,DPMI といったメモリ規格や DOS エクステンダーの使
い方も覚えないと技術面でハンデがつきますね。データが大きい
ですから。
あと、JPEG,GIF,BMP 画像ファイルも自前で表示、格納できる程度
が最低限のスキルになると思います。
澤口@大崎  [1999/08/23 Mon 23:55:49]  [210.141.243.66]

澤口@大崎です。

to みかんさん:

フリーのアセンブラの方は AZUCO さんの言われるとおり、
ここ数ヶ月のログにたくさんでてますよ。

今日はこんなデバッガを見つけました。ホームページのデ
ザインがいいので、何となく使えそう。(いい加減だね)

http://www.sudleyplace.com/
澤口@大崎  [1999/08/23 Mon 23:50:48]  [210.141.243.66]

澤口@大崎です。

to MINTさん:

とりあえず、ここにソースコードやチュートリアルがいろいろ
あります。

http://www.hornet.org/code/
MINT  [1999/08/23 Mon 13:06:37]  [210.154.7.18]

MINTです。
澤口@大崎さん大変失礼な質問に対してご親切なご教授ありがとう
ございます。本当に申し訳ありません。
実は、澤口@大崎さんの書かれているとおり、このプログラムは
ワークメモリーにあるビットマップデータを、VRAMに書いて
いるプログラムなのです。ただ私の力不足で、どのような動きで
実現しているか理解できなかったのです。
私はアセンブラでビットマップを、ディスプレーに自在に表示して
みたいのですが何か良い参考書などないでしょうか?
よろしくお願いいたします。

澤口@大崎  [1999/08/23 Mon 12:43:12]  [210.141.243.66]

澤口@大崎です。

to goneさん:

CPU にはもともと正の数とか負の数という概念はありません。
あるビットパターンを正とするか負とみなすかは、あくまで
「約束事」なのです。
で、単純に考えると、たとえば最上位ビットが1のときは負の数、
0の時は正の数などとしたくなるのですが、これだと0が+0と
−0の2種類できてしまいます。ある数が 0 かどうか判定するこ
とは頻繁にプログラムで使用されるので、これでは不便ですね。
情報数理では正の数とか負の数とかは考えないで、補数という考
え方を採用していて、
a+b=0 のとき、a,b はそれぞれ相手の補数という
という約束で計算します。CPU は構造上、減算器というものがな
くて、すべて加算器で計算しますので、この規則が都合がいいの
です。(2の補数といいます。ハード的にはビット反転したもの
に1を足して得られるビットパターン)
数値としての 0 をどのビットパターンに対応させるかというと、
これはやはり「すべてのビットが 0」であると決めるのが合理的
です。
定義から分かるとおり、0 の補数は 0, 1 の補数は FFH になり
ます。イメージとしては数直線ではなくて、円周上に数値が配分
されているようなもんですね。後は、数理論上のことですが、こ
の定義で整数の加減演算が加算器だけで計算できることが証明さ
れています。
結論でいえば、「ハードウェアを簡略化する都合でそうなってい
る」ということです。


gone  [1999/08/22 Sun 22:57:53]  [210.234.48.202]

疑問に思ったことがあるのでこの場で質問させていただきます。

アセンブリ言語を始める前にPCの内部構造を理解しようと、
マシン語や8086本等を読み始めました。始めたばかりで現在メモリを
学習しているのですが、少々分からないところがあり、書きこみました。

メモリのアドレスや内容などすべて16進数で考えること、10進⇔2進⇔16進
の変換、また計算方法とかの基本的なことは理解できたのですが、
”8ビットでは80hからFFhまでが負の数”というのがよく分からないのです。

私の持っている本には”FFhに1を足すと100hになりオーバーフローとなる、
だから桁を無視して00hになり、FFhは0より1小さいと考えると、FFh=-1h
となる。”と書いてありました。

この説明でFFh=-1hがどういった理論でそうなるのかは、分かるのですが、
なぜそうするのか、がよく分かりません。
”1を足す”、”正負に分ける”というのが何故そうするのか分からないのです。

だれかヘルパーお願いします。
AZUCO  [1999/08/21 Sat 23:47:53]  [210.249.173.35]

最近、フリーのASMに関する質問が多いですね。
これを機会にFAQを作ってはどうでしょう?
(メニューに表題はあるけどね)

質問する方も、バックログに回答がありますので、参考にしてください
(というか、なるべく初めに読んでください)

というか、一部の噂ではちゃおうさんがフリーのDOSや開発環境に
関していろいろページを作るとか作らないとか。
(実際確か掲示板上で一回まとめられてました)
期待して待ちましょう!
みかん  [1999/08/21 Sat 00:41:51]  [202.211.156.70]

ASM.EXEというのを手に入れたのですが
たぶん16ビットコードしか受け付けなかったように思います。
32ビットコードを受け付けるものをどなたか
NASM以外でMS−DOS上のみで動くフリーの
アセンブラご存知ありませんか?
最近、アセンブラ関係の本がどんどん少なくなって
きているようですね。
アセンブラはパソコンがどのように動いているかが
わかっておもしろいのになぁ・・




e-mail: mist@e-net.or.jp
Structured Anchor Tree Return to Menu Return to Parent Menu 
Powered by Unit Missing Link.