練習(xí)1
MBR下的簡(jiǎn)單 hello world
SECTION MBR vstart=0x7c00
BEGIN:
xor di,di
mov cx,(PRINT-TEXT)
mov ax,0xB800
mov es,ax
mov si,TEXT
call PRINT
jmp near $
TEXT: db 'HELLO WORLD!'
PRINT:
mov ah,[si]
inc si
mov [es:di],ah
inc di
mov byte [es:di],0x07
inc di
loop PRINT
ret
END:
hlt
resb 446-($-$$)
DPT:
resb 64
MAGIC_CODE:
db 0x55,0xaa
PS:我居然在編寫(xiě)過(guò)程中居然還犯了兩個(gè)低級(jí)錯(cuò)誤庸推。
1.將數(shù)據(jù)段放到文件首
2.沒(méi)有設(shè)置vstart直接使用ds
用Bios中斷的話就太沒(méi)技術(shù)含量了