바이트의 부정적인 결과

허식

SHA1의 값이있는 byte [] shaBytes 아래에이 줄이 있습니다. 처음 4 개는 while 루프에서 사용되는 숫자에 더해집니다. objC 코드를 java로 이식하려고 시도하고 있는데 아래 줄은 여러 번 반복 한 후 -2063597568과 같은 음수 값이됩니다.

long tVar = (shaBytes[0]  << 24) + (shaBytes[1] << 16) + (shaBytes[2] << 8) + (shaBytes[3] << 3);

따라서 기본적으로 while 루프는

tVar > 0xFFFFFFFFL >> 11

objC에서 shaBytes는 CC_SHA1에서 매개 변수로 사용되는 부호없는 문자입니다. objC에서 코드는 tVar가 음수가되기 때문에 내 포트가 3 번만 반복되는 동안 700 번 이상의 반복을 반복합니다.

나이젤 터프 넬

Java에는 부호없는 바이트가 없습니다. 모든 Java 정수 유형이 서명됩니다. 이것은 음수 바이트의 왼쪽 시프트가 음수임을 의미합니다.

byte b = -30;
long x = b << 24;
System.out.printf("x = %d\n", x);
// prints -503316480

반면 bytelong모든 것으로 변환 하면 괜찮습니다.

byte b = -30;
long x = (b & 0xffL) << 24;
System.out.printf("x = %d\n", x);
// prints 3791650816

byte"unsigned"값으로 변환하려면 (Java에는 서명되지 않은 항목이 없음을 기억하십시오) 다음을 long사용하십시오.

long tVar = ((shaBytes[0] & 0xffL) << 24) + ((shaBytes[1] & 0xffL) << 16) + etc

이는 Java long가 64 비트이고 24 left shift부호 / 부호없는 문제없이 8 비트 값을 처리 할 수 있기 때문에 작동 합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

자바 : 왜 큰 양수 원인 부정적인 결과를 곱합니까?

분류에서Dev

C #의 데이터 바인딩 및 정적 텍스트 연결

분류에서Dev

MySQL에서 빼기의 부정적인 결과를 원하지 않습니다.

분류에서Dev

MySQLi의 바인딩 결과

분류에서Dev

선택적 부분과 부정적인 예견이있는 정규식

분류에서Dev

코드 단순화. 긍정적 인 조건과 부정적인 조건 사이

분류에서Dev

입력 태그 내의 날짜 차이에 대한 결과 인 자바 스크립트 결과 표시

분류에서Dev

정적 속성의 하위 속성과 이벤트 처리기 바인딩

분류에서Dev

자바 계승 반환에게 부정적인 결과를 찾을 수 재귀 방법

분류에서Dev

javafx : TextField의 + FORMAT 결과로 레이블 텍스트 속성 바인딩

분류에서Dev

반환 일반적인 결과 <푸 <바 >>

분류에서Dev

이름으로 부르는 것과 정상적인 순서로

분류에서Dev

&& (논리적 and) 연산의 결과를 부정하는 것이 안전합니까?

분류에서Dev

자바 스크립트 내부의 쿼리 결과

분류에서Dev

값이 정적 문자열과 검색 결과 인 MYSQL에서 삭제

분류에서Dev

Bixby의 일시적인 결과

분류에서Dev

libcurl과의 지속적인 연결

분류에서Dev

게시물 사이의 시간을 결정하는 효과적인 방법?

분류에서Dev

MySql 쿼리의 부정확 한 결과

분류에서Dev

정적 분석 이상한 결과

분류에서Dev

안정적인 Minitel과 Raspberry Pi 직렬 포트 연결 설정 문제

분류에서Dev

SPARQL은 정적 텍스트로 두 개의 변수를 레이블과 바인딩 할 수 있습니까?

분류에서Dev

R : 정규식의 인덱싱 결과

분류에서Dev

구별이 이미 적용된 결과 세트의 열 수

분류에서Dev

Cplex에서 부정적이거나 실현 불가능한 결과

분류에서Dev

조건부 녹아웃과 데이터 바인딩 결합

분류에서Dev

의사 결정 트리에서 R 데이터 마이닝의 Null 결과

분류에서Dev

Dapper는 부정적인 결과를 반환합니다.

분류에서Dev

부정과 부정을 고려하여 문자열에서 긍정적이고 부정적인 단어를 센다.

Related 관련 기사

  1. 1

    자바 : 왜 큰 양수 원인 부정적인 결과를 곱합니까?

  2. 2

    C #의 데이터 바인딩 및 정적 텍스트 연결

  3. 3

    MySQL에서 빼기의 부정적인 결과를 원하지 않습니다.

  4. 4

    MySQLi의 바인딩 결과

  5. 5

    선택적 부분과 부정적인 예견이있는 정규식

  6. 6

    코드 단순화. 긍정적 인 조건과 부정적인 조건 사이

  7. 7

    입력 태그 내의 날짜 차이에 대한 결과 인 자바 스크립트 결과 표시

  8. 8

    정적 속성의 하위 속성과 이벤트 처리기 바인딩

  9. 9

    자바 계승 반환에게 부정적인 결과를 찾을 수 재귀 방법

  10. 10

    javafx : TextField의 + FORMAT 결과로 레이블 텍스트 속성 바인딩

  11. 11

    반환 일반적인 결과 <푸 <바 >>

  12. 12

    이름으로 부르는 것과 정상적인 순서로

  13. 13

    && (논리적 and) 연산의 결과를 부정하는 것이 안전합니까?

  14. 14

    자바 스크립트 내부의 쿼리 결과

  15. 15

    값이 정적 문자열과 검색 결과 인 MYSQL에서 삭제

  16. 16

    Bixby의 일시적인 결과

  17. 17

    libcurl과의 지속적인 연결

  18. 18

    게시물 사이의 시간을 결정하는 효과적인 방법?

  19. 19

    MySql 쿼리의 부정확 한 결과

  20. 20

    정적 분석 이상한 결과

  21. 21

    안정적인 Minitel과 Raspberry Pi 직렬 포트 연결 설정 문제

  22. 22

    SPARQL은 정적 텍스트로 두 개의 변수를 레이블과 바인딩 할 수 있습니까?

  23. 23

    R : 정규식의 인덱싱 결과

  24. 24

    구별이 이미 적용된 결과 세트의 열 수

  25. 25

    Cplex에서 부정적이거나 실현 불가능한 결과

  26. 26

    조건부 녹아웃과 데이터 바인딩 결합

  27. 27

    의사 결정 트리에서 R 데이터 마이닝의 Null 결과

  28. 28

    Dapper는 부정적인 결과를 반환합니다.

  29. 29

    부정과 부정을 고려하여 문자열에서 긍정적이고 부정적인 단어를 센다.

뜨겁다태그

보관