读书笔记《30天自制操作系统》day02

本文转自:http://blog.csdn.net/ltbylc/article/details/8280488

1. 将第一天直接生成软盘映像的代码抽取出引导扇区部分,ipl.asm

[plain]  view plain copy
  1.         ORG     0x7c00            
  2.   
  3.         JMP     entry  
  4.         DB      0x90  
  5.         DB      "HELLOIPL"        
  6.         DW      512               
  7.         DB      1                 
  8.         DW      1                 
  9.         DB      2                 
  10.         DW      224               
  11.         DW      2880              
  12.         DB      0xf0              
  13.         DW      9             
  14.         DW      18                
  15.         DW      2                 
  16.         DD      0                 
  17.         DD      2880              
  18.         DB      0,0,0x29          
  19.         DD      0xffffffff        
  20.         DB      "HELLO-OS   "     
  21.         DB      "FAT12   "        
  22.         RESB    18              ?  
  23.   
  24.   
  25. entry:  
  26.         MOV     AX,0              
  27.         MOV     SS,AX  
  28.         MOV     SP,0x7c00  
  29.         MOV     DS,AX  
  30.         MOV     ES,AX  
  31.   
  32.         MOV     SI,msg  
  33. putloop:  
  34.         MOV     AL,[SI]  
  35.         ADD     SI,1              
  36.         CMP     AL,0  
  37.         JE      fin  
  38.         MOV     AH,0x0e           
  39.         MOV     BX,15             
  40.         INT     0x10              
  41.         JMP     putloop  
  42. fin:  
  43.         HLT                       
  44.         JMP     fin               
  45.   
  46. msg:  
  47.         DB      0x0a, 0x0a        
  48.         DB      "hello, world"  
  49.         DB      0x0a              
  50.         DB      0  
  51.   
  52.         ;RESB   0x7dfe-$          
  53.         ;times 0x7dfe-($-$$) db 0  
  54.                 times 510-($-$$) db 0  
  55.                 DB              0x55,0xaa  

2. 将引导扇区部分并入软盘映像文件中 helloos3.asm

[plain]  view plain copy
  1. incbin "ipl.bin"  
  2. times 1474560 - ($ - $$) db 0  

3. 生成的img文件可以被WinImage软件以软盘方式打开了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值