Реферат: DOS-extender для компилятора Borland C++

// Селекторы, определённые в GDT

#define CODE_SELECTOR 0x08 // сегмент кода

#define DATA_SELECTOR 0x10 // сегмент данных

#define TASK_1_SELECTOR 0x18 // задача TASK_1

#define TASK_2_SELECTOR 0x20 // задача TASK_2

#define MAIN_TASK_SELECTOR 0x28 // главная задача

#define VID_MEM_SELECTOR 0x30 // сегмент видеопамяти

#define IDT_SELECTOR 0x38 // талица IDT

#define KEYBIN_TASK_SELECTOR 0x40 // задача ввода с клавиатуры

#define KEYB_TASK_SELECTOR 0x48 // задача обработки

// клавиатурного прерывания

#define FLIP_TASK_SELECTOR 0x50 // задача FLIP_TASK

// Байт доступа

typedef struct

{

unsigned accessed : 1;

unsigned read_write : 1;

unsigned conf_exp : 1;

unsigned code : 1;

unsigned xsystem : 1;

unsigned dpl : 2;

unsigned present : 1;

} ACCESS;

// Структура дескриптора

typedef struct descriptor

{

word limit; // Предел (размер сегмента в байтах)

word base_lo; // Базовый адрес сегмента (младшее слово)

unsigned char base_hi; // Базовый адрес сегмента (старший байт)

К-во Просмотров: 745
Бесплатно скачать Реферат: DOS-extender для компилятора Borland C++