gpt4 book ai didi

c - MP 浮点结构

转载 作者:行者123 更新时间:2023-11-30 16:55:20 27 4
gpt4 key购买 nike

我正在查看 XV-6 代码,它通过它识别 MP 结构。它首先在 EBDA 的第一个 kb 中搜索。代码是这样的

static struct mp*
mpsearch(void)
{
uchar *bda;
uint p;
struct mp *mp;

bda = (uchar *) P2V(0x400);
if((p = ((bda[0x0F]<<8)| bda[0x0E]) << 4)){
if((mp = mpsearch1(p, 1024)))
return mp;
} else {
p = ((bda[0x14]<<8)|bda[0x13])*1024;
if((mp = mpsearch1(p-1024, 1024)))
return mp;
}
return mpsearch1(0xF0000, 0x10000);
}

我不明白这一行if((p = ((bda[0x0F]<<8)| bda[0x0E]) << 4))是什么意思做。

最佳答案

1.2 BIOS Data Area (BDA)

0x040E (word) EBDA base address >> 4 (usually!)

p = ((bda[0x0F]<<8)| bda[0x0E]) << 4的目的就是提取一个20bit的地址来表示EBDA的第一个千字节。

关于c - MP 浮点结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40331531/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com