“`”

 

<pre><code>int checkCPU( ) {
​ {
​ union w
​ {
​ int a;
​ char b;
​ } c;
​ c.a = 1;
​ return (c.b ==1);
}
}
</code></pre>

剖析:嵌入式系统开发者应该对Little-endian和Big-endian模式非常了解。采用Little-endian模式的CPU对操作数的存放方式是从低字节到高字节, Big-endian 模式的CPU对操作数的存放方式是从高字节到低字节。在弄清楚这个之前要弄清楚这个问题:字节从右到坐为从高到低! 假设从地址0x4000开始存放: 0x12345678,是也个32位四个字节的数据,最高字节是0x12,最低字节是0x78:在Little-endian模式CPU内存中的存放方式为: (高字节在高地址,低字节在低地址)

内存地址0x4000 0x4001 0x4002 0x4003

存放内容 0x78 0x56 0x34 0x12

大端机则相反。

<pre><code> "“`

Was this helpful?

0 / 0

发表回复 0

Your email address will not be published.