C_and_CPP 版 (精华区)
发信人: iamxiaohan (潇寒·System Programmer ^_^), 信区: C_and_CPP
标 题: Re: biosdisk()读写硬盘时参数怎么赋值?
发信站: 哈工大紫丁香 (2003年12月10日21:24:19 星期三), 站内信件
.ReadFloppy
mov ah , 2 ; 设置读磁盘功能号
mov dl , 0x1 ; 设置欲读驱动器号
mov ch , 0 ; 磁头号
mov cl , 2 ; 起始扇区号,从第二个扇区开始读,
; 第一个扇区是引导扇区,第二个才是内核所在
mov al , 17 ; 需读入扇区的数量,此处读了17个扇区,
; 是怕内核较大,读少了读不完
int 13h ; 调用 BIOS 13 号中断开始读扇区,
; 此中断会将数据读到 es:bx 处
jc .ReadFloppy ; 如果出错则重试(ah中是错误号,为0则没错)
mov dl , [bootdrive] ; 停止驱动器
mov edx , 0x3f2
mov al , 0x0c
out dx , al
【 在 oceanlly (风●云) 的大作中提到: 】
: 主要是怎么确定参数中的磁头、磁道,扇区和驱动器,谢谢
--
Welcome to Hit Pure C/C++ Fourm (HPC)(纯C论坛)
http://purec.binghua.com
http://purecpp.binghua.com
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.239.18]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.344毫秒