📄 pm_defs.h
字号:
#ifndef _pm_defs_
#define _pm_defs_
#define byte unsigned char
#define word unsigned int
#define dword unsigned long
/* Access byte's flags */
#define ACS_PRESENT 0x80 /* present segment */
#define ACS_CSEG 0x18 /* code segment */
#define ACS_DSEG 0x10 /* data segment */
#define ACS_CONFORM 0x04 /* conforming segment */
#define ACS_READ 0x02 /* readable segment */
#define ACS_WRITE 0x02 /* writable segment */
/* Ready-made values */
#define ACS_CODE (ACS_PRESENT | ACS_CSEG | ACS_READ)
#define ACS_DATA (ACS_PRESENT | ACS_DSEG | ACS_WRITE)
#define ACS_STACK (ACS_PRESENT | ACS_DSEG | ACS_WRITE)
#pragma pack (push, 1) /* align structures to a byte boundary */
/* Segment desciptor definition */
typedef struct {
word limit,
base_l;
byte base_m,
access,
attribs,
base_h;
} DESCR_SEG;
/* GDTR register definition */
typedef struct {
word limit;
dword base;
} GDTR;
#pragma pack (pop) /* align structures to default boundary */
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -