-

差分

移動先: 案内検索

Functions HI-TECH C INT86

1,312 バイト追加, 2017年12月30日 (土) 07:06
ページの作成:「<strong>INT86, INT86X, INTDOS, INTDOSX</strong> ==概要== #include <dos.h> int int86(int intno, union REGS * inregs, union REGS * outregs) int int86x(int intno, un...」
<strong>INT86, INT86X, INTDOS, INTDOSX</strong>
==概要==

#include <dos.h>

int int86(int intno, union REGS * inregs, union REGS * outregs)
int int86x(int intno, union REGS inregs, union REGS outregs, struct SREGS * segregs)
int intdos(union REGS * inregs, union REGS * outregs)
int intdosx(union REGS * inregs, union REGS * outregs, struct SREGS * segregs)


==詳細==
これらの関数はCプログラムからのソフトウェア割り込みを許可します。<strong>Int86</strong>() と<strong>int86x</strong>()は<strong>intno</strong> で指定されたソフトウェア割り込みを実行しますが、


<strong>intdos</strong>()
と<strong>intdosx</strong>() は割り込み番号21hのMS-DOSシステムコール割り込みを実行します。
inregsポインタは設定されるべき汎用レジスタを持つ共用体へのポインタを示さなくてはいけません。値を返す際のレジスタの値はoutregsによって示される共用体にコピーされます。

<strong>x</strong> のついたバージョンは、ESとDSのみがこの構造体によって実際にセットされるのですが、
割り込み実施の際にセグメントレジスタの値を設定した共用体へのポインタを取る呼び出しです??

==参照==

segread

案内メニュー