トップ->アセンブラ 第2章

あなたは

人目のアセンブラの受講生です。

アセンブラ入門内検索

目次

アセンブラ入門

アセンブラ 〜MS-DOSの世界〜 トップ
0. はじめに

1. コマンドラインからの引数
   1. コマンドラインからの引数
   2. 自分の名前は?

2. メモリー管理
   1. 環境変数
   2. 練習問題
   3. メモリーの割り当て
   4. メモリーの解放
   5. UMB
   6. メモリー管理
   7. 常駐プログラム(TSR)

3. 標準入出力
   1. 1文字入力
   2. キーボードバッファー
   3. 1文字出力
   4. 文字列出力
   5. 文字列入力
   6. 練習問題
   7. RS-232C
   8. プリンタ

4. ファイル操作
   1. ファイルオープン
   2. ファイルクローズ
   3. ファイルリード
   4. ファイルライト
   5. 練習問題1
   6. ファイルポインタの移動
   7. 練習問題2
   8. ファイル作成
   9. ファイル属性
   10. ファイル削除
   11. ファイル名変更
   12. ファイル属性の設定・取得
   13. ファイル日時の設定・取得
   14. ファイル検索
   15. 練習問題3
   16. 予約されているファイルハンドル
   17. ファイルハンドルの二重化(リダイレクト)

5. ディレクトリ操作
   1. ディレクトリ操作
   2. カレントディレクトリ変更
   3. カレントディレクトリ取得
   4. ディレクトリ作成
   5. ディレクトリ削除
   6. 練習問題

6. ディスク操作
   1. ディスクのリセット
   2. カレントディスクの取得
   3. カレントディスクの変更
   4. ドライブ情報の取得
   5. 空き容量取得
   6. 練習問題
   7. 交換可能ドライブの検査
   8. リトライ回数の設定
   9. ディスクの直接操作

7. プロセス管理
   1. プログラムの実行
   2. 練習問題
   3. プログラム終了
   4. リターンコード
   5. PSPアドレスの取得・設定
   6. DTAアドレスの取得・設定
   7. プログラムの実行2
   8. 練習問題2

8. その他のシステムコール
   1. 日付の取得・設定
   2. 時間の取得・設定
   3. 割り込みベクタの設定・取得
   4. ベリファイフラグ
   5. MS-DOSのバージョン取得
   6. 国別情報の取得・設定
   7. CTRL + Cの検査
   8. CTRL + Cの処理

9. EMS
   1. EMSとは
   2. EMSを使用するには
   3. EMSが使用可能か?
   4. EMSのバージョン取得
   5. ページフレームのアドレス取得
   6. 未使用ページ数の取得
   7. アロケート、デアロケート
   8. マップ、アンマップ
   9. ページマップのセーブ、リストア
   10. ハンドル数の取得
   11. ハンドルページの取得
   12. 再アロケート
   13. ハンドル名
   14. その他

10. XMS
   1. XMSとは
   2. XMS使用法
   3. XMSバージョンの取得
   4. HMAとは
   5. HMAの割り当て・解放
   6. A20ラインの設定
   7. EMBとは
   8. EMBの空き容量取得
   9. EMBの割り当て・解放
   10. EMBのコピー
   11. EMBのロック・アンロック
   12. EMBハンドル情報取得
   13. EMBの再割り当て
   14. UMBの割り当て・解放

11. エスケープシーケンス
   1. エスケープシーケンスとは
   2. エスケープシーケンス表

12. 終わりに


・ このページの先頭に戻る
・ トップページに戻る



・ このページの先頭に戻る
・ トップページに戻る

トップ-> アセンブラ 第2章-> 第4章.ファイル操作-> 4-16. 予約されているファイルハンドル

←練習問題へ :  トップへ :  次ページへ→



4-16. 予約されているファイルハンドル

  ファイルハンドルはファイルを操作するための識別番号というかID番号みたいなものである ことはすでに説明した。実は予約番号というのが5つ存在し、それらはMS-DOSが起動したときに オープンされている。プログラム中で使用してもクローズする必要はない。それらをここでは 紹介する。
ハンドル番号 デバイス名 機 能
0 CON 標準入力(キーボード)からの入力
1 CON 標準出力(ディスプレイ)への出力
2 CON 標準エラー出力(ディスプレイ)への出力
3 AUX 標準補助装置(RS-232C)の入出力
4 PRN プリンタへの出力
  MS-DOSではファイル操作と同じ方法で多くのデバイスも操作する。(これもUNIXをまねている仕様) 例えば、キーボードからの入力は、ファイルオープンと同じシステムコールを 用いて、「CON」デバイスをオープンし、ファイルリードを行ってもよい。 また、ディスプレイへの出力も同様に、「CON」デバイスをオープンし、 ファイルライトを行ってもよい。

  ただし、通常CONデバイスは上の表のようにMS-DOSが起動したときからオープンされているので、 オープンする必要はなく、直接リード、ライトを行うことにより、キーボードからの入力、 ディスプレイへの出力が行える。


  さらにいくつかの予約されたデバイス名(ファイル名と等価)がある。
デバイス名 機 能
NUL 何もしない
AUX RS-232C
CLOCK 時計
  これらは、オープンすれば使用可能になるデバイスである。 例えば、NULをオープンすればNULデバイスが使用可能となり、AUXをオープンすれば、 RS-232Cが使用可能になる(ただしRS-232Cのデバイスドライバが必要)。ここで紹介した デバイスはMS-DOSの予約デバイス名で、したがって、NULというファイルは作れないことになる。

  また、デバイスドライバを組み込み新たなデバイスを追加すれば、どうように ファイルではなくデバイスをファイルと同様に使用することも可能である。(この ホームページではデバイスドライバの作成方法は省略する。)

  さて、NULデバイスとはどういう機能を有するデバイスかというと、何もしない デバイスである。ここからリードすればEOF(ファイル終了)が返ってくるし、この デバイスにライトすれば、エラーにはならないが、ディスプレイにもファイルにも 何も出力されない。また、AUXデバイスはRS-232Cからの入出力が行えるデバイスである。



←練習問題へ :  トップへ :  次ページへ→