我试图让文本屏幕打印'h',它存储在一个变量中.我正在使用NASM.x86保护模式,一种从头开始的内核.
DisplayMessage:
;mov byte[Color], 0xF
;mov CFC, EAX;
;mov byte[Color], 104
;push 104
;mov byte[esi], Msg
;lodsb
mov ebx, Msg
add ebx, 4
mov [Msg], eax
mov byte[0xB8000], Msg
;mov byte[eax], Color
;pop byte[0xB8000]
;mov byte[0xB8000], byte Color
;mov byte[0xB8000], 0xB500000;
;Now return
ret
EndCode:
Msg: db 104
它显示的字母永远不对.什么是正确的方法来做到这一点?