您的位置:首页 > 编程语言

跟大师学习系统编程---操作系统加载(6)

2017-11-02 08:26 274 查看
sectors:
.word 0

msg1:
.byte 13,10
.ascii "Loading system ..."
.byte 13,10,13,10

.org 508
root_dev:
.word ROOT_DEV
boot_flag:
.word 0xAA55

.text
endtext:
.data
enddata:
.bss
endbss:


最后描述几个变量。

sectors表示每磁道扇区数,在本程序中被赋值,并被使用。

msg1为本程序执行过程中向终端输出的字符串常量

root_dev为本程序赋值(初始值为0x0306–ROOT_DEV),在setup.s中使用

boot_flag的值为0xAA55

这里除了msg1所有变量都占用2字节,即word类型。

.org 508表示伪指令org用来规定目标程序存放单元的偏移量,

即root_dev放在508,509字节处,boot_flag放在510,511字节处。

所以boot_sect.s刚好占用从0~511字节的空间。

boot_flag做为本扇区的最后2个字节,可以认为是一个启动扇区的校验码,暂时还不知道是不是这样用的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  操作系统 编程