Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα θα ήθελα να μου δώσετε με όσο πιο απλά λόγια γίνεται, το τι κάνει το error correcting code και πως δουλεύει.

 

Αν γίνεται και ένα παράδειγμα του στυλ: στέλνω ένα γράμμα από το πληκτρολόγιο π.χ 11001111 10010101 (utf-8 unicode χαρακτήρας Φ) . Τι θα γίνει ακριβώς όταν θα μπει το παραπάνω ψηφίο(μιλάω για το parity bit) και πως θα καταλάβει ο κώδικας πως τελικά έγινε λάθος κατά την μετάδοση.

 

Αν πιστεύεται πως είναι σε λάθος section sorry αλλά δεν ήξερα αν έπρεπε να το βάλω εδώ ή στα δίκτυα :D

 

Αν κάποιος γνωρίζει θα τον θερμοπαρακαλούσα για μια ολοκληρωμένη και σχετικά απλουστευμένη απάντηση :D

 

Ευχαριστώ.

Δημοσ.

Το parity bit ειναι ενα επιπλεον bit τ οποιο εχει τιμη 1 οταν οι ασσοι του "μηνυματος" εχουν περιτο πληθος, αλλιως εχει τιμη 0. Οποτε στο παραδειγμα σου εχουμε 10 ασσους, αρα το parity bit θα ηταν 0. Ο παραληπτης του μηνυματος θα μετρισει με καποιο τροπο τους ασσος κι αν ειναι περιτοι στο πληθος θα καταλαβει οτι υπηρξε αλλιωση του μηνυματος.

Βεβαια οπως καταλαβαινεις δεν ειναι απολυτα αξιοπιστω γαιτι αν υπαρξουν ταυτοχρονα δυο αλλιωσεις, τοτε ο παραληπτης θα θεωρισει οτι δεν υπηρξε προβλημα

Δημοσ.

Ωραίος ο φίλος ευχαριστώ πολύ για τις όντως απλές εξηγήσεις και εγώ κάπως έτσι το είχα καταλάβει.

 

Υπάρχει περίπτωση να μάθουμε τον τρόπο που καταλαβαίνει ο παραλήπτης ότι είναι κάτι λάθος και τον τελικό τρόπο που διορθώνεται αυτό το αρχείο?δλδ πως ξέρει ποια μηδενικά πρέπει να γίνουν άσσοι :D

Δημοσ.

Ο παραλήπτης καταλαβαίνει ότι κάτι είναι λάθος επειδή με το parity bit τα έχουμε κανονίσει έτσι ώστε το πλήθος των 1 να είναι πάντα π.χ. ζυγό (και μονό δεν έχει διαφορά, αρκεί να ξέρουμε τι έχει επιλέξει ο αποστολέας). Αν λοιπόν ληφθεί μήνυμα με μονό αριθμό από 1 τότε ξέρουμε ότι κάπου έχει γίνει λάθος.

 

Προφανώς δεν είναι δυνατόν να ξέρουμε με 1 μόνο παραπάνω bit πληροφορίας αν έγιναν παραπάνω από ένα λάθη (δε μπορούμε να εντοπίσουμε ζυγό αριθμό λαθών, ούτε να ξέρουμε πόσα ακριβώς είναι τα λάθη αν ο αριθμός τους είναι μονός), ούτε και βέβαια να το/τα διορθώσουμε. Γι' αυτό και λέμε ότι το parity bit κάνει detect 1 error και correct none.

 

Υπάρχουν πολλοί διαφορετικοί κώδικες με τους οποίους μπορείς να κάνεις detect περισσότερα από 1 errors και ακόμα να διορθώσεις κάποια από αυτά (λιγότερα πάντα από τα πόσα μπορείς να κάνεις detect). Όταν υπάρχει αυτή η δυνατότητα λέμε ότι ο κώδικας είναι forward error correcting (FEC), πράγμα που είναι πολύ σημαντικό σε ορισμένες κατηγορίες εφαρμογών γιατί επιτρέπει τη διόρθωση των λαθών (μέχρι ενός σημείου βέβαια) επιτόπου στον παραλήπτη χωρίς να γίνει επαναμετάδοση.

 

Μια οικογένεια απλών κωδικοποιήσεων που έχουν δυνατότητα FEC είναι οι κώδικες Hamming. Google και για μια γρήγορη εισαγωγή/παράδειγμα δες πχ. εδώ.

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...