【操作系统】LBA怎么转化成CHS寻址
LBA转CHS寻址的方式,c语言的表示方法如下:柱面号 = (LBA / 每磁道扇区数) / 磁头数;
磁头号 = (LBA / 每磁道扇区数) % 磁头数;
扇区号 = (LBA % 每磁道扇区数) + 1;
16位汇编实现的代码:mov ax,
mov bx,缓冲区
mov es,段
xor dx,dx
div word[每磁道扇区数]
inc dx ;dx=扇区
mov cl,dl
xor dx,dx
div word[磁头数]
;此时ax=柱面, dx=磁头
mov ch,al
mov dh,dl
mov dl,驱动器号
mov ax,0x0201 ;读取1个扇区
int 0x13 ;读取
jnc .ReadOK ;读取成功,跳转
页:
[1]