Пользователь
Есть конкретные примеры, чтобы можно было сравнить?
Начиная с B800:0000 нечётные код символа, четные атрибут.
bits 16 org 7C00h mov ax, 3 int 10h mov ah, 07h mov si, msg xor di, di push es mov bx, 0B800h mov es, bx print: lodsb test al, al jz exit stosw jmp print exit: pop es msg: db "Hello habr", 0 times 510-($-$$) db 0 dw 0xaa55
Есть конкретные примеры, чтобы можно было сравнить?
bits 16
org 7C00h
mov ax, 3
int 10h
mov ah, 07h
mov si, msg
xor di, di
push es
mov bx, 0B800h
mov es, bx
print:
lodsb
test al, al
jz exit
stosw
jmp print
exit:
pop es
msg: db "Hello habr", 0
times 510-($-$$) db 0
dw 0xaa55
Подозреваю что то такое в итоге получиться должно.
Добавить цикл, добавить inc ah и получится версия топикстартера, только без насилования биоса
r/m16/32 — сперва мозг ломается от такого описания операндов. Но со временем привыкаешь. И почему то легче всего воспринимаются MMX и SSE из всего остального в спецификации по ссылке.