2011-07-19 48 views
0

假設我們暫時忽略目標和源硬件。那麼,什麼是更好的endian風格 - 大或小?要大端還是小端?

我只是想在這一個上達成共識/公約。到目前爲止我收到的最好的指導是「它取決於」,所以總是指定。沒關係。我會去做。

但是,在這種情況下沒有必要是單向的或其他的。沒有遺產,所以我想,「目前的新興硬件最乾淨的選擇是什麼。」

+11

格列佛遊記是必讀材料。 –

+0

大端/小端,因爲術語來自斯威夫特,斯威夫特在討論雞蛋的哪一端打開時給出了一個毫無意義的論據。 – djna

+0

您是否確實編碼與CPU非常接近,這很重要? –

回答

1

其實答案是這取決於

如果你只是想要一個選擇則由於大端高位字節是第一位的,你可以隨時檢查,從第一個字節積極或消極的。

+0

+1好點。 TY。 – sgtz

+4

你檢查正面或負面像這個'x <0',*無論字節順序如何。字節順序與正面或負面無關。這是關於表示,而不是價值觀。因爲這個,請不要混淆你的代碼。 –

2

不要選擇。只要使用你的編譯器/平臺就可以使用。這沒有任何麻煩和公正的作品。

如果你正在做原始網絡的東西,你可能想把東西轉換成網絡字節序,或者從網絡字節序轉換成大的字節序。但是不要因爲這個而弄亂你的整個代碼。當你到達網絡寫作部分時,只需進行轉換。

+0

這是一種n語言的情況。我希望所有語言都能很好地一起玩。所以我需要選擇不幸的。 – sgtz

+0

@sgtz:它是相同的平臺嗎?這些語言是否使用不同的排序? –

+0

語言不是真正的問題,是系統 - 如果它是同質的,不用擔心,如果是異構的,那麼你需要一個通用的通信格式 - 通常這是大端。但是在處理數據之前習慣總是轉換爲本地格式(反之亦然) – Nim

0

沒關係。只需選擇一個。

這是一個無休止的爭論話題。一個並不比另一個具有特別的優勢。

2

使用任何主要在您的硬件。或者使用「網絡字節順序」(大端),因爲互聯網。或隨機挑選一個。這並不重要。

+0

+1我想知道「網絡字節順序」是什麼。 TY。至少對我來說,另一個投票對我來說是一個大端。 – sgtz