PCI配置空间的基址寄存器的值得到MAC地址

naziim 2008-12-03 10:58:00
现在在DOS下用汇编写个程序,主要的功能是读网卡的MAC地址.目前的工作:已经
通过遍历PCI现在已经找到网卡的配置空间,并得到了基址寄存器的地址,但是不知道怎么样利用这个地址获得MAC地址??

基地址空间分为映射到内存的地址、I/O空间地址和扩展的ROM地址,若取MAC地址的话,一般情况下会遇到前2种。

现在是若果我得到了第一种类型的地址,那怎么处理才能获得MAC的值?取得的内存地址如下:0xFEBFFC00,
得到了第2种类型的地址,在另外的主板上得到的I/O空间地址为:0x00004c01

请问如何分别处理这2个数据,进而得到MAC值?


分数不够了,请不起专家了。谢谢,请各位XDJM帮忙
...全文
395 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
xtdumpling 2008-12-04
  • 打赏
  • 举报
回复
有的在IO Base,Memory Base指到的空间里面,有的是Device Serial Number(PCI Express),还有的在BIOS ROM里面,
像RealTek的LAN,我总结出来好像是IO Base指到的前6个Byte.
各家都不一样的,最好如LS所说,看spec.
nosachow 2008-12-04
  • 打赏
  • 举报
回复
K你网卡的spec.上面说得很清楚的。温馨提示一下多留意其BAR。

21,459

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧