Hamming Code Simulator, kullanıcının girdiği veriyi Hamming kodu kullanarak kodlayan ve bellekte saklayan, hataları tanımlayan ve düzelten bir Java Swing uygulamasıdır.
- Veri Kodlama: 4, 8 veya 16 bitlik giriş verisini Hamming koduyla kodlar.
- Bellekte Saklama: Kodlanmış veriyi bellekte saklar.
- Hata Oluşturma: Kodlanmış veride rastgele bir bit hatası oluşturur.
- Hata Tespit ve Düzeltme: Oluşturulan hatayı tespit eder ve düzeltir.
- Grafik Arayüz: Verilerin ve kodlamaların grafiksel olarak gösterimi.
-
Depoyu Klonlayın
git clone https://github.com/Ah2m1et/HammingErrorCorrectingCodeSimulator-With-Java-Swing.git cd HammingErrorCorrectingCodeSimulator-With-Java-Swing -
Proje Dosyalarını Derleyin
javac HammingCodeSimulator.java
-
Uygulamayı Çalıştırın
java HammingCodeSimulator
- Veri Girişi: "Input Data" alanına 4, 8 veya 16 bitlik binary veri girin.
- Kodlama ve Saklama: "Encode & Save" butonuna tıklayarak veriyi kodlayın ve bellekte saklayın. Kodlanmış veri arayüzde gösterilecektir.
- Bellek Okuma: "Read Memory" butonuna tıklayarak bellekte saklanan tüm kodlanmış verileri görüntüleyin.
- Hata Oluşturma: "Induce Error" butonuna tıklayarak bellekteki bir kodlanmış veride rastgele bir bit hatası oluşturun ve hatayı tespit edin.
- initializeUI: Kullanıcı arayüzünü oluşturur.
- displayBits: Kodlanmış veriyi ve hata konumlarını grafiksel olarak gösterir.
- EncodeButtonListener: Kullanıcı veri girişi yapıp "Encode & Save" butonuna tıkladığında kodlama işlemini gerçekleştirir ve veriyi bellekte saklar.
- ReadMemoryButtonListener: Bellekteki tüm kodlanmış verileri listeler.
- InduceErrorButtonListener: Kodlanmış veride rastgele bir hata oluşturur, hatayı tespit eder ve düzeltir.
- encodeHamming: Veriyi Hamming kodu kullanarak kodlar.
- correctHamming: Kodlanmış verideki hatayı tespit eder ve düzeltir.
https://youtu.be/9K8UPv8QnMg?si=YF6yzq3UX6WUs9a7
- Yeni Özellikler Ekleyin: Uygulamaya yeni özellikler eklemek için HammingCodeSimulator sınıfını güncelleyebilirsiniz.
- Hataları Düzeltin: Hataları bulup düzeltmek için pull request oluşturabilirsiniz.
- Kullanıcı Arayüzünü Geliştirin: Arayüzü daha kullanıcı dostu hale getirmek için initializeUI metodunda değişiklikler yapabilirsiniz.
- Depoyu forklayın.
- Yeni bir dal (feature-branch) oluşturun.
- Değişikliklerinizi yapın ve commit edin.
- Dalınıza push edin (git push origin feature-branch).
- Bir pull request oluşturun.
Bu proje MIT Lisansı ile lisanslanmıştır. Daha fazla bilgi için LICENSE dosyasına bakın.
