进制转换工具

/**
	 * int转换为小端byte[](高位放在高地址中)
	 * 
	 * @param iValue
	 * @return
	 */
	public static byte[] Int2Bytes_LE(int iValue) {
		byte[] rst = new byte[4];
		// 先写int的最后一个字节
		rst[0] = (byte) (iValue & 0xFF);
		// int 倒数第二个字节
		rst[1] = (byte) ((iValue & 0xFF00) >> 8);
		// int 倒数第三个字节
		rst[2] = (byte) ((iValue & 0xFF0000) >> 16);
		// int 第一个字节
		rst[3] = (byte) ((iValue & 0xFF000000) >> 24);
		return rst;
	}

	public static int CRC_XModem(byte[] bytes) {
		int crc = 0x00; // initial value
		int polynomial = 0x1021;
		for (int index = 0; index < bytes.length; index++) {
			byte b = bytes[index];
			for (int i = 0; i < 8; i++) {
				boolean bit = ((b >> (7 - i) & 1) == 1);
				boolean c15 = ((crc >> 15 & 1) == 1);
				crc <<= 1;
				if (c15 ^ bit)
					crc ^= polynomial;
			}
		}
		crc &= 0xffff;
		return crc;
	}