[求助]请解释一下这段asm代码(从实模式->保护模式跳转开始的一段代码).
org 0100h
jmp LABEL_BEGIN
...
[SECTION .s16]
[BITS 16]
LABEL_BEGIN:
mov ax, cs
mov ds, ax
mov es, ax
mov ss, ax
mov sp, 0100h
org 0100h
jmp LABEL_BEGIN
...
[SECTION .s16]
[BITS 16]
LABEL_BEGIN:
mov ax, cs
mov ds, ax
mov es, ax
mov ss, ax
mov sp, 0100h
org 0100h
jmp LABEL_BEGIN
... //这儿省略了一些数据结构,
[SECTION .s16]
[BITS 16]
LABEL_BEGIN:
mov ax, cs
mov ds, ax
mov es, ax
mov ss, ax
mov sp, 0100h
这个是生成的.com文件格式,
开始的这几条指令是运行在实模式下,初始化ds,es,ss段寄存器,它们都是和cs指向相同的段,
初始化sp的值 由ss和sp组成地址值指向开头空出的100H.这100H的空间是堆栈的空间.