Konversi 4 bytes ke 32 bit unsigned integer (java)


misal kita dihadapkan case bagaimana untuk menkonversi 4 bytes kedalam 32 bit integer, misal:
data = {0x01, 0x03, (byte) 0xFF , 0x01}; kita ingin mendapatkan nilai 17039105 atau yang jika direpresentasikan dalam bit adalah 0x0103FF01 = 00000001 00000011 11111111 00000001, didalam java kita dapat menggunakan pergeseran bit (<<) sebagai salah satu alternatif untuk memecahkan masalah tersebut, berikut script sederhananya:

public class getUInt32 {
public static void main (String[] args) {
byte [] keyB = {0x01, 0x03, (byte) 0xFF , 0x01};
long key;
key = )((keyB[0] << 24) & 0xFFFFFFFF) | ((keyB[1] << 16) & 0xFFFFFF ) | ((keyB[2] << 8) & 0xFFFF ) | (keyB[3] & 0xFF)) & 0x00000000FFFFFFFFL ;
System.out.print(key);
}
}
Advertisements

Author: ridhobustami

orang ngak jelas

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s