UTILS.
%100 tarayıcıda

Hamming Uzaklığı Hesaplayıcı

Aynı uzunluktaki iki dizenin, bit dizisinin veya onaltılık değerin farklılaştığı konumları sayın; normalleştirilmiş uzaklık ve vurgulanmış uyuşmazlık farkı ile.

çıktı

Bu araç hakkında

Hamming Uzaklığı Hesaplayıcı aynı uzunluktaki iki girdinin farklılaştığı konumları sayar — hata algılayan ve hata düzelten kodların arkasındaki temel metrik. Her iki girdi de aynı uzunlukta olmalıdır; değilse araç bir hizalama tahmin etmek yerine her uzunluğu içeren net bir hata gösterir. Ham uzaklığı, normalleştirilmiş uzaklığı (uzaklık ÷ uzunluk, 0 ile 1 arasında), karşılaştırma uzunluğunu, eşleşen konum sayısını ve her uyuşmazlığı kırmızıyla vurgulayan konum başına bir farkı bildirir.

Üç mod yaygın durumları kapsar. Metin modunda dizeleri kod noktası kod noktası karşılaştırır, böylece eşit uzunluk aynı karakter sayısı anlamına gelir. İkili modda her girdinin yalnızca eşit uzunlukta 0 ve 1'lerden oluştuğunu doğrular ve farklılaşan bit konumlarını sayar — eşdeğer olarak XOR'larının popcount değeri. Onaltılık modda her iki girdiyi de eşit basamak uzunluğunda onaltılık olarak ayrıştırır, bunları nibble nibble XOR'lar ve ayarlı bitleri toplar, gerçek bit düzeyi Hamming uzaklığını verir; burada uzunluk toplam bit sayısıdır (onaltılık basamak × 4).

Hesaplama saf, deterministik ve tamamen çevrimdışıdır — girdiğiniz hiçbir şey tarayıcınızdan çıkmaz. Hamming uzaklığı iki kod sözcüğünü kaç tek-bit hatasının ayırdığını ölçmek, sabit uzunluklu karmaları veya parmak izlerini karşılaştırmak ve biyoinformatikte eşit uzunluklu dizileri karşılaştırmak için kullanılır. Eşit uzunluk gerektirdiğinden, dizeler uzunlukça farklı olabildiğinde bunun yerine düzenleme uzaklığını kullanın.

Sık sorulan sorular

İki girdinin neden aynı uzunlukta olması gerekiyor?
Hamming uzaklığı yalnızca eşit uzunluklu diziler için tanımlıdır — birinin i. konumunu diğerinin i. konumuyla karşılaştırır. Uzunluklar farklı olduğunda kanonik bir hizalama yoktur, bu yüzden araç her iki uzunlukla birlikte bir hata bildirir. Farklı uzunluktaki girdiler için bunun yerine Levenshtein (düzenleme) uzaklığını kullanın.
İkili mod neyi sayar?
Her iki girdinin de eşit uzunlukta 0 ve 1'lerden oluşan dizeler olduğunu doğrular, ardından farklılaşan bit konumlarını sayar — iki bit dizisinin XOR'unun popülasyon sayımı (ayarlı bit sayısı) ile aynı.
Onaltılık mod uzaklığı nasıl hesaplar?
Her onaltılık basamak bir nibble'dır (4 bit). Araç iki değeri basamak basamak XOR'lar ve tüm nibble'lardaki ayarlı bitleri toplar, bit düzeyi Hamming uzaklığını verir. Normalleştirme için kullanılan uzunluk toplam bit sayısıdır, yani onaltılık basamak sayısı çarpı dört.
Normalleştirilmiş uzaklık nedir?
Ham uzaklığın karşılaştırma uzunluğuna bölünmesidir, 0 (özdeş) ile 1 (her konum farklı) arasında bir değerdir. Farklı uzunluktaki girdiler arasında uyuşmazlık oranlarını aynı 0–1 ölçeğinde karşılaştırmanıza olanak tanır.

Daha fazla araç