什么是计算机中的大端小端

 ⼤端(存储)模式,是指数据的低位保存在内存的⾼地址中,⽽数据的⾼位,保存在内存的低地址中;⼩端(存储)模式,指数据的低位保存在内存的低地址中,⽽数据的⾼位保存在内存的⾼地址中。

为什么有⼤端和⼩端:

         为什么会有⼤⼩端模式之分呢?这是因为在计算机系统中,我们是以字节为单位的,每个地址单元都对应着⼀个字节,⼀个8bit。但是在C语⾔中除了8bitchar之外,还有16bitshort型, 32bitlong型(要看具体的编译器),另外,对于位数⼤于8位的处理器,例如16位或者32位的处理器,由于寄存器宽度⼤于⼀个字节,那么必然存在着⼀个如果将多个字节安排的题。因此就导致了⼤端存储模式和⼩端存储模式。例如⼀个16bitshortx,在内存中的地址为0x0010x的值为0x1122,那么0x11为⾼字节, 0x22为低字节。对于⼤端模式,就将0x11放在低地址中,即0x0010中, 0x22放在⾼地址中,即0x0011 中。⼩端模式,刚好相反。我们常⽤的 X86 结构是⼩端模式,⽽ KEIL C51 则为⼤端模式。很 多的 ARM DSP 都为⼩端模式。有些 ARM 处理器还可以由硬件来选择是⼤端模式还是⼩端 模式。

猜你喜欢

转载自blog.csdn.net/csdn_baotai/article/details/80192382