如果某个结构占用了字节可寻址内存中的10位,该怎么办?



假设结构在一个字节可寻址内存中的地址/索引1000处开始-系统将如何工作?这个字节/字是可寻址的吗?只是为了命名和访问方便吗?处理器如何确认下一个地址已经开始?

对于字节可寻址的处理器(这是我所知道的所有处理器),数据访问的最小粒度是单个字节。虽然访问通常以更大的词粒度(通常为4或8字节)完成。

如果你想从地址0x1000开始加载10个连续的位,你需要从地址0x1000加载第一个字节,从地址0x1001加载第二个字节。但是,对于第二个字节,您还需要使用一些操作来屏蔽不需要的位。

另一件要注意的事情是,CPU中的寄存器大小通常是32位或64位。10位结构很难使用,并且在实践中不太可能看到。