initldt.asm
来自「操作系统实验教程核心技术与编程实例书中地例子代码」· 汇编 代码 · 共 29 行
ASM
29 行
INIT_LDT PROC FAR ;初始化 LDT
PUSH DS
MOV AX,USER1_LDT_SEG
MOV DS,AX
MOV SI,OFFSET USER1_LDT_INIT_BEGIN
MOV CX,USER1_LDT_INIT_COUNT
INIT_LDT_LBL1:
MOV AX,[SI].STRUCT_SEG.BASE_L
MOVZX EAX,AX
SHL EAX,4
SHLD EDX,EAX,16
MOV [SI].STRUCT_SEG.BASE_L,AX
MOV [SI].STRUCT_SEG.BASE_M,DL
MOV [SI].STRUCT_SEG.BASE_H,DH
ADD SI,SIZE STRUCT_SEG
LOOP INIT_LDT_LBL1
POP DS
XOR DX,DX
MOV CX,16
MOV AX,USER1_LDT_SEG
MUL CX
MOV USER1_LDT_SIZE,USER1_LDT_LEN
MOV USER1_LDT_ADDR,AX
MOV USER1_LDT_ADDR+2,DX
RET
INIT_LDT ENDP
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?