各位大佬好,小弟现在有个问题,就是比如我开辟了一块连续的内存,占了4个字节,四个字节的物理地址由地位到高位分别是1,2,3,4,那么我想问:cpu读取这块连续内存的时候,一定是从1(低位地址)开始读吗?或者说也可能从4高位地址开始读?
说的通俗一点就是,cpu读取内存的时候,是从低位地址开始读,还是从高位开始读,或者说都有可能?
读取的时候是从低字节读取,而之前采纳的答案是错误的,他说大端法和小端法,只是应用与存储数据,而不是读取数据
对于字节,怎么读都可以。所以内存叫做 RAM (random access memory),所谓random就是随机,也就是不但可以 1234 4321 也可以 1324 1423 1342...
你像磁带、管道、通讯口,就只能顺序读取了。
不过你后来偷换了概念,或者问了另一个问题,字节变成了位。那就不一样了。
字节是存储器,也是cpu读取的最小单位,位就不是了,一个字节是整体读取的,而不是从高到低或者反过来。串口才是按照位读取的。
还有一个概念,字节顺序,分为 little endian和big endian,对于一个整数,4个字节,那么究竟哪个字节在前哪个字节在后呢,这个不同的计算机就不同了,x86计算机是little endian,低字节在前,高字节在后(注意是字节,不是位)