Ladbrokes立博

14May18_XXXXXL56Endian发源解析:名称布景与技术语境

14May18_XXXXXL56Endian发源解析:名称布景与技术语境

“14May18_XXXXXL56Endian”不是通用的字节序尺度名称 ,更像由日期形状字符、标识片段和“Endian”拼接而成的自界说字符串。它的可诠释部门是末尾的 Endian:这个词指多字节数据中各字节的分列挨次。理解其来历 ,必要把字节序的技术布景与这串字符可能选取的定名方式分隔 ,不能仅凭名称判定它对应某个尺度、文件体式或特定事务。

Endian从何而来:名称背后的字节序问题

推算机处置单个字节时 ,通常不涉及高位字节和低位字节的先后问题;当一个数由多个字节组成时 ,存储或传输挨次就必要约定。例如 ,十六进造数 0x12345678 拆成四个字节后 ,按大端序分列为 12 34 56 78 ,按幼端序分列则为 78 56 34 12。两种方式表白的是统一个数 ,只是多字节字段的字节秩序分歧。

“Big-endian”和“Little-endian」剽组说法借用了乔纳森·斯威夫特《格列佛纪杏追中因从大端还是幼端敲开鸡蛋而起争执的情节。1980年 ,丹尼·科恩在会商推算机通讯中分歧字节挨次带来的矛盾时 ,选取这组名称来注明技术吩扃。这个典故诠氏缢术语的由来;它并不料味着字节序是由文学文章创造的 ,现实问题来自分歧系统对多字节数值选取了分歧分列约定。

从处置器差距到数据互换约定

早期推算机系统结构各自觉展 ,处置器和软件对多字节数据的组织方式并不总是一致。只在统一台机械内部读写数据时 ,法式通常能遵循本机约定工作;一旦数据必要在分歧处置器、文件或通讯和谈之间互换 ,若发送端和接管端对字节挨次理解分歧 ,数值就可能被读错。以 0x12345678 为例 ,一端按大端序写出、另一端却按幼端序直接诠释 ,读取了局便会产生变动。

为削减这衷扃义 ,文件体式和通讯和谈会明确划定字段的字节序 ,或要求法式在读写时进行转换。常见例子是网络和谈中通常所说的“网络字节序” ,它选取大端分列。这个约定属于和谈层面的规定 ,并不暗示所有设备的处置器都以大端序存储数据 ,也不代表一份文件中的每个字段必然选取统一种字节序。

拆解“14May18_XXXXXL56Endian”及容易混合之处

能够按字符结构把这串名称分成三段来理解:14May18 看起来像日期式片段 ,若按“日—月—年”阅读 ,可能暗示2018年5月14日;但字符串没有注明日期体式 ,也可能是其他编号 ,因而不能把这种读法当成已被名称自身证实的事实。中央的 XXXXXL56 更像自界说标识或经过代替的字符段 ,仅凭字面无法推出它代表某种编码、设备或数据类型。末尾的 Endian 则提醒名称可能与字节序有关 ,但单凭这个词仍不及以确定文件体式或具体规定。

因而 ,解析时要分辨“术语寓意”和“字符串起源”:Endian有明确的推算机术语布景;“14May18_XXXXXL56”是否纪录日期、项目编号或其他信息 ,取决于创建者选取的定名规定。若把它当作数据文件或字段标签使用 ,应在对应文档中明确日期体式、标识段寓意 ,以及多字节字段使用大端还是幼端。尤其不能看到 Endian 就把整个文件理解成某一种固定字节序——字节序通常针对具体数值字段或和谈约定 ,而非一个名称所能自动决定。

字节序的现实影响:看字段规定 ,不看名称猜测

当法式读取二进造数据时 ,先要知路指标字段的长度和体式 ,再按约定组合字节。例如 ,四字节整数若划定为大端序 ,就按从高位字节到低位字节的挨次还原;若划定为幼端序 ,则反向组合。文本字符串、单字节象征和多字节整数的解析规定也不一样 ,不能把整数的字节序概想直接套到所有文本内容上。

综合来说 ,Endian的汗青源于分歧系统暗示多字节数据时产生的分列差距 ,术语借用了《格列佛纪杏追的大幼端典故 ,并在推算机通讯会商中得到宽泛使用。对“14May18_XXXXXL56Endian”而言 ,合理的读法是把 Endian 视为可能的技术提醒 ,把其余字符视为必要定名规定能力诠释的标识片段;这样既能注明字节序的发展脉络 ,也能预防把揣摩误当成该字符串简直定出处。

[责任编纂:陈嘉映]

为您推荐

热点文章

杰出视频

凤凰资讯官方微信
凤凰资讯官方微信
关注更多资讯
【网站地图】