首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NASM - Bootloader Printline

NASM - Bootloader Printline
EN

Stack Overflow用户
提问于 2013-07-10 00:22:11
回答 1查看 260关注 0票数 2

我已经写了一个简单的引导程序,基于:http://www.viralpatel.net/taj/tutorial/hello_world_bootloader.php

它应该只显示“正在启动...”但它还会显示我定义的每条消息(“Booting...Remove disk并按enter重新启动...”)。我怎么才能修复它?

这是我的代码:

代码语言:javascript
复制
[BITS 16]
[ORG 0x7C00]

xor ax,ax
mov ds,ax

mov si, msg_boot
call printline

loop:
jmp loop

reboot:
mov si, msg_remove_disk
call printline
call .inputcheck
ret
.inputcheck:
call input
cmp al, 13
je .end
jmp .inputcheck
.end:
call reset
ret

reset:
db 0Eah
dw 0000h
dw 0FFFFh
ret

exit:
ret

print:
mov al, [si]
inc si
or al, al
jz exit
mov ah, 0x0E
int 0x10
jmp print

printline:
call print
mov al, endofline
call print
ret

input:
mov ah, 0
int 16h
ret

msg_boot db 'Booting...', 0
msg_remove_disk db 'Remove disk and press enter for reboot...', 0

endofline db 13, 10, 0

TIMES 510 - ($ - $$) db 0
DW 0xAA55
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-10 01:09:07

mov,应为mov,

感谢@Frank Kotler

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17553378

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档