Я не хочу получать судовые иски за не понятно какие патенты . Я хочу прозрачный отечественный софт .
Я хочу развивать и продвигать его ,как альтернативу старуму устаревшему софту которому более 20 лет и который не решает таких задач как быстрая и дешевая разработка ПО
// Точка входа
void kmain(){
struct GDTR currentGDTR;
getGDTR(¤tGDTR);
putLine(" ADDRESS: ");
putDecUI(*(unsigned int*)¤tGDTR.addr);
}
bits 32
section .text
global _getGDTR
_getGDTR:
mov eax,[esp+4]
sgdt [eax]
ret
struct u32{
unsigned char byte1;
unsigned char byte2;
unsigned char byte3;
unsigned char byte4;
};
struct GDTR{
unsigned short limit0;
struct u32 addr;
};
void getGDTR(struct GDTR* ptrGDTR );
struct GDTR{
unsigned short limit;
unsigned long addr;
};
struct u32{
unsigned char byte1;
unsigned char byte2;
unsigned char byte3;
unsigned char byte4;
};
*(unsigned int*)¤tGDTR.addr
, я получаю верное значение. Проверял sizeof(long), равно 4, а sizeof(short), равно 2