python3 判斷大小端的一種方法

2022-06-23 14:45:11 字數 565 閱讀 8210

這裡用到了array.array('h', [1])來測試大小端,[1]可以轉化為十六進製制的0x0001,佔兩位,00位高位, 01位低位,通過第一位就可以判斷大小端。

如果是小端,則轉化為bytes應該如下:

>>> array.array('h', [1]).tostring()

b'\x01\x00'

>>>

如果是大端,則如下:

>>> array.array('

h', [1]).tostring()b'

\x00\x01

'>>>

完整**如下:

import

array

defis_little_endian():

a = array.array('

h', [1]).tostring()

if a[0] == 1:

return

true

else

:

return false

雜湊的一種用法 判斷相等

在輸入資料量比較大,時間要求比較高的情況下,判斷相等可以考慮雜湊的方法,比如,輸入10w 100w,時間要求4000ms 7000ms,用普通方法肯定要tle的,這時就需要hash。首先要構造hash表,這裡根據輸入量來確定hash table的大小,比如poj3349中輸入量最大12w,所以最壞情...

判斷機器大小端的兩種實現方法

大端模式 big endian 是指資料的低位 就是權值較小的後面那幾位 儲存在記憶體的高位址中,而資料的高位,儲存在記憶體的低位址 中,這樣的儲存模式有點兒類似於把資料當作字串順序處理 位址由小向大增加,而資料從高位往低位放 小端模式 little endian 是指資料的低位儲存在記憶體的低位址...

判斷機器大小端的兩種實現方法

大端模式 big endian 指資料的低位 就是權值較小的後面那幾位 儲存在記憶體的高位址中,而資料的高位,儲存在記憶體的低位址中,這樣的儲存模式有點兒類似於把資料當作字串順序處理 位址由小向大增加,而資料從高位往低位放 小端模式 little endian 指資料的低位儲存在記憶體的低位址中,而...