鱼C论坛

 找回密码
 立即注册
查看: 1589|回复: 10

关于引导系统的题

[复制链接]
发表于 2014-4-12 14:35:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
请问如何把hello这句话写入到mbr里然后让他先显示这句话在去引导真正的系统??? 求解    我好像试了一下但是我点了八个exe 没反应啊??
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-4-12 15:35:50 | 显示全部楼层
顶起,高手快点出来指点
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-4-12 20:13:47 | 显示全部楼层
这个很简单
首先,你需要一个 nasm 编译器。 编译已下代码:
       
org        07c00h                        ; 告诉编译器程序加载到7c00处
        mov        ax, cs
        mov        ds, ax
        mov        es, ax
        call        DispStr                        ; 调用显示字符串例程
        jmp        $                        ; 无限循环
DispStr:
        mov        ax, BootMessage
        mov        bp, ax                        ; ES:BP = 串地址
        mov        cx, 16                        ; CX = 串长度
        mov        ax, 01301h                ; AH = 13,  AL = 01h
        mov        bx, 000ch                ; 页号为0(BH = 0) 黑底红字(BL = 0Ch,高亮)
        mov        dl, 0
        int        10h                        ; 10h 号中断
        ret
BootMessage:                db        "Hello,world!"
times         510-($-$$)        db        0        ; 填充剩下的空间,使生成的二进制代码恰好为512字节
dw         0xaa55                                ; 结束标志

;--------------
;编译方法 :
;设ASM源文件为 C:\boot.asm
;打开CMD
;运行 nasm.exe C:\boot.asm -o C:\boot.img
; C:\boot.img 就是引导。
;然后打开虚拟机
;新建一个虚拟机 配置不必太高。
; 然后选择软盘启动,并设置软盘路径为 C:\boot.img
;运行虚拟机
  ;享受Hello World OS 给你带来的喜悦把。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-4-12 20:32:59 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-4-12 20:57:29 | 显示全部楼层
wiliam 发表于 2014-4-12 20:32
大神 可以用 dos中断的 int 21 来显示吗????

当然,现在可是正宗的实模式,访问IO都不受限制的。错了,现在没有DOS系统哈,只有BIOS。
LZ可以用int 0x13来干些坏死,说笑了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-4-12 21:04:15 | 显示全部楼层
无名侠 发表于 2014-4-12 20:57
当然,现在可是正宗的实模式,访问IO都不受限制的。错了,现在没有DOS系统哈,只有BIOS。
LZ可以用int 0 ...

有点看不懂代码    为什么要无限循环呢??
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-4-12 21:39:00 | 显示全部楼层
wiliam 发表于 2014-4-12 21:04
有点看不懂代码    为什么要无限循环呢??

后面的内存是为初始化代码,执行过去会发生未知的错误,很危险的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-4-12 22:41:24 | 显示全部楼层
本帖最后由 oggplay 于 2014-4-12 22:42 编辑

你如果真写进去就要用系统恢复盘了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-4-18 13:20:44 | 显示全部楼层
无名侠 发表于 2014-4-12 20:13
这个很简单
首先,你需要一个 nasm 编译器。 编译已下代码:
       

我这么调试怎么不行呢?? 求解啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-4-18 18:03:48 | 显示全部楼层
学习了...什么系统的呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-4-21 16:48:48 | 显示全部楼层
这个是你需要的:http://hi.baidu.com/helingyuan/item/4dcb9314aba1a99c98ce3367
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-18 02:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表