[英]How to set the Stack segment
有人可以帮助您了解如何为操作系统设置堆栈。
据我了解,SS将由“程序员”设置为1024(1k),然后将SP移到它的顶部,对吗?
我在MikeOS教程上找到了以下内容,不确定将544添加到07c0将如何添加4k缓冲区
bootloader_start:
mov ax, 07C0h ; Set up 4K of stack space above buffer
add ax, 544 ; 8k buffer = 512 paragraphs + 32 paragraphs
这是我用来设置堆栈段的代码。
; NASM syntax
xor ax, ax ; or set ax to whatever segment you wish
mov ss, ax ; IIRC, you can't just go mov ss, 0
mov sp, 0xF000 ; or set sp to whatever you wish
我认为我不必将堆栈放在那里。 只要不覆盖系统数据,就可以将其放在任意位置。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.