2011-09-02 47 views
1

在GIF規範,在這裏:GIF規範的無符號定義

http://www.w3.org/Graphics/GIF/spec-gif89a.txt

它是指「字節」,我自然認爲是無符號的字符。如果是這種情況,它在說'未簽名'時是指什麼?未簽名...什麼?準確的定義非常重要,因爲它讓我知道要讀取多少字節。

謝謝你的時間。

+3

從圖片中可以看出它是16位值嗎? –

+0

@Kerrek:只有當你知道一個由短劃線字符組成的盒子意味着一個字節... – Amnon

+0

這不是我。因此澄清。 (我只是認爲這是概念性的而不是準確的)。 – SSight3

回答

3

規範中的「無符號」是指16位整數,最低有效字節在前。

這也許應該指出的是,在C,unsigned本身是unsigned int的代名詞,並在GIF規範寫的時候,它可能是合理的假設,int在大多數機器是16位的,所以它不是完全不合理的是他們沒有定義他們使用的術語。

+1

謝謝。我會認爲這是一個未簽名的短(原諒我的無知)? – SSight3

+0

我認爲unsigned short的含義是特定於實現的,但通常是16位。但請注意可移植性的字節順序(字節順序)問題。 – Amnon

2

無論文檔中何處提及「無符號」一詞,相鄰圖表都顯示了它所佔用的字節數。看起來它總是2個字節。

還要注意的是,附錄中提到:

字節順序 - 除非另有說明,多字節數字字段 與不重要的字節排序。

+0

謝謝你的貢獻。 – SSight3