我所认知bios自己动手启动计算机_第1页
我所认知bios自己动手启动计算机_第2页
我所认知bios自己动手启动计算机_第3页
我所认知bios自己动手启动计算机_第4页
我所认知bios自己动手启动计算机_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、【我【我所认知的 BIOS】自己动手启动计算 HYPERLINK mailto:lightseed HYPERLINK mailto:lightseed 【我所认知的 BIOS】自己动手启动计算目 录TOC o 1-2 h z u HYPERLINK l _TOC_250007 HYPERLINK l _TOC_250006 目 HYPERLINK l _TOC_250005 HYPERLINK l _TOC_250004 HYPERLINK l _TOC_250003 HYPERLINK l _TOC_250002 HYPERLINK l _TOC_250001 HYPERLINK l _T

2、OC_250000 【我【我所认知的 BIOS】自己动手启动计算 HYPERLINK mailto:lightseed PAGE HYPERLINK mailto:lightseed PAGE 5我当时在做汇编语言王爽(第一版)著的那本书的最后一S S 到S 1、软盘的引导扇区格式及原 HYPERLINK /rabbit5455/blog/item/7f482fdf2dccc310632798ec FAT12 DOS 时代就开始使用的文件系统,目前软盘上也一直BPB(BIOS Parameter Block),下面是引导扇区格式,其中 BPB_开头的属于 BPB,以 BS_开头的只是 BOOT

3、 Sector 的一部分,不属于BPB11紧接着引导扇区的是两个完全相同的 FT 表,每个占用 P_FTS16(0 x)FT 一个扇区,根目录区后面是数据区。根目录区的位置:引导扇区占1个SeFT表共18ec 19。根目录区中由若干个目录入口(irecoryEntr)组成,最多有 P_ootEtnt个,所以根目录区大小不固定。每个 iretryEntry占32其实看了那么多,我们不妨投机取巧一下,发现了一个现象了jpjp 指令,那么PU 必定是到这里来了的。所以我们只需要在这添上合理的(小于 510bte)的程序来完成引导等其他的任务即可。故我们只是那2、我们想要实现的功在明知道有 C盘的情况

4、下通过软盘来启动。如果可以顺便实现 自己的功能。(比如说显示时钟呀,输入密码呀等等什么的。自己加了。)实现的功能程序在启动扇区中的逻辑图,在第一个扇区中的代码会把从第二扇区开始的代码 copy到相应 22【我【我所认知的 BIOS】自己动手启动计算 HYPERLINK mailto:lightseed HYPERLINK mailto:lightseed ;PS:OS;ByLightSeed-2009-10-CODE int13h512512重定位启动程序实体模块(OS的启动程序。(0:7C00H 处的程序4、代码实successfulSI,OFFSET ERROR00HMOV DH,10 ;

5、显示子函数入口参数显示的横行位置 MOV DL,20 ;显示子函数入口参数显示的纵行位置 PUSH CXMOV CALL POP AX,4C00H int9h0040:170:7c00;retf;pop;pop;csip 的值不能通过普通的mov;/凑足一个扇区,主要满足 int 510-($-REAL)DUP(A);处于以后的空间用字符A来填充 ENTER1YOUWILLRESETENTER2YOUWILLSTARTSYSTEM ENTER3YOUWILLWATCHCLOCKENTER4YOUWILLSETCLOCK.PLEASEENTERTHEANDLIKE080808080808ITME

6、ANS2008/08/0816DUP0) 0ItisaleapItisnotaleapEntermonthError!PleaseenterEntertimeError!Pleaseenter0016DUP0) SHORTRESET_PC ;可以实现重启的功能,jmp到f000:fff0处 SHORT START;通过调用0:7C00来启动OS SHORT STARTSHORT STARTSET_CLOCK ;设置时钟SHORT;CLEARSCREAN PROCAX,0B800H ;这的清屏方式用了直接访问B800H处的内存。 ES:BX,BYTEPTRCLEARSCREAN ;DISPLAY

7、MENU PROC;movINC BX ;显示的行往下移一行 MOV DH,BL bl1dh ADD SI,34 1POP LOOP DISPLAYMENU 024;dl0790bxCL,DS:SI 0SHORTSHOW_STR CS:IPFFFF:0000;RESET_PC PROC【我【我所认知的 BIOS】自己动手启动计算 HYPERLINK mailto:lightseed HYPERLINK mailto:lightseed ;mov;mov;push;push;retfretf;pop;pop;csipmovretffarjump过WORDPTRWORDPTRDWORDPTRRESET_PC ;WATCH_CLOCK PROCWATCH_CLOCK ;SE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论