מיכל-E, אנסי/יוניקוד

הגדלה

הקטנה

הדפסה


 Ansi / Unicode

E


כללי:
למרות ואולי במבט העין כך נראה,
המחשב אינו שומר תווים או ציורים וכדומה,
רק שומר את מספרם = המיקומים שמייצגים אותם.
המדהים ביותר, המחשב שומר אך ורק 2 סוגי סימנים: 0 1.
(הדבר המורכב ביותר גם הוא: אוסף של המרכיבים הפשוטים ביותר?!).

Ansi :
טבלה בת 256 מקומות, ל-תווים/סימנים, למשל:
תו/סימןמיקום עשרוני  מיקום הקסדצימאלי  (יוניקוד)
048300030
149310031
A65410041
C67430043
a97610061
b98620062
[Space]32200020
[Enter]130D000D

אם נרשמה לדוגמא האות: a, המחשב יתרגם לערך הקסדצימאלי: 61.
אם נכתב קובץ בקידוד Ansi, כל תו רשום יתפוס בית 1 בזיכרון המחשב.
256 = 2 בחזקת 8, בית 1 = 8 ביטים. (בביט שמור 1 משני הסימנים: 0 1).

Unicode :
מכיוון שחלוקת המחשב היא לבתים,
לא מספיק בית 1? האפשרות הבאה: 2 בתים.
בשני בתים יש 256 * 256 = 65536 מקומות.
טבלת : Unicode, בא ניתן לשמור סימנים רבים, בינהם גם שפע שפות העמים ועוד.
הערה חשובה: כיום היוניקוד מכיל הרבה מעבר לטווח 2 בתים,
יחד עם זאת השימוש בתווים שמעבר לטווח זה אינו נפוץ, לפחות לא בשיטות רישום דפים ברשת.

יתרון: ניתן להעשיר קבצים בסימני וציורי טבלה זאת.

חיסרון: אם יצורפו תווים אלו לקובץ שרשום בקידוד Ansi,
תווים קודמים בקובץ שמעבר למיקום 127/7F ישמרו לפחות ב:2 בתים,
קובץ שהיה רשום בשיטת קידוד: Ansi, ולא רשום בשפה האנגלית בלבד,
עלול משמעותית להגדיל את נפחו. (מומלץ עיון בנושא: שיטות קידוד כמו בערך: UTF)
(אם תו Unicode הועתק לדוגמא ל 'פנקס רשימות'? בשמירתו נתבקש להחליף את קידודו).

איך ניתן להתגבר על החיסרון:
בעיקר ואם מדובר בצרוף של תווים בודדים למשל לקובץ HTML,
במקום להעתיק/לרשום את התווים הרצויים ישירות, ניתן לצרפם בדרכים הבאות:

1. במקום רישום התו, רישום מיקומו העשרוני ובתוספת של תווים,
כך לדוגמא שהתו ϴ שמיקומו העשרוני 1012, ירשם כך: ϴ
כך לדוגמא שהאות a שמיקומה העשרוני 97, תירשם כך: a
כך שהאותיות , abc, ירשמו כך: abc וגם למשל כך: abc
(וגם למשל כך: ניתן לשלב שיטת רישום של תווי יוניקוד יחד עם תווי מקלדת רגילים=תווי אנסי)

דוגמאות לרישום בדף ובקוד:
 <Div ID="DivExl">a&#98;c</Div>
 DivExl.innerHTML = "a&#98;c";  : JavaScript

2. דרך הקוד הבא:
ObjTest.value = String.fromCharCode(736);
(בערך של אובייקט מסויים, הכנסנו תו שמיקומו העשרוני הוא: 736).
כך עקרונית ניתן לשבץ את התווים גם בתוויות, כמו גם לשלבם כחלק מסטרינג.
**: ניתן להוסיף לסטרינג מימינו ומשמאלו, תווי אנסי, או יוניקוד ובאותה שיטה, למשל:
'ab' + String.fromCharCode(736) + String.fromCharCode(99);
**: שורת הפקודה יכולה בנוסף להכיל מספר של תווים מופרדים בפסיק, למשל:
ObjTest.value = String.fromCharCode(97, 98, 736, 99);

הערות:
256 התווים הראשונים בטבלת Unicode, הם תווי ה-Ansi,
יחד עם זאת, ישנן כאמור שיטות קידוד לשפה, יתכן ועוד נושאים,
שמדברים למעשה ליחודיות=חוסר התאמה, בטווח החציון השני, 128-255.

כל תו הקסדצימאלי (0-F) מייצג 1/2 בית, בבית יש 2 תווים שכאלו. 16 * 16 = 256.


שימוש מהנה ומועיל : מיכל-E אנסי/יוניקוד. , מיכל-E בניית מלל-מילים ביוניקוד.


נושאים קשורים:  
מה זה יוניקוד?
Unicode Home Page

משרותי האתר: מיכל-E