Miklix

Kikokotoo cha Msimbo wa Hash XXH-32

Iliyochapishwa: 18 Februari 2025, 19:49:03 UTC

Kikokotoo cha kukokotoa msimbo wa Hash kinachotumia kitendakazi cha XXHash 32 bit (XXH-32) ili kukokotoa msimbo wa heshi kulingana na maandishi au upakiaji wa faili.

Ukurasa huu ulitafsiriwa kwa mashine kutoka kwa Kiingereza ili kuifanya iweze kupatikana kwa watu wengi iwezekanavyo. Kwa bahati mbaya, utafsiri wa mashine bado sio teknolojia iliyokamilishwa, kwa hivyo makosa yanaweza kutokea. Ukipenda, unaweza kutazama toleo asili la Kiingereza hapa:

XXH-32 Hash Code Calculator

XXH, pia inajulikana kama XXHash, ni algoriti ya haraka, isiyo ya kriptografia iliyoundwa kwa ajili ya utendaji na ufanisi wa hali ya juu, hasa katika hali ambapo kasi ni muhimu, kama vile katika mgandamizo wa data, hesabu za hundi, na kuorodhesha hifadhidata. Kibadala kilichowasilishwa kwenye ukurasa huu kinatoa msimbo wa heshi wa biti 32 (baiti 4), kwa kawaida huonyeshwa kama nambari ya heksadesimali yenye tarakimu 8.

Ufichuzi kamili: Sikuandika utekelezaji mahususi wa chaguo za kukokotoa za heshi zinazotumiwa kwenye ukurasa huu. Ni kazi ya kawaida iliyojumuishwa na lugha ya programu ya PHP. Nilitengeneza kiolesura cha wavuti ili kuifanya ipatikane hadharani hapa kwa urahisi.


Hesabu Msimbo Mpya wa Hash

Data iliyowasilishwa au faili zilizopakiwa kupitia fomu hii zitawekwa tu kwenye seva kwa muda mrefu kama inachukua ili kuzalisha msimbo wa hashi ulioombwa. Itafutwa mara moja kabla ya matokeo kurejeshwa kwenye kivinjari chako.

Data ya ingizo:



Maandishi yaliyowasilishwa yamesimbwa UTF-8. Kwa kuwa vitendaji vya heshi vinafanya kazi kwenye data binary, matokeo yatakuwa tofauti kuliko ikiwa maandishi yalikuwa katika usimbaji mwingine. Ikiwa unahitaji kukokotoa heshi ya maandishi katika usimbaji mahususi, unapaswa kupakia faili badala yake.



Kuhusu Algorithm ya XXH-32 Hash

Mimi si mtaalamu wa hisabati, lakini nitajaribu kueleza kazi hii ya heshi kwa kutumia mlinganisho ambao wenzangu wasio wanahisabati wanaweza kuelewa. Ikiwa unapendelea maelezo sahihi ya kisayansi, kamili juu ya hesabu, nina hakika unaweza kupata hiyo mahali pengine ;-)

Jaribu kufikiria XXHash kama blender kubwa. Unataka kufanya smoothie, hivyo kuongeza kundi la viungo mbalimbali. Jambo la pekee kuhusu blender hii ni kwamba hutoa smoothie ya ukubwa sawa bila kujali ni viungo ngapi unavyoweka, lakini ikiwa utafanya mabadiliko madogo tu kwa viungo, utapata smoothie yenye ladha tofauti kabisa.

Hatua ya 1: Kuchanganya Data

Fikiria data yako kama rundo la matunda tofauti: tufaha, ndizi, jordgubbar.

  • Unawatupa kwenye blender.
  • Unawachanganya kwa kasi ya juu.
  • Haijalishi matunda yalikuwa makubwa kiasi gani, unaishia na laini ndogo iliyochanganywa vizuri.

Hatua ya 2: Mchuzi wa Siri - Kuchochea na Nambari za "Uchawi".

Ili kuhakikisha kuwa laini (hashi) haitabiriki, XXHash inaongeza kiungo cha siri: nambari kubwa za "uchawi" zinazoitwa primes. Kwa nini primes?

  • Wanasaidia kwa kuchanganya data kwa usawa zaidi.
  • Wanafanya iwe vigumu kubadilisha-uhandisi viungo asili (data) kutoka kwa laini (hashi).

Hatua ya 3: Kuongeza Kasi: Kukata kwa Wingi

XXHash ni haraka sana kwa sababu badala ya kukata tunda moja kwa wakati mmoja, ni:

  • Kata vikundi vikubwa vya matunda mara moja.
  • Hii ni kama kutumia kichakataji kikubwa cha chakula badala ya kisu kidogo.
  • Hii inaruhusu XXHash kushughulikia gigabaiti za data kwa sekunde - kamili kwa faili kubwa!

Hatua ya 4: Mguso wa Mwisho: Athari ya Banguko

Huu ndio uchawi:

  • Hata ukibadilisha kitu kimoja kidogo (kama koma katika sentensi), laini ya mwisho ina ladha tofauti kabisa.
  • Hii inaitwa athari ya avalanche:
    • Mabadiliko madogo = tofauti kubwa katika heshi.
    • Ni kama kuongeza tone la rangi ya chakula kwenye maji, na ghafla kioo kizima hubadilika rangi.

Shiriki kwenye BlueskyShiriki kwenye FacebookShiriki kwenye LinkedInShiriki kwenye TumblrShiriki kwenye XShiriki kwenye LinkedInBandika kwenye Pinterest

Mikkel Bang Christensen

Kuhusu Mwandishi

Mikkel Bang Christensen
Mikkel ndiye muundaji na mmiliki wa miklix.com. Ana uzoefu wa zaidi ya miaka 20 kama mtaalamu wa kupanga programu/programu za kompyuta na kwa sasa ameajiriwa muda wote kwa shirika kubwa la IT la Ulaya. Wakati si kublogi, yeye hutumia wakati wake wa ziada kwenye safu nyingi za mapendeleo, vitu vya kufurahisha, na shughuli, ambazo zinaweza kuonyeshwa kwa kadiri fulani katika mada anuwai zinazozungumziwa kwenye wavuti hii.