MyOS (一)

原创 2015年11月21日 17:07:18

 FAT12信息

FAT12是MS公司Dos所支持的文件系统之一,当软盘被标准格式化后:每个磁头80个磁道,每个磁道18个扇区,每个扇区512字节,所以标准软盘的容量为:2*80*18*512=1474560B=1440K=1.44M。(图一:文件系统数据结构)为:


(图二:引导程序数据结构)



                ORG 0x7c00 ;程序加载到内存的位置
JMP entry
DB 0x90    ;模拟磁盘扇区
DB "HELLOIPL"
DW 512
DB 1
DW 1
DB 2
DW 224
DW 2880
DB 0xf0
DW 9
DW 18
DW 2
DD 0
DD 2880
DB 0,0,0x29
DD 0xffffffff
DB "HELLO-OS   "
DB "FAT12   "
RESB 18
entry:
MOV AX,0
MOV SS,AX
MOV SP,0x7c00
MOV DS,AX
MOV ES,AX
MOV SI,msg
putloop:
MOV AL,[SI]
ADD SI,1
CMP AL,0    ;到字符串最后了
JE fin
MOV AH,0x0e ;AH=0ex,AL=显示字符
MOV BX,15 ;BH=0,BL=颜色代码
INT 0x10 ;BIOS显示中断
JMP putloop
fin:
HLT ;停机指令
JMP fin ;死循环
msg:
DB 0x0a, 0x0a
DB "wangw, world"
DB 0x0a
DB 0
;RESB 0x7dfe-$  ;原书中使用下面指令,但这个在nasm中不通过,故使用times  
;times   0x7dfe - ( $ - $$ ) DB 0
                times 510-($-$$) DB 0
DB 0x55, 0xaa
DB 0xf0, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00
RESB 4600
DB 0xf0, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00
RESB 1000


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

myos_linux_x86

  • 2011年12月20日 16:09
  • 22.3MB
  • 下载

从'0'开始的操作系统MyOs(汇编FAT12软盘)

原博客地址 LANGUAGE:汇编 BASE            :Orange's &老师写的cmd.asm CPU MOD    :实模式 手动写汇编系统这是大二操作系统作业的一部分,代码很大...

myos.iso

  • 2011年12月20日 15:42
  • 55.64MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MyOS (一)
举报原因:
原因补充:

(最多只允许输入30个字)