כללי:
למרות ואולי במבט העין כך נראה,
המחשב אינו שומר תווים או ציורים וכדומה,
רק שומר את מספרם = המיקומים שמייצגים אותם.
המדהים ביותר, המחשב שומר אך ורק 2 סוגי סימנים: 0 1.
(הדבר המורכב ביותר גם הוא: אוסף של המרכיבים הפשוטים ביותר?!).
Ansi :
טבלה בת 256 מקומות, ל-תווים/סימנים, למשל:
תו/סימן | מיקום עשרוני | מיקום הקסדצימאלי | (יוניקוד) |
0 | 48 | 30 | 0030 |
1 | 49 | 31 | 0031 |
A | 65 | 41 | 0041 |
C | 67 | 43 | 0043 |
a | 97 | 61 | 0061 |
b | 98 | 62 | 0062 |
[Space] | 32 | 20 | 0020 |
[Enter] | 13 | 0D | 000D |
אם נרשמה לדוגמא האות: 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">abc</Div>
DivExl.innerHTML = "abc"; : 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 בניית מלל-מילים ביוניקוד.
|