use*_*522 1 java unsigned char bit
我想用Java翻译这个表达式
char tab[100];
tab[10] = '\xc0';
tab[48] = '\x80';
uint32_t w = 0x67452301;
uint32_t x = 0xefcdab89;
uint32_t y = 0x98badcfe;
uint32_t z = 0x10325476;
a = ((b & c) | (~b & d)) + (*(uint32_t*)(tab+0x00)) + a - 0x28955B88;
a = ((a << 0x07) | (a >> 0x19)) + b;
Run Code Online (Sandbox Code Playgroud)
我试过这个但是......
char[] tab = new char[64];
tab[10] = (char) 0xc0;
tab[48] = (char) 0x80;
Run Code Online (Sandbox Code Playgroud)
但是值不是正确的,是否有另一种方法在char []中分配\ 0x80?我怎样才能在java中解释这种类型的转换((uint32_t))?
非常感谢 !
Type int是4个字节,即java中的32位.因此,来自C的常规32位int可以在java中转换为常规int.
java语言不支持unsigned int,因此使用long包含8个字节来表示来自C的无符号32位变量.
| 归档时间: |
|
| 查看次数: |
13101 次 |
| 最近记录: |