首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >架构上的字节顺序转换成本

架构上的字节顺序转换成本
EN

Stack Overflow用户
提问于 2014-02-01 05:08:40
回答 1查看 380关注 0票数 0

现在有两种CPU架构,大端和小端。因此,数据需要在两种表示形式之间进行转换。每个CPU体系结构,特别是指令集,都是不同的,并且每个体系结构都允许不同的实现来改变字节顺序。一些CPU包含特定的指令,而其他CPU则不包含。

我的问题是,对于今天的体系结构,为了最小化数据转换延迟,从而最大化BE到LE通信中的吞吐量,在LE体系结构或其他方式上进行数据存储和转换是否更有效率。

第二个问题,转换成本是否可以量化,有没有相关数据?

在Java中,这种从字节数组转换的开销有多大?是否有关于特定架构上的特定JVM的数据?在Dalvik上有什么不同吗?

与此相关的架构有x64、ARM、MIPS和JVM/Dalvik。我错过了什么吗?

EN

回答 1

Stack Overflow用户

发布于 2014-02-01 09:47:03

存储数据是计算机做的最基本的事情之一,为什么只有几个架构相关?所有体系结构都必须遵循特定的字节顺序(例如x86/x86_64)或双字节序(ARM、MIPS...)如果它们字长是比八位字节更大的

但是,即使体系结构是双字节序的,也必须在启动时设置字节序,并且CPU仅在该字节序模式下工作,直到更改模式并重新启动所有内容。CPU不能处理字节顺序颠倒的数据。因此,数据应该始终使用原生字节顺序,除非您只复制值,然后不进行任何处理就将其发回,或者执行一些与字节顺序无关的非常简单的操作,如按位操作

网络活动比CPU慢得多,甚至比不上RAM的速度。您几乎看不到速度上的任何差异,但很可能会受到内存限制

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21490075

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档