首页 > 编程语言 >编程判断主机字节序并了解大小端序

编程判断主机字节序并了解大小端序

时间:2024-11-13 09:46:02浏览次数:3  
标签:端序 字节 int 编程 value char 地址 num

1.主机字节序

(1)概念:主机字节序又叫做CPU字节序,其不是又操作系统决定的,而是由CPU指令集架构决定的

(2)分为两种:

大端字节序:高序字节储存在低位地址,低序字节储存在高位地址

小端字节序:高序字节储存在高位地址,低序字节储存在低位地址

(3)储存方式:如0x12345678,其中78为低序字节,12为高序字节

内存地址0x00(低地址)0x010x020x03(高地址)
大端字节序12345678
小端字节序78563412

2.判断大小端(C语言)

(1)

#include<stdio.h>
int main()
{
    unsigned short value=0.1122;       //定义一个无标志的短整型
    printf("%p,%x\n",&value,*(unsigned char *)(&value);    
    //将value转化为无标志的字符型,取它的首地址,将其打印出来
    return 0;
}

 (2)

#include <stdio.h>
 int main(int argc, char const *argv[])
{
    int num=0x12345678;    //定义整型num
    char *p=(char *)&num;//这个地方加强转防止爆警告     //将num转化为char类型取地址
 
    if(*p==0x12){                                    //如果首地址为0x12
        printf("这是大端字节序\n");
    }else if(*p==0x78){                              //如果首地址为0x78
        printf("这是小端字节序\n");
    }
    return 0;
}

标签:端序,字节,int,编程,value,char,地址,num
From: https://blog.csdn.net/2401_88221000/article/details/143719479

相关文章

  • 树莓派开发资源知识点概览 树莓派基础介绍 树莓派编程环境搭建
    树莓派开发资源知识点概览章节目录一、树莓派基础介绍二、树莓派硬件资源三、树莓派系统安装与配置四、树莓派编程环境搭建五、树莓派常用开发工具与库六、树莓派网络配置与远程访问七、树莓派应用案例与实践八、树莓派学习资源与社区九、树莓派开发技巧与最佳实践一、树......
  • 【java编程】深入揭秘 Java 中 Person person = new Person(); 背后的奥秘
    当你在Java中写下Personperson=newPerson();时,这行代码看似简单,却蕴藏着深奥的计算机科学原理,甚至能揭示Java内存管理的神秘面纱。每当你创建一个对象,你实际上是在与Java的内核进行一场交互。今天,我们就来一起揭开这行代码的面纱,探索Java的对象创建机制,理解它是如何......
  • AOP(面向切面编程)
    五、AOP(1)AOP简介1.AOP(AspectOrientedProgramming)面向切面编程,一种编程范式,指导开发者如何组织程序结构OOP(ObjectOrientedProgramming)面向对象编程2.作用:在不惊动原始设计的基础上为其进行功能增强3.Spring理念:无入侵式/无侵入式(2)核心概念连接点(JoinPoint)程......
  • Go语言并发编程:轻松驾驭多线程世界(九)
    Go语言并发编程:轻松驾驭多线程世界在这里插入图片描述在现代编程中,并发是让你的程序变得更强大、更高效的关键技能。幸运的是,Go语言提供了一种简单、直观的方式来处理并发任务,使用轻量级的Goroutine和Channel,让我们能够像指挥交通一样简单地处理多个任务。今天,我们将......
  • Go 语言已立足主流,编程语言排行榜24 年 11 月
    Go语言概述Go语言,简称Golang,是由Google的RobertGriesemer、RobPike和KenThompson在2007年设计,并于2009年11月正式宣布推出的静态类型、编译型开源编程语言。Go语言以其提高编程效率、软件构建速度和运行时性能的设计目标,以及简洁的语法、快速的编译速度和出色的并发处理能......
  • ResumeSDK简历解析库编程案例
    目录1、软件概述2、编程案例2.1、官网案例(阿里云)2.2、优化案例3、解析结果1、软件概述ResumeSDK简历解析是北京无奇科技有限公司研发,业界领先的智能简历解析和人岗匹配算法厂商,提供专业的AI招聘技术服务,致力于人力资源行业智能化这一进程。并已经上线阿里云或腾讯云,......
  • 深入 Java 多线程:解锁并发编程的奥秘
    在当今的软件开发世界中,性能和高并发是衡量一个应用程序成败的关键因素。无论是处理高流量的网络请求、执行复杂的数据分析任务,还是管理后台服务中的资源,Java多线程编程都是开发者必备的技能之一。本文将带领你深入Java多线程的世界,解锁并发编程的奥秘。1.并发与并行的区......
  • 《TCP/IP网络编程》学习笔记 | Chapter 11:进程间通信
    《TCP/IP网络编程》学习笔记|Chapter11:进程间通信《TCP/IP网络编程》学习笔记|Chapter11:进程间通信进程间通信的基本概念通过管道实现进程间通信通过管道进行进程间双向通信运用进程间通信习题(1)什么是进程间通信?分别从概念和内存的角度进行说明。(2)进程间通信需要......
  • 【JAVA】Java基础—面向对象编程:构造方法-实现一个Car类,包含多个构造方法,创建不同的汽
    在Java中,构造方法则是用于创建对象的特殊方法。通过构造方法,可以在创建对象时初始化其属性。构造方法的重载允许我们根据不同的需求定义多个构造方法,从而灵活地创建对象。我们可以将汽车的构造方法比作汽车的配置选项。比如,当你购买一辆汽车时,你可以选择不同的配置,如颜色、型......
  • Spring Boot编程训练系统:微服务架构实现
    摘要随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了编程训练系统的开发全过程。通过分析编程训练系统管理的不足,创建了一个计算机管理编程训练系统的方案。文章介绍了编程训练系统的系统分析部分,包括可行性分析等,系统设计部......