Το πρόβλημα που δημιουργείται είναι το πώς θα ξεχωρίζω πότε ένα σύμβολο αναπαριστάται από μία οκτάδα και πότε από περισσότερες. Η λύση ήταν η εξής: Αν το σύμβολο αναπαριστάται από μία οκτάδα, στο πρώτο από τα οκτώ κουτάκια της οκτάδας θα έχει πάντα μηδέν. Αν το σύμβολο αναπαριστάται από περισσότερες οκτάδες, η πρώτη οκτάδα θα έχει στις πρώτες θέσεις τις τόσους άσους, όσες και οι οκτάδες που απαιτούνται. Η δεύτερη (ή η τρίτη ή η τέταρτη) οκτάδα έχουν πάντα 1 και 0 στην πρώτη και στη δεύτερη θέση τους. O Τρόπος αποθήκευσης (ή κωδικοποίησης) ονομάστηκε UTF-8 (8bit Unicode Transformation Format)
Το Ελληνικό Κεφαλαίο Άλφα Χωρίς Τόνο, σε κωδικοποίηση UTF-8 αναπαριστάται κάπως έτσι:
με κίτρινο φόντο έχουμε τα κουτάκια που λειτουργούν ως σήμανση, με πράσινο και γαλάζιο, τα κουτάκια που αναπαριστούν τον αριθμό 913. Αντιπαραβάλετε με την απλή αναπαράσταση του αριθμού 913:
(Δεν είμαι και πολύ σίγουρος ποιον θα ωφελήσουν τα τελευταία τρία posts, εκτός φυσικά από εμένα, γιατί το να τα γράψω όλα αυτά με βοήθησε στο να ξεκαθαρίσω μέσα στο κεφάλι μου. Υποθέτω αν ξεκινάτε τώρα πληροφορική, ή σας ξέφυγε το θέμα του Unicode και των character encodings (όπως εμένα) θα σας φανούν χρήσιμα. Ή ακόμη αν σας ενδιαφέρει το πώς λειτουργούν οι υπολογιστές.
Μέρος της δουλειάς βασίστηκε πάνω στο διάσημο πια άρθρο του Joel Spolsky για τα απολύτως απαραίτητα που πρέπει να ξέρει ο προγραμματιστής για το Unicode. Εσκεμμένα απέφυγα να αναφερθώ σε Big-Endian και Little-Endian θέματα)
4 comments:
Τέλεια! Την κατάλληλη στιγμή. Κάνε κι άλλα τέτοια! (Εχμ.. μήπως δέχεσαι κ ποστ-παραγγελειές; :P)
Πρώτο και δεύτερο απο αριστερά προς τα δεξιά ή από δεξιά προς τα αριστερά;
hammett79 said...
"Κάνε κι άλλα τέτοια!"
---------------------------
Συμφωνώ και επαυξάνω.
Thanks! μου λύθηκε η απορία!
Post a Comment