PParityOchre
Ruang kerja kode dengan AI

Koreksi satu bit Hamming

Dekode kata Hamming tujuh bit dengan asumsi eksplisit paling banyak satu bit terbalik.

● ● ●ParityOchre●
Alur kerja · Koreksi satu bit Hamming ×
def correct_hamming(word):
    word = list(word)
    if len(word) != 7 or any(type(b) is not int or b not in (0, 1) for b in word):
        raise ValueError("hamming.word")
    syndrome = 0
    for parity in (1, 2, 4):
        value = 0
        for position in range(1, 8):
            if position & parity:
                value ^= word[position-1]
        if value:
            syndrome |= parity
    if syndrome:
        word[syndrome-1] ^= 1
    data = (word[2] << 3) | (word[4] << 2) | (word[5] << 1) | word[6]
    return data, syndrome
✳Dekode kata Hamming tujuh bit dengan asumsi eksplisit paling banyak satu bit terbalik.
✓ PerubahanTinjau sebelum menerapkan ↗
Ilustrasi ruang kerja
01

Tinjau sebelum menerapkan

Bandingkan perilaku sebenarnya dengan hasil yang diharapkan. Jika pemeriksaan gagal, cari penyebabnya sebelum membuat perubahan lain.

02

Model

Atur endpoint kompatibel OpenAI atau Anthropic dengan URL dasar dan kunci API jika diperlukan. Uji koneksi. Server model lokal harus berjalan; alat jarak jauh dapat mengirim data secara terpisah.

03

Proyek

Uji kata utuh dan setiap posisi kesalahan tunggal, tolak masukan salah bentuk atau bukan biner, dan jangan menjanjikan deteksi banyak kesalahan.

Alur kerja

Koreksi satu bit Hamming

Alur kerja ↗
Alur kerja
def correct_hamming(word):
    word = list(word)
    if len(word) != 7 or any(type(b) is not int or b not in (0, 1) for b in word):
        raise ValueError("hamming.word")
    syndrome = 0
    for parity in (1, 2, 4):
        value = 0
        for position in range(1, 8):
            if position & parity:
                value ^= word[position-1]
        if value:
            syndrome |= parity
    if syndrome:
        word[syndrome-1] ^= 1
    data = (word[2] << 3) | (word[4] << 2) | (word[5] << 1) | word[6]
    return data, syndrome
Ruang kerja kode dengan AI

Pastikan kode eksperimental menjelaskan asumsi operasinya

ParityOchre adalah ruang kerja pemrograman AI untuk Windows guna mengembangkan eksperimen teknis kecil menjadi komponen perangkat lunak dengan batas yang jelas. Buka folder sumber dan jelaskan kondisi penggunaan hasilnya. Minta model memeriksa perhitungan maupun pemanggilnya, khususnya ketika keluaran mungkin ditafsirkan sebagai bukti keberhasilan pemulihan.

Sebagai contoh, minta peninjauan hamming.py dengan asumsi kesalahan satu bit. Sediakan satu word utuh dan satu word dengan satu bit yang berubah, lalu nyatakan cara aplikasi harus menyajikan data dan sindrom yang dikembalikan. Bahas kegagalan di luar asumsi tersebut secara terpisah, agar hasil yang tampak masuk akal tidak menyiratkan bahwa setiap masukan rusak berhasil diperbaiki.

Gunakan usulan perubahan untuk memeriksa antarmuka di sekitar eksperimen. Periksa panjang masukan dan nilai bit, jalankan data uji independen di lingkungan Anda, dan periksa pesan yang ditampilkan kode pengguna. Penamaan keluaran yang jelas penting: aplikasi harus menyampaikan apa yang benar-benar dilaporkan rutin, tanpa mengubah contoh terbatas menjadi klaim keandalan yang lebih luas.

ParityOchre mendukung koneksi model melalui endpoint kompatibel OpenAI atau endpoint Anthropic, dengan kredensial jika diperlukan. Model AI tanpa sensor menjadi opsi jika ditawarkan, dengan tetap tunduk pada batasan penyedia. Alat yang tersedia dan konteks bergantung pada model serta server yang dipilih; bukti dari data uji Anda tetap diperlukan saat meninjau perilaku perangkat lunak yang diusulkan.

Pertanyaan tentang eksperimen pemulihan terbatas

Apakah nilai keluaran membuktikan word telah diperbaiki?

Hanya dalam asumsi yang ditetapkan untuk rutin dan masukannya. Nilai data yang masuk akal saja tidak membuktikan keberhasilan koreksi kerusakan sembarang. Tinjau cara aplikasi menjelaskan hasil agar pengguna tidak diberi kepastian yang lebih kuat daripada dukungan eksperimen.

Apa yang perlu dicakup validasi masukan?

Gunakan panjang word yang diharapkan dan nilai bit yang diizinkan dalam kontrak proyek. Sertakan panjang yang salah dan entri bukan bit dalam data uji. Periksa pula penolakan melalui pemanggil, karena pengecualian fungsi pembantu belum tentu menjadi respons aplikasi yang berguna.

Mengapa menyertakan word utuh dalam pengujian?

Word utuh menguji jalur tanpa perubahan dan makna sindrom yang dilaporkan ketika tidak ada indikasi koreksi. Bandingkan data yang diekstrak dengan nilai harapan independen. Menguji hanya contoh rusak dapat melewatkan cacat dalam penanganan masukan biasa atau penafsiran keluaran.

Bagaimana meminta penanganan kesalahan yang lebih luas?

Nyatakan kasus kesalahan tambahan dan bukti yang dibutuhkan aplikasi untuk membedakannya. Perlakukan sebagai persyaratan desain baru, bukan tambalan kecil pada contoh yang ada. Tinjau antarmuka dan pengujian yang diusulkan sebelum menganggapnya mendukung jaminan pemulihan lebih kuat.

Unduh untuk Windows ↗

ParityOchre · Diperbarui 2026-10-25