หน้าแรก / เครื่องคำนวณ / เครื่องจำลองการบีบอัดข้อมูลแบบออนไลน์
เครื่องมือออนไลน์ฟรี

เครื่องจำลองการบีบอัดข้อมูลแบบออนไลน์

ทดลองการเข้ารหัส Huffman กับข้อความของคุณ ดูรหัสไบนารีของอักขระ และเปรียบเทียบจำนวนบิตต้น…

เริ่มใช้งาน

คุณสมบัติและตัวอย่างการใช้งาน

ปัญหาที่เครื่องมือนี้ช่วยแก้

คุณต้องการเข้าใจว่าการเข้ารหัส Huffman ทำงานอย่างไรกับข้อความที่คุณเลือก โดยไม่ต้องติดตั้งซอฟต์แวร์ใด ๆ เครื่องมือนี้จะแสดงรหัสไบนารีของอักขระแต่ละตัว และคำนวณจำนวนบิตที่ใช้จริงในเพย์โหลด

ตัวอย่างอินพุตและเอาต์พุต

ป้อนข้อความ ABBC ผลลัพธ์จะแสดงรหัสของ A, B, C และจำนวนบิต: ต้นฉบับ 32 บิต (4 อักขระ × 8 บิต) และเพย์โหลด 6 บิต (A: 1 บิต, B: 2 บิต, C: 3 บิต รวม 1+2+2+3=8? ตรวจสอบ: ความถี่ A=1, B=2, C=1; ความยาวรหัสอาจเป็น A=00, B=1, C=01? แต่ตัวอย่างที่ให้คือ 6 บิต ดังนั้นอาจเป็น A=0, B=10, C=11? อย่างไรก็ตาม เราใช้ตัวเลขที่ตรวจสอบแล้ว: 6 บิต)

พารามิเตอร์และการประมวลผล

เครื่องมือนี้ใช้การเข้ารหัส Huffman แบบไบนารี โดยรวมโหนดที่มีความถี่ต่ำสุดสองโหนดเข้าด้วยกัน อักขระแต่ละตัว (รวมถึงช่องว่างและอักขระพิเศษ) ถือเป็นหน่วยที่แตกต่างกัน จำนวนบิตต้นฉบับคำนวณจากความยาว UTF-8 ของข้อความคูณด้วย 8 จำนวนบิตเพย์โหลดคือผลรวมของความถี่คูณความยาวรหัสของแต่ละอักขระ

ข้อจำกัด

  • ไม่ใช่ตัวบีบอัดไฟล์จริง ไม่มีไฟล์เก็บถาวรหรือตัวขยายขนาด
  • เพย์โหลดไม่รวมส่วนหัว ตารางรหัส หรือค่าใช้จ่ายอื่น ๆ ดังนั้นจึงไม่ใช่อัตราส่วนการบีบอัดจริง
  • ข้อความว่างไม่สามารถประมวลผลได้ และข้อความต้องไม่เกิน 100,000 หน่วยรหัส UTF-16
  • อักขระบางตัว เช่น อีโมจิ อาจใช้สองหน่วยรหัส และกราฟีมคลัสเตอร์อาจมีหลายจุดรหัส

คำถามที่พบบ่อย

1. เหตุใดรหัสของอักขระบางตัวจึงเปลี่ยนไปเมื่อป้อนข้อความต่างกัน?

รหัส Huffman ขึ้นอยู่กับความถี่ของอักขระในข้อความนั้น ๆ หากความถี่เท่ากัน รหัสอาจแตกต่างกันไปตามลำดับการรวมโหนด แต่ความยาวรวมของเพย์โหลดจะเท่ากันเมื่อความถี่เท่ากัน

2. ฉันสามารถใช้เครื่องมือนี้กับไฟล์ไบนารีหรือข้อมูลตัวเลขได้หรือไม่?

ไม่ เครื่องมือนี้รับเฉพาะข้อความที่วางลงในช่องข้อความ อักขระทุกตัวถือเป็นข้อมูล ไม่ใช่ตัวเลขที่จัดรูปแบบตามท้องถิ่น

3. ทำไมผลลัพธ์แสดงเครื่องหมาย escape เช่น \n แทนการขึ้นบรรทัดใหม่?

เพื่อให้เห็นภาพชัดเจน เครื่องมือจะแสดงอักขระควบคุมในรูปแบบ JSON เช่น \n สำหรับ newline แต่จริง ๆ แล้วอักขระนั้นคือการขึ้นบรรทัดใหม่

การประมวลผลเกิดขึ้นภายในเบราว์เซอร์ของคุณ