FNV-1a
- 데이터를 고유한 숫자 값으로 빠르게 변환하는 비암호화 해시 함수(Non-cryptographic Hash Function)
- 간단코드 , 빠른연산
연산 개념
hash = FNV_offset_basis (2166136261)
for each byte_of_data in data:
hash = hash XOR byte_of_data
hash = hash * FNV_prime (16777619)
hash = hash AND 0xFFFFFFFF // 32비트 크기 유지 (오버플로우 제한)
return hash
- 계산에 오프셋 상수( 초기 해시값 설정용)와 FNV_Prime 상수값이 있고 아래 같은 값으로 사전 정의되어있다.
| 계산결과 | FNV_offset_basis (초기 해시 값) | FNV_prime (곱할 소수) |
| 32bit | 2166136261 (0x811C9DC5) | 16777619 (0x01000193) |
| 64bit | 14695981039346656037 (0xCBF29CE484222325) | 1099511628211 (0x00000100000001B3) |
C++ 코드
첫 등록 : 2026.08.16
최종 수정 :
단축 주소 : https://igotit.tistory.com/6776
'지속가능티끌 > Data.Math.Phys' 카테고리의 다른 글
| PPG . 광혈류 측정 . 혈류지수 PI( Perfusion Index ) (0) | 2026.09.30 |
|---|---|
| BIDS . Brain Imaging Data Structure . 뇌 이미징 글로벌 표준 (0) | 2026.09.27 |
| FlatBuffers . 고효율 직렬화 라이브러리 (0) | 2026.07.28 |
| PlotJuggler . 시계열 챠팅 툴 (0) | 2026.07.24 |
| COBS . 바이트 시리즈 프레이밍 . 언어별 라이브러리 추천 (0) | 2026.06.16 |
댓글