função do segread
Esta função foi definida em dos.h. Esta função lê os registos do segmento. A declaração da função é como segue:
segread vago (*segp do struct SREGS);
onde o segread põe os valores atuais do segmento regista no *segp da estrutura. Nada é retornado pela função e a chamada é pretendida para o uso com intdosx e int86x. deixar-nos ver um exemplo:
#include <stdio.h>
#include <dos.h>
void main()
{
struct SREGS segs;
segread(&segs);
printf("Current segment register settings\n\n");
printf("CS: %X DS: %X\n", segs.cs, segs.ds);
printf("ES: %X SS: %X\n", segs.es, segs.ss);
getch();
}
E a saída do programa será qualquer outra coisa semelhante:
Ajustes atuais do registo do segmento
CS: EED DS: 10BA
ES: 10BA SS: 10BA |
intdos e funções do intdosx
Estas funções foram definidas em dos.h. Estas são as relações gerais da interrupção do DOS. Os intdos da função invocam os registos então DX do serviço do MS-DOS e o AL onde o intdosx da função invoca o serviço do MS-DOS com valores do registo do segmento.
A declaração da função dos intdos é como segue:
int intdos(union REGS *inregs, union REGS *outregs);
e a declaração da função do intdosx é como:
int intdosx(union REGS *inregs, union REGS *outregs,
struct SREGS *segregs);
|