• 大端和小端


    字节序大端小端是针对超过一个byte的数据类型在内存中的存储布局来讲的。
    对于小端处理器,如果要寻址一个word型数据,处理器首先由地址总线发出地址,之后对于由32位数据总线(32位处理器)返回的数据,小端处理器认为0-7位数据线是低端数据,而24-31位数据线为高端数据。
    相反,对于大端处理器,寻址一个word型数据,处理器对于数据线返回的数据,认为24-31位数据线为低端数据,而0-7位数据线为高端数据。
    首先说明内存本身是没有字节序一说的,但是对于内存中同样一段数据,小端处理器读出来的数据意义和大端处理器读出来的数据意义是不同的,所以其存储数据的顺序是由处理器字节序来决定的。
    0x1234
    大端模式:低地址存放高字节。低-->高 0x12,0x34
    小端模式:低地址存放低字节。低-->高 0x34,0x12
    通常我们说的主机序(Host Order)就是遵循Little-Endian规则。所以
    当两台主机之间要通过TCP/IP协议进行通信的时候就需要调用相应的函数进行主机
    序(Little-Endian)和网络序(Big-Endian)的转换。

    //如何判断主机是大端还是小端
    #include<stdio.h>
    int main() {
        unsigned int a = 0x1234;
        unsigned char b = *(char*)(&a);
        if(b == 0x12) printf("大端
    ");
        else printf("小端
    ");
    }
  • 相关阅读:
    佛學概要十四講表
    冰川时代4中英台词全集
    Linux Mysql 每天定时备份
    zabbix拓扑图
    搭建zabbix 3.4
    ★日常工作保养电脑及设备★
    宽带突然断网了,需要做如下应急措施
    预防这几点,可以让你的电脑长久耐用!!!!
    搭建简易的 DISCUZ论坛
    format 的常见用法
  • 原文地址:https://www.cnblogs.com/afreeman/p/8524486.html
Copyright © 2020-2023  润新知