【我所认知的BIOS】->反汇编BIOS之Bootblock(10)

本文深入解析BIOS的启动流程,包括内存检测、Bootblock的执行,以及BIOS如何从ROM复制到RAM中。通过反汇编代码,详细介绍了内存测试的方法和beepout子函数的工作原理,为理解BIOS启动机制提供关键信息。
摘要由CSDN通过智能技术生成

【我所认知的BIOS->反汇编BIOSBootblock(10)

-- 基本的内存检测copy BIOS to RAM

By Lightseed

6/28/2010

1BIOS的主流程

BIOS执行到这里,bootblock任务基本完成。内存初始化好了以后,为了能够安全地把BIOS copy到内存中,还需要做一些安全性的检测呀什么的。让我们来继续往下看吧。

1 BIOS主流程

2Copy BIOS之前test基本内存

废话不用多说,让我们来看看反汇编出来的代码吧。

_F000:E3B5 ;Test first 256Kb memory , Send endless beep if DRAM is bad

_F000:E3B5

_F000:E3B5 loc_FE3B5:                              ; CODE XREF: _F000:E3E7j

_F000:E3B5                 mov     es, dx

_F000:E3B7                 assume es:seg000

_F000:E3B7                 cld

_F000:E3B8                 mov     cx, 2000h

_F000:E3BB                 xor     di, di

_F000:E3BD                 repe stosd

_F000:E3C0                 not     eax

_F000:E3C3                 mov     cx, 2000h

_F000:E3C6                 repe stosd

_F000:E3C9                 not     eax

_F000:E3CC                 mov     cx, 2000h

_F000:E3CF                 xor     di, di

_F000:E3D1                 repe scasd

_F000:E3D4                 jnz     Error_Beep_Out

_F000:E3D6                 not     eax

_F000:E3D9                 mov     cx, 2000h

_F000:E3DC                 repe scasd

_F000:E3DF                 jnz     Error_Beep_Out

_F000:E3E1                 add     dh, 10h

_F000:E3E4                 c

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值