Τα ASCII και Unicode είναι και τα δύο πρότυπα που αναφέρονται στην ψηφιακή αναπαράσταση του κειμένου, συγκεκριμένα στους χαρακτήρες που συνθέτουν το κείμενο. Ωστόσο, τα δύο πρότυπα είναι σημαντικά διαφορετικά, με πολλές ιδιότητες να αντικατοπτρίζουν την αντίστοιχη σειρά δημιουργίας τους.

Αμερική εναντίον του Σύμπαντος

Ο αμερικανικός τυποποιημένος κώδικας για ανταλλαγή πληροφοριών (ASCII), αναπάντεχα, εξυπηρετεί ένα αμερικανικό κοινό, γράφοντας στο αγγλικό αλφάβητο. Ασχολείται με απροσδιόριστα γράμματα, όπως τα A-Z και a-z, συν έναν μικρό αριθμό συμβόλων στίξης και χαρακτήρων ελέγχου.

Ειδικότερα, δεν υπάρχει τρόπος αναπαράστασης λέξεων δανείου που έχουν υιοθετηθεί από άλλες γλώσσες, όπως καφενείο στο ASCII, χωρίς να γωνιαστούν, αντικαθιστώντας τονισμένους χαρακτήρες (π.χ. καφενείο). Οι τοπικές επεκτάσεις ASCII αναπτύχθηκαν για να καλύψουν τις ανάγκες διαφόρων γλωσσών, αλλά αυτές οι προσπάθειες κατέστησαν αδέξια τη διαλειτουργικότητα και επεκτείνουν σαφώς τις δυνατότητες του ASCII.

Αντίθετα, το σύνολο κωδικοποιημένων χαρακτήρων Universal (Unicode) βρίσκεται στο αντίθετο άκρο της κλίμακας φιλοδοξίας. Η Unicode προσπαθεί να καλύψει όσο το δυνατόν περισσότερα από τα συστήματα γραφής του κόσμου, στο βαθμό που καλύπτει αρχαίες γλώσσες και το αγαπημένο σύνολο εκφραστικών συμβόλων, emoji.

instagram viewer

Σύνολο χαρακτήρων ή κωδικοποίηση χαρακτήρων;

Με απλά λόγια, ένα σύνολο χαρακτήρων είναι μια επιλογή χαρακτήρων (π.χ. A-Z) ενώ ένας χαρακτήρας Η κωδικοποίηση είναι μια αντιστοίχιση μεταξύ ενός συνόλου χαρακτήρων και μιας τιμής που μπορεί να αναπαρασταθεί ψηφιακά (π.χ., A = 1, B = 2).

Το πρότυπο ASCII είναι ουσιαστικά και τα δύο: καθορίζει το σύνολο των χαρακτήρων που αντιπροσωπεύει και μια μέθοδο χαρτογράφησης κάθε χαρακτήρα σε μια αριθμητική τιμή.

Σε αντίθεση, η λέξη Unicode χρησιμοποιείται σε διάφορα διαφορετικά περιβάλλοντα για να σημαίνει διαφορετικά πράγματα. Μπορείτε να το θεωρήσετε ως έναν συνολικό όρο, όπως το ASCII, για να αναφερθείτε σε ένα σύνολο χαρακτήρων και σε έναν αριθμό κωδικοποιήσεων. Όμως, επειδή υπάρχουν πολλές κωδικοποιήσεις, ο όρος Unicode χρησιμοποιείται συχνά για να αναφέρεται στο συνολικό σύνολο χαρακτήρων, παρά στον τρόπο χαρτογράφησής τους.

Μέγεθος

Λόγω του πεδίου εφαρμογής του, το Unicode αντιπροσωπεύει πολύ περισσότερους χαρακτήρες από το ASCII. Το πρότυπο ASCII χρησιμοποιεί ένα εύρος 7-bit για την κωδικοποίηση 128 διακριτών χαρακτήρες. Το Unicode, από την άλλη πλευρά, είναι τόσο μεγάλο που πρέπει να χρησιμοποιήσουμε διαφορετική ορολογία για να το συζητήσουμε!

Το Unicode εξυπηρετεί 1.111.998 διευθυνσιοδοτούμενα σημεία κώδικα. Ένα σημείο κώδικα είναι περίπου ανάλογο με ένα χώρο που προορίζεται για έναν χαρακτήρα, αλλά η κατάσταση είναι πολύ πιο περίπλοκη από αυτήν όταν αρχίζετε να ερευνάτε τις λεπτομέρειες!

Μια πιο χρήσιμη σύγκριση είναι πόσα σενάρια (ή συστήματα γραφής) υποστηρίζονται αυτήν τη στιγμή. Φυσικά, το ASCII χειρίζεται μόνο το αγγλικό αλφάβητο, ουσιαστικά το λατινικό ή ρωμαϊκό σενάριο. Η έκδοση του Unicode που παράγεται το 2020 προχωρά πολύ περισσότερο: περιλαμβάνει υποστήριξη για συνολικά 154 σενάρια.

Αποθήκευση

Το εύρος 7 bit του ASCII σημαίνει ότι κάθε χαρακτήρας αποθηκεύεται σε ένα byte 8 bit. το εφεδρικό bit δεν χρησιμοποιείται στο πρότυπο ASCII. Αυτό καθιστά τους υπολογισμούς μεγέθους ασήμαντους: το μήκος του κειμένου, σε χαρακτήρες, είναι το μέγεθος του αρχείου σε byte.

Μπορείτε να το επιβεβαιώσετε με την ακόλουθη ακολουθία εντολών bash. Αρχικά, δημιουργούμε ένα αρχείο που περιέχει 12 γράμματα κειμένου:

$ echo -n "Γεια σου, κόσμος"> foo

Για να ελέγξουμε ότι το κείμενο είναι στην κωδικοποίηση ASCII, μπορούμε να χρησιμοποιήσουμε το αρχείο εντολή:

$ file foo
foo: Κείμενο ASCII, χωρίς τερματιστές γραμμών

Τέλος, για να λάβουμε τον ακριβή αριθμό byte που καταλαμβάνει το αρχείο, χρησιμοποιούμε το Στατ εντολή:

$ stat -f% z foo
12

Δεδομένου ότι το πρότυπο Unicode ασχολείται με ένα πολύ μεγαλύτερο εύρος χαρακτήρων, ένα αρχείο Unicode καταλαμβάνει φυσικά περισσότερο χώρο αποθήκευσης. Ακριβώς πόσο εξαρτάται από την κωδικοποίηση.

Η επανάληψη του ίδιου συνόλου εντολών από πριν, χρησιμοποιώντας έναν χαρακτήρα που δεν μπορεί να αναπαρασταθεί στο ASCII, δίνει τα εξής:

$ echo -n "€" foo
$ file foo
foo: Κείμενο Unicode UTF-8, χωρίς τερματιστές γραμμών
$ stat -f% z foo
3

Αυτός ο μοναδικός χαρακτήρας καταλαμβάνει 3 byte σε ένα αρχείο Unicode. Σημειώστε ότι η bash δημιούργησε αυτόματα ένα αρχείο UTF-8, καθώς ένα αρχείο ASCII δεν μπορεί να αποθηκεύσει τον επιλεγμένο χαρακτήρα (€). Το UTF-8 είναι μακράν η πιο κοινή κωδικοποίηση χαρακτήρων για το Unicode. Τα UTF-16 και UTF-32 είναι δύο εναλλακτικές κωδικοποιήσεις, αλλά χρησιμοποιούνται πολύ λιγότερο.

Το UTF-8 είναι μια κωδικοποίηση μεταβλητού πλάτους, που σημαίνει ότι χρησιμοποιεί διαφορετικές ποσότητες αποθήκευσης για διαφορετικά σημεία κώδικα. Κάθε σημείο κώδικα θα καταλαμβάνει μεταξύ ενός και τεσσάρων byte, με την πρόθεση ότι οι πιο συνηθισμένοι χαρακτήρες απαιτούν λιγότερο χώρο, παρέχοντας έναν τύπο ενσωματωμένης συμπίεσης. Το μειονέκτημα είναι ότι ο καθορισμός των απαιτήσεων μήκους ή μεγέθους ενός δεδομένου τμήματος κειμένου γίνεται πολύ πιο περίπλοκος.

Το ASCII είναι Unicode, αλλά το Unicode δεν είναι ASCII

Για συμβατότητα προς τα πίσω, τα πρώτα 128 σημεία κώδικα Unicode αντιπροσωπεύουν τους ισοδύναμους χαρακτήρες ASCII. Δεδομένου ότι το UTF-8 κωδικοποιεί κάθε έναν από αυτούς τους χαρακτήρες με ένα μόνο byte, οποιοδήποτε κείμενο ASCII είναι επίσης ένα κείμενο UTF-8. Το Unicode είναι ένα υπερσύνολο του ASCII.

Ωστόσο, όπως φαίνεται παραπάνω, πολλά αρχεία Unicode δεν μπορούν να χρησιμοποιηθούν σε περιβάλλον ASCII. Οποιοσδήποτε χαρακτήρας είναι εκτός ορίων θα εμφανίζεται με απροσδόκητο τρόπο, συχνά με υποκατεστημένους χαρακτήρες που είναι εντελώς διαφορετικοί από εκείνους που προορίζονταν.

Σύγχρονη χρήση

Για τους περισσότερους σκοπούς, το ASCII θεωρείται σε μεγάλο βαθμό κληρονομικό πρότυπο. Ακόμα και σε καταστάσεις που υποστηρίζουν μόνο το λατινικό σενάριο - όπου υπάρχει πλήρης υποστήριξη για τις πολυπλοκότητες του Unicode περιττό, για παράδειγμα - είναι συνήθως πιο βολικό να χρησιμοποιείτε το UTF-8 και να εκμεταλλευτείτε το ASCII του συμβατότητα.

Συγκεκριμένα, οι ιστοσελίδες πρέπει να αποθηκεύονται και να μεταδίδονται χρησιμοποιώντας το UTF-8, το οποίο είναι η προεπιλογή για HTML5. Αυτό έρχεται σε αντίθεση με τον προηγούμενο ιστό, ο οποίος ασχολήθηκε από προεπιλογή στο ASCII πριν από αυτό αντικαταστάθηκε από το Latin 1.

Ένα πρότυπο που αλλάζει

Η τελευταία αναθεώρηση του ASCII πραγματοποιήθηκε το 1986.

Αντίθετα, το Unicode συνεχίζει να ενημερώνεται κάθε χρόνο. Νέα σενάρια, χαρακτήρες και, ιδιαίτερα, νέα emoji προστίθενται τακτικά. Με μόνο ένα μικρό μέρος αυτών που διατίθενται, το πλήρες σύνολο χαρακτήρων είναι πιθανό να αναπτυχθεί και να αναπτυχθεί για το ορατό μέλλον.

Σχετιζομαι με: Τα 100 πιο δημοφιλή Emoji εξήγησαν

Τα 100 πιο δημοφιλή Emoji εξήγησαν

Υπάρχουν τόσα πολλά emoji, μπορεί να είναι δύσκολο να γνωρίζουμε τι σημαίνουν όλοι. Εδώ εξηγούνται τα πιο δημοφιλή emoji.

ASCII Versus Unicode

Το ASCII εξυπηρετούσε τον σκοπό του για πολλές δεκαετίες, αλλά η Unicode το αντικατέστησε αποτελεσματικά για όλους τους πρακτικούς σκοπούς εκτός από τα παλαιά συστήματα. Το Unicode είναι μεγαλύτερο και, ως εκ τούτου, πιο εκφραστικό. Αντιπροσωπεύει μια παγκόσμια, συνεργατική προσπάθεια και προσφέρει πολύ μεγαλύτερη ευελιξία, αν και εις βάρος κάποιας πολυπλοκότητας.

ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ
Τι είναι το κείμενο ASCII και πώς χρησιμοποιείται;

Το κείμενο ASCII εμφανίζεται κρυπτογραφημένο, αλλά έχει πολλές χρήσεις στο Διαδίκτυο.

Σχετικά θέματα
  • Η τεχνολογία εξηγείται
  • Emoji
  • Ακατάληπτη γλώσσα
  • Πολιτισμός Ιστού
  • Unicode
Σχετικά με τον Συγγραφέα
Μπόμπι Τζακ (Δημοσιεύθηκαν 23 άρθρα)

Ο Bobby είναι λάτρης της τεχνολογίας που εργάστηκε ως προγραμματιστής λογισμικού για τις περισσότερες από δύο δεκαετίες. Είναι παθιασμένος με το gaming, εργάζεται ως Editor Editor στο Switch Player Magazine και είναι βυθισμένος σε όλες τις πτυχές των διαδικτυακών εκδόσεων και της ανάπτυξης ιστού.

Περισσότερα από τον Bobby Jack

Εγγραφείτε στο Newsletter μας

Εγγραφείτε στο ενημερωτικό δελτίο μας για τεχνικές συμβουλές, κριτικές, δωρεάν ebook και αποκλειστικές προσφορές!

Ένα ακόμη βήμα…!

Επιβεβαιώστε τη διεύθυνση email σας στο email που μόλις σας στείλαμε.

.