RT,小弟做DM9000的驱动,DM9000有2个物理地址,一个是写I/O寄存器指令的,还有一个是写DATA的,
在wince6.0下分配虚拟内存的过程中,DATA物理地址一定要分配32位的才能正确读出数据,分配8位
空间的话却不行。但是一般往里面写的或者读出来的数据只有8位啊,为什么一定要分配32位的空间呢?
非常疑惑,不知道他的内存具体是如何存储的,请各位大虾指点一二,不甚感激。
整个wince系统都是32位地址啊。
数据可以有很多种类型,你读写8位的数据,就是向一个32位的地址读写一个BYTE的值。
引用: 引用 1 楼 rushonin 的回复:
整个wince系统都是32位地址啊。
数据可以有很多种类型,你读写8位的数据,就是向一个32位的地址读写一个BYTE的值。
恩,谢谢,但是我给标明寄存器地址的那个物理地址分配内存的时候,却只能用8位的,一旦用32位,就写不进任何东西,这又不知道为什么