討論串[問題] big endian <-> little endian 轉換
共 3 篇文章
首頁
上一頁
1
下一頁
尾頁

推噓0(0推 0噓 5→)留言5則,0人參與, 最新作者adrianshum (Alien)時間14年前 (2011/07/12 02:55), 編輯資訊
0
0
0
內容預覽:
你的第一句就有問題了.... 12 的二進位是 1100.. 我不知道你從那裡學來是一個一個數字拆開來搞.. (這種數字表示法有特別稱呼, 叫 packed decimal,. 不過你現在的情況應該不是在搞這些...). 假設 short 是 2 byte 長.. 12 big endian 就是.
(還有135個字)

推噓0(0推 0噓 1→)留言1則,0人參與, 最新作者tropical72 (藍影)時間14年前 (2011/07/11 22:10), 編輯資訊
0
0
0
內容預覽:
假設 x = 0x ab cd. ---------------------. x>>8 = 0x 00 ab. x<<8 = 0x cd 00. --------------------. | = 0x cd ab. 似乎還蠻直覺的.. 至於你原本的例子 x=12 有誤,乃因 x>>8 後應為 0

推噓2(2推 0噓 4→)留言6則,0人參與, 最新作者sean72 (.)時間14年前 (2011/07/11 21:40), 編輯資訊
0
0
0
內容預覽:
如果我的阿拉伯數字是 12. 那寫成 big endian就是 0001 0010. 網路上找到的方法. inline void endian_swap(unsigned short& x). {. x = (x>>8) |. (x<<8);. }. 原本 0001 0010. 0000 0000
(還有127個字)
首頁
上一頁
1
下一頁
尾頁