我不明白这段代码:
mov ax, 07C0h ; Set up 4K of stack space above buffer
add ax, 544 ; 8k buffer = 512 paragraphs + 32 paragraphs (loader)
cli ; Disable interrupts while changing stack
mov ss, ax
mov sp, 4096
sti ; Restore interrupts
- mov ax, 07C0h - 这里 BIOS 加载我们的代码。但什么是“4K”?千字节?我没明白:)
- 添加 ax, 544 - 为什么又是“8K”?为什么我们要添加 544?为什么不是512?
- mov sp, 4096 - 这里我们设置堆栈指针。
在我们设置堆栈指针之前,我们做所有这些操作是为了什么?