早教吧作业答案频道 -->其他-->
C/H/S与LBA地址的对应关系?这是从网上看到的一篇文章,如下:C/H/S与LBA地址的对应关系假设用C表示当前柱面号,H表示当前磁头号,Cs表示起始柱面号,Hs表示起始磁头号,Ss表示起始扇区号,PS表示每
题目详情
C/H/S与LBA地址的对应关系?
这是从网上看到的一篇文章,如下:
C/H/S与LBA地址的对应关系
假设用C表示当前柱面号,H表示当前磁头号,Cs表示起始柱面号,Hs表示起始磁头号,Ss表示起始扇区号,PS表示每磁道有多少个扇区,PH表示每柱面有多少个磁道,则有以下对应关系:
LBA=(C-Cs)*PH*PS+(H-Hs)*PS+(S-Ss)
一般情况下,CS=0、HS=0、SS=1;PS=63、PH=255
那么以下四个条件,根据公式计算,如下:
一:C/H/S=0/0/1,代入上述公式中得到LBA=0
二:C/H/S=0/0/63,代入上述公式中得到LBA=62
三:C/H/S=1/0/1,代入上述公式中得到LBA=63
四:C/H/S=220/156/18,代入上述公式中得到LBA=3544145
根据公式,我仔细的运算了四个条件,条件一二四都正确,唯独条件三不正确
根据条件三给出的条件,得出正确的结果应该为:16065
而且,我还发现,其实条件三应该是作者写颠倒了
正确的条件三应该是这样的:
三:C/H/S=0/1/1,代入上述公式中得到LBA=63
echo.
各位帮我算下,看看我的推断是不是正确的!
这是从网上看到的一篇文章,如下:
C/H/S与LBA地址的对应关系
假设用C表示当前柱面号,H表示当前磁头号,Cs表示起始柱面号,Hs表示起始磁头号,Ss表示起始扇区号,PS表示每磁道有多少个扇区,PH表示每柱面有多少个磁道,则有以下对应关系:
LBA=(C-Cs)*PH*PS+(H-Hs)*PS+(S-Ss)
一般情况下,CS=0、HS=0、SS=1;PS=63、PH=255
那么以下四个条件,根据公式计算,如下:
一:C/H/S=0/0/1,代入上述公式中得到LBA=0
二:C/H/S=0/0/63,代入上述公式中得到LBA=62
三:C/H/S=1/0/1,代入上述公式中得到LBA=63
四:C/H/S=220/156/18,代入上述公式中得到LBA=3544145
根据公式,我仔细的运算了四个条件,条件一二四都正确,唯独条件三不正确
根据条件三给出的条件,得出正确的结果应该为:16065
而且,我还发现,其实条件三应该是作者写颠倒了
正确的条件三应该是这样的:
三:C/H/S=0/1/1,代入上述公式中得到LBA=63
echo.
各位帮我算下,看看我的推断是不是正确的!
▼优质解答
答案和解析
数据恢复学习笔记之线性地址(LBA)与C/H/S地址之间的转换
' A8 R# g8 a+ g; X 系统在写入数据时是按照从柱面到柱面的方式,在上一个柱面写满数据后才移动磁头到下一个柱面,并从下一柱面的第一个磁头的第一个三扇区开始写入,从而使磁盘性能优化,所以,在对物理扇区进行线性编址时,也按照这种方式进行.即把第一柱面(0C)第一磁头(0H)的第一扇区(1S)编为逻辑“0”扇区,第一柱面(0C)第一磁头(0H)的第一扇区(2S)编为逻辑“1”扇区,直到第一柱面(0C)第一磁头(0H)的第一扇区(63S)编为逻辑“62”扇区,然后转到第一柱面(0C)第一磁头(1H)的第一扇区(1S),接着上一面编为逻辑“63”扇区,0柱面所有扇区编号完毕后转到1柱面的0磁头1扇区,依次往下进行,直到把所有扇区都编上号.
4 u% G2 l3 Z- \, f% [其次要注意C/H/S中的扇区编号是从1到63,而LBA方式下扇区从0开始编号,所有扇区顺序进行编号.% V! ]/ o8 K/ z2 I$ h e
(1) 从c/h/s到LBA0 N' ? H N1 ~5 M
从编号规则很容易看出C/H/S与LBA地址的对应关系,用C表示当前柱面号,H表示当前磁头号,S表示当前扇区号,Cs表示起始柱面号,Hs表示起始磁头号,Ss表示起始扇区号.PS表示每磁道有多少扇区,PH表示每柱面有多少个磁道,则有:( ^! _4 o3 Y# t$ n. [0 d
LBA=(C-Cs)*PH*PS+(H-HS)*PS+(S-SS)
! D3 j* d/ [- h) f' p0 h' Z X一般情况下,Cs=0,Hs=0,Ss=1,PS=63,PH=255,LBA计算如下:
5 n5 O ~ S, r6 o, I2 n3 [C/H/S=0/0/1时带入公式可得LBA=0 C' h" r, l n
C/H/S=0/0/63时带入公式可得LBA=62
4 x& H7 U- G1 I2 |( y' IC/H/S=0/1/1时带入公式可得LBA=63! i: G! n* r [4 Q+ h$ @% M& `
C/H/S=0/5/1时带入公式可得LBA=315
8 ]+ Y5 w! L0 A: x6 GC/H/S=130/30/1时带入公式可得LBA=2090340
2 \: K6 p$ w" N6 L+ v2 m6 z系统在管理扇区(簇)时就是按照LBA地址进行的,而在最终写入(或读出)硬盘进行ATA调用时需要C/H/S参数., T, Y; d1 S& q
(2)从LBA到C/H/S2 g; b, Q0 N5 s8 n# E0 H! P4 J
先介绍两种运算:DIV和MOD(这里指对整数的操作).DIV称做整数运算,即被除数除以除数所得商取整数部分.如5 DIV 2=2,22 DIV 7=3.MOD就是取余运算,即取商的余数.如:5 DIV 2=1,22 DIV 7=1.9 J$ f) H9 B3 E
哥变量仍按上述假设进行,则有:! ]% q8 g4 r3 K/ C2 w7 [
C=LBA DIV(PH*PS)+Cs
2 w% x$ F" W; Q' j" A- aH=(LBA DIV PS) MOD PH+Hs
9 _, S; h/ K6 W |: {7 lS=LBA MOD PS+Ss z7 }7 {" Q3 p( @
如不用MOD运算,只用div运算,也是可以的,只不过是运算复杂程度不同.
0 K6 K" U8 x- x# AC=LBA DIV(PH*PS)+Cs
: @+ a/ E |4 K2 p+ IH=LBA DVI PS –(C-Cs)*PH+Hs
; [) e# h3 x O9 M$ mS=LBA-(C-Cs)*PH*PS-(H-Hs)*PS+Ss3 W% o2 W; g* X* Y$ h/ z
按照这个规律,有:
& \$ Z) S# m, HLBA=0,则C/H/S=0/0/1
. b- O: N! a6 b/ r5 ~- N/ eLBA=62,则C/H/S=0/0/63! H9 R3 \/ ^5 ~( Z, E6 i' V2 {6 r# c( R
LBA=63,则C/H/S=0/1/1
$ ~; V' X8 a# }LBA=315,则C/H/S=0/5/1
, f* h7 q) x: @- |4 z, i6 j) Y 后续还会有.
' A8 R# g8 a+ g; X 系统在写入数据时是按照从柱面到柱面的方式,在上一个柱面写满数据后才移动磁头到下一个柱面,并从下一柱面的第一个磁头的第一个三扇区开始写入,从而使磁盘性能优化,所以,在对物理扇区进行线性编址时,也按照这种方式进行.即把第一柱面(0C)第一磁头(0H)的第一扇区(1S)编为逻辑“0”扇区,第一柱面(0C)第一磁头(0H)的第一扇区(2S)编为逻辑“1”扇区,直到第一柱面(0C)第一磁头(0H)的第一扇区(63S)编为逻辑“62”扇区,然后转到第一柱面(0C)第一磁头(1H)的第一扇区(1S),接着上一面编为逻辑“63”扇区,0柱面所有扇区编号完毕后转到1柱面的0磁头1扇区,依次往下进行,直到把所有扇区都编上号.
4 u% G2 l3 Z- \, f% [其次要注意C/H/S中的扇区编号是从1到63,而LBA方式下扇区从0开始编号,所有扇区顺序进行编号.% V! ]/ o8 K/ z2 I$ h e
(1) 从c/h/s到LBA0 N' ? H N1 ~5 M
从编号规则很容易看出C/H/S与LBA地址的对应关系,用C表示当前柱面号,H表示当前磁头号,S表示当前扇区号,Cs表示起始柱面号,Hs表示起始磁头号,Ss表示起始扇区号.PS表示每磁道有多少扇区,PH表示每柱面有多少个磁道,则有:( ^! _4 o3 Y# t$ n. [0 d
LBA=(C-Cs)*PH*PS+(H-HS)*PS+(S-SS)
! D3 j* d/ [- h) f' p0 h' Z X一般情况下,Cs=0,Hs=0,Ss=1,PS=63,PH=255,LBA计算如下:
5 n5 O ~ S, r6 o, I2 n3 [C/H/S=0/0/1时带入公式可得LBA=0 C' h" r, l n
C/H/S=0/0/63时带入公式可得LBA=62
4 x& H7 U- G1 I2 |( y' IC/H/S=0/1/1时带入公式可得LBA=63! i: G! n* r [4 Q+ h$ @% M& `
C/H/S=0/5/1时带入公式可得LBA=315
8 ]+ Y5 w! L0 A: x6 GC/H/S=130/30/1时带入公式可得LBA=2090340
2 \: K6 p$ w" N6 L+ v2 m6 z系统在管理扇区(簇)时就是按照LBA地址进行的,而在最终写入(或读出)硬盘进行ATA调用时需要C/H/S参数., T, Y; d1 S& q
(2)从LBA到C/H/S2 g; b, Q0 N5 s8 n# E0 H! P4 J
先介绍两种运算:DIV和MOD(这里指对整数的操作).DIV称做整数运算,即被除数除以除数所得商取整数部分.如5 DIV 2=2,22 DIV 7=3.MOD就是取余运算,即取商的余数.如:5 DIV 2=1,22 DIV 7=1.9 J$ f) H9 B3 E
哥变量仍按上述假设进行,则有:! ]% q8 g4 r3 K/ C2 w7 [
C=LBA DIV(PH*PS)+Cs
2 w% x$ F" W; Q' j" A- aH=(LBA DIV PS) MOD PH+Hs
9 _, S; h/ K6 W |: {7 lS=LBA MOD PS+Ss z7 }7 {" Q3 p( @
如不用MOD运算,只用div运算,也是可以的,只不过是运算复杂程度不同.
0 K6 K" U8 x- x# AC=LBA DIV(PH*PS)+Cs
: @+ a/ E |4 K2 p+ IH=LBA DVI PS –(C-Cs)*PH+Hs
; [) e# h3 x O9 M$ mS=LBA-(C-Cs)*PH*PS-(H-Hs)*PS+Ss3 W% o2 W; g* X* Y$ h/ z
按照这个规律,有:
& \$ Z) S# m, HLBA=0,则C/H/S=0/0/1
. b- O: N! a6 b/ r5 ~- N/ eLBA=62,则C/H/S=0/0/63! H9 R3 \/ ^5 ~( Z, E6 i' V2 {6 r# c( R
LBA=63,则C/H/S=0/1/1
$ ~; V' X8 a# }LBA=315,则C/H/S=0/5/1
, f* h7 q) x: @- |4 z, i6 j) Y 后续还会有.
看了 C/H/S与LBA地址的对应...的网友还看了以下:
在所有的酸和所有的碱中都含有的元素是( ) A o B H C Na D S 2020-05-16 …
巴西世界杯淘汰赛是A组对B组C组对D组E组对F组G组对H组吗 2020-05-17 …
九宫山地质属元古界,经冰川运动形成高崖深壑,多“( )”型谷。 A.△ B.H C.V D.L 2020-05-19 …
5.P⊖、273.15K水凝结为冰,可以判断体系的下列热力学量中何者一定为零?(A)△U(B)△H 2020-05-22 …
c++求梯形面积题目计算上底为a,下底为b,高为h的梯形面积,其中,a、b、h的值(整型数据)由用 2020-05-23 …
外项和等于内项和只适用两联式(例如a:b=c:d)吗,适不适用于(a:b:h=c:d:f)这样三个 2020-06-30 …
如图所示,在Rt△ABC中,∠ACB=90度,CD⊥AB于D,设AC=b,BC=a,AB=c,CD 2020-07-09 …
如图为生态系统中能量流动部分示意图(字母表示能量),下列正确的是()A.图中b=h+c+d+e+f 2020-07-20 …
如图为生态系统中能量流动图解部分示意图(字母表示能量的多少),下列选项中正确的是(A.图中b=h+ 2020-08-03 …
该地质演化过程的正确排序是()A.d-e-g-f-b-a-h-cB.d-g-e-a-c-h-b-fC 2020-11-04 …