引导加载程序读取驱动器参数
bootloader reading drive parameters
我想获取硬盘的尺寸。我发现我需要将 int 13h 与 ah = 08h 一起使用。我在 wikipedia 上发现 returns 如下:
DH heads 的最后一个逻辑索引 = number_of - 1(因为索引从 0 开始)
CX [7:6] [15:8] 柱面的逻辑最后索引 = number_of - 1(因为索引从 0 开始)
[5:0] 每个磁道扇区的逻辑最后索引 = number_of(因为索引以 1 开头)
问题是我不知道如何只读取位 [5:0] 来获取每个磁道的最后一个扇区索引,与 [7:6][15:8] 相同获取气缸的最后一个索引。如果有人能指出正确的方法或解释如何做到这一点,我将非常感激。
mov ax, cx
and ax, 63
shr cl, 6
xchg cl, ch
这会在 AX 中留下扇区,在 CX 中留下柱面
我想获取硬盘的尺寸。我发现我需要将 int 13h 与 ah = 08h 一起使用。我在 wikipedia 上发现 returns 如下:
DH heads 的最后一个逻辑索引 = number_of - 1(因为索引从 0 开始)
CX [7:6] [15:8] 柱面的逻辑最后索引 = number_of - 1(因为索引从 0 开始)
[5:0] 每个磁道扇区的逻辑最后索引 = number_of(因为索引以 1 开头)
问题是我不知道如何只读取位 [5:0] 来获取每个磁道的最后一个扇区索引,与 [7:6][15:8] 相同获取气缸的最后一个索引。如果有人能指出正确的方法或解释如何做到这一点,我将非常感激。
mov ax, cx
and ax, 63
shr cl, 6
xchg cl, ch
这会在 AX 中留下扇区,在 CX 中留下柱面