Archief - De topics van lang geleden

Bootstrap

26-04-2007, 12:08 door Anoniem, 2 reacties
Hoi Allemaal!

Ik had een vraagje als dat zou mogen. Ik kwam artikel tegen
op http://www.omninerd.com/2005/11/05/articles/40.

Zo word er beschereven dat de bootstrap sector van 512 bytes wordt
geladen in het geheugen op adres 0000:7C00. Verder in een de source
code van de bootstrap staat:

START:
cli
mov ax,0x07c00
mov ds, ax
mov es,ax
mov fs,ax,
mov gs, ax

mov ax,0x0000
mov ss,ax
mov sp, 0xFFFF
sti


Vanuit het lifo idee gezien zou je toch verwachten dat eerst de stack op
0x0000 word gezet en pas daarna mov ax,0x07c0 word geplaats. Maar aan
de source code te zien is het juist het tegen over gestelde.

Of komt dit door dat de stack er al is maar door middel met mov ax,0x000
de stack weer geintialiseerd wordt voor het laden van het master boot
record.
Reacties (2)
27-04-2007, 08:06 door Anoniem
Door Solid
Hoi Allemaal!

Ik had een vraagje als dat zou mogen. Ik kwam artikel tegen
op http://www.omninerd.com/2005/11/05/articles/40.

Zo word er beschereven dat de bootstrap sector van 512 bytes wordt
geladen in het geheugen op adres 0000:7C00. Verder in een de source
code van de bootstrap staat:

START:
cli
mov ax,0x07c00
mov ds, ax
mov es,ax
mov fs,ax,
mov gs, ax

mov ax,0x0000
mov ss,ax
mov sp, 0xFFFF
sti


Vanuit het lifo idee gezien zou je toch verwachten dat eerst de stack op
0x0000 word gezet en pas daarna mov ax,0x07c0 word geplaats. Maar aan
de source code te zien is het juist het tegen over gestelde.

Of komt dit door dat de stack er al is maar door middel met mov ax,0x000
de stack weer geintialiseerd wordt voor het laden van het master boot
record.


De stack is er wel, maar deze wordt niet geinitialiseerd met de betreffende
mov actie. Er mist iets. Heb je meer code?
28-04-2007, 18:02 door Anoniem
De stack is er wel, maar deze wordt niet geinitialiseerd met de
betreffende
mov actie. Er mist iets. Heb je meer code?

Hmmm jah die kan je terug vinden in de link. Daar staat de source
waarvan hun uitgaan wat de source is. Daar staat:


: code located at 0000:7c00, adjust segment registers
cli
mov ax,0x7c0
mov ds,ax
mov es,ax
mov fs,ax
mov gs,ax
; create stack
mov ax,0x0000
mov ss, ax
mov sp, 0xFFFF
sti
; post message
mov si, msgLoading
call DisplayMessage

[/b]
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.