Вот пример простейшего загрузчика (bootloader), который выводит сообщение на экран: Будет работать?
; boot.asm
[BITS 16]
[ORG 0x7C00]
start:
; Установить цвет текста
mov ax, 0x07C0 ; Установить сегмент
mov ds, ax
; Вывести строку
mov si, message
call print_string
; Зациклить
hang:
jmp hang
print_string:
; Вывод строки на экран
mov ah, 0x0E
.next_char:
lodsb
test al, al
jz .done
int 0x10
jmp .next_char
.done:
ret
message db 'Hello, World!', 0
times 510 - ($ - $$) db 0 ; Заполнить до 510 байт
dw 0xAA55 ; Загрузочный сектор