Master Boot Record + Assembler
1 отговора
186 прегледа
Master Boot Record + Assembler
Здравейте на всички!
Как може, с помощта на компилатор на асемблер, да се създаде изпълним код, който подобно на кода поместен в MBR-a и/или в MBV-a да се изпълнява без наличието на OS? Разбира се, чисто терминологически приемам, че BIOS не е OS. Записът на такъв код върху конкретен сектор от HDD-то не представлява трудност. Благодаря!
Как може, с помощта на компилатор на асемблер, да се създаде изпълним код, който подобно на кода поместен в MBR-a и/или в MBV-a да се изпълнява без наличието на OS? Разбира се, чисто терминологически приемам, че BIOS не е OS. Записът на такъв код върху конкретен сектор от HDD-то не представлява трудност. Благодаря!
Re: Master Boot Record + Assembler
Opitai tova :
code_seg segment public
assume CS:code_seg, DS:code_seg
org 0
;vhodna to4ka.
;tuka e 0:7c00. Tova dolu e hex analog na jmp 7c0:0
; kato rezultat otivame na 7c0 mqstoto kudeto se izpulnqva boot coda
enter:
db 0EAh
dw offset AfterData, 7C0h
;Tuka slagai dannite
AfterData:
push CS
pop DS ; pravi ds = 7c0 vmesto 0
;Tuka slagai tvoq kod
jmp $
org 510 ;otiva6 na kraq na sektora i
dw 0AA55h ; slada6 Boot znaka
code_seg ends
end
compilirai go kato .Com
i go zapi6i na 1 sektor
- restart i trqbva da stane
code_seg segment public
assume CS:code_seg, DS:code_seg
org 0
;vhodna to4ka.
;tuka e 0:7c00. Tova dolu e hex analog na jmp 7c0:0
; kato rezultat otivame na 7c0 mqstoto kudeto se izpulnqva boot coda
enter:
db 0EAh
dw offset AfterData, 7C0h
;Tuka slagai dannite
AfterData:
push CS
pop DS ; pravi ds = 7c0 vmesto 0
;Tuka slagai tvoq kod
jmp $
org 510 ;otiva6 na kraq na sektora i
dw 0AA55h ; slada6 Boot znaka
code_seg ends
end
compilirai go kato .Com
i go zapi6i na 1 sektor
- restart i trqbva da stane