带你读《全景揭秘字符编码》之十:常见字符编码4:UNICODE(7)

简介: 带你读《全景揭秘字符编码》之十:常见字符编码4:UNICODE(7)

带你读《全景揭秘字符编码》之十:常见字符编码4:UNICODE(6) https://developer.aliyun.com/article/1240882?groupCode=tech_library


10.4.3字节序


字节序顾名思义是指字节的顺序,对于单字节编码来说,一个字符对应一个字节,也就不存在字节序问题。但是对于UTF-16这种定长多字节编码,就有字节顺序问题了。


字节序其实跟操作系统和底层硬件有关,不仅只是UTF-16这种多字节编码存在字节序,只要是多字节类型的数据都存在字节顺序问题,比如short、int、long。


为了方便说明,我们这里举个例子:比如存一个整数值“305419896”对应16进制是0x12345678,有人习惯从左到右按顺序去存,也有人说高位当然要放到高位地址而低位放到低位地址,要从右往左存。


于是就有了下面两种存取方式:


其实这两种方式没有孰优孰劣,只是我们认知习惯有所不同 最终的设计不同,说来这都是阿拉伯人的锅啊,为什么数字高位非要在左边,这也引起了著名的大小端之争。


因此字节序也就有了大端和小端的概念,也形成了各自的阵营,比如Windows、FreeBSD、Linux 是小端序,Mac是大端序。其实大小端序并没有技术上的好坏之分。


小端序(Little-Endian):就是低位字节(即小端字节、尾端字节)存放在内存的低地址,而高位字节(即大端字节、头端字节)存放在内存的高地址。


大端序(Big-Endian ):就是高位字节(即大端字节、头端字节)存放在内存的低地址,低位字节(即小端字节、尾端字节)存放在内存的高地址。


▲ 图片引用自《面试必考,史上最通俗大小端字节序详解


对大小端字节序问题感兴趣的可以详读:脑残式网络编程入门(九):面试必考,史上最通俗大小端字节序详解》一文。



带你读《全景揭秘字符编码》之十:常见字符编码4:UNICODE(8) https://developer.aliyun.com/article/1240879?groupCode=tech_library

相关文章
|
8月前
|
人工智能 自动驾驶 计算机视觉
CVPR 2024 目标检测!开放词汇
YOLO-World是CVPR 2024提出的一种实时开放词汇目标检测模型,首次将YOLO的高速特性与开放词汇识别能力结合。它无需微调即可通过文本提示检测任意物体,支持零样本推理,兼具高精度与灵活性,适用于机器人、自动驾驶等实时感知场景,标志着目标检测迈向通用化新阶段。
627 0
CVPR 2024 目标检测!开放词汇
|
小程序 Java 关系型数据库
weixin025移动学习平台的设计与实现+ssm(文档+源码)_kaic
基于微信小程序的移动学习平台旨在解决传统APP占用过多手机存储空间的问题,提升用户体验。该平台使用微信开发者工具开发前端,SSM框架和Java语言开发后台,并采用MySQL数据库保存数据。系统支持管理员对教师、课程、学生信息进行管理,教师可查看及审核作业,管理课程资源;学生能提交作业、查看审核结果并收藏或评论课程资源。此平台使用户无需安装独立APP即可访问学习内容,极大提升了便捷性和管理效率。 关键词:基于微信小程序的移动学习平台;微信开发者工具;SSM框架
|
存储 SQL 运维
Hologres OLAP场景核心能力介绍-2024实时数仓Hologres线上公开课02
本次分享由Hologres产品经理赵红梅(梅酱)介绍Hologres在OLAP场景中的核心能力。内容涵盖OLAP场景的痛点、Hologres的核心优势及其解决方法,包括实时数仓分析、湖仓一体加速、丰富的索引和查询性能优化等。此外,还介绍了Hologres在兼容PG生态、支持多种BI工具以及高级企业级功能如计算组隔离和serverless computing等方面的优势。最后通过小红书和乐元素两个典型客户案例,展示了Hologres在实际应用中的显著效益,如运维成本降低、查询性能提升及成本节省等。
579 7
|
Shell
自定义 jupyter 魔法命令
自定义 jupyter 魔法命令
439 1
|
前端开发 数据库
芋道框架审批流如何实现(Cloud+Vue3)
芋道框架审批流如何实现(Cloud+Vue3)
2493 4
|
人工智能 决策智能
【AI Agent系列】【阿里AgentScope框架】3. 深入源码:Pipeline模块如何组织多智能体间的数据流?- 顺序结构与条件分支
【AI Agent系列】【阿里AgentScope框架】3. 深入源码:Pipeline模块如何组织多智能体间的数据流?- 顺序结构与条件分支
668 2
|
开发工具 git 开发者
掌握版本控制的艺术:Git 与 GitHub 的高效使用指南
在软件开发中,版本控制对于代码管理和团队协作至关重要。本文详细介绍了 Git 的核心概念与命令,包括初始化、创建仓库、文件跟踪、分支管理和远程仓库操作。同时,探讨了如何利用 GitHub 进行项目组织、代码审查及自动化工作流。通过遵循最佳实践,如频繁提交、清晰的信息记录和合理使用分支,开发者可以提升工作效率和团队协作能力,确保项目的持续成功。
|
机器学习/深度学习 存储 监控
基于YOLOv8深度学习的无人机视角地面物体检测系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标检测(1)
基于YOLOv8深度学习的无人机视角地面物体检测系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标检测
|
C语言 Python
【Python 基础】如何进行字符串插值?
【5月更文挑战第6天】【Python 基础】如何进行字符串插值?
|
资源调度 JavaScript Shell
6.6k star!推荐一款轻松创建隔离环境的命令行及容器工具!
6.6k star!推荐一款轻松创建隔离环境的命令行及容器工具!
611 0