ISO 10646 – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
אין תקציר עריכה
Matanyabot (שיחה | תרומות)
מ בוט: שינויים קוסמטיים
שורה 1:
תקן '''ISO 10646''' של [[ארגון התקינה הבינלאומי]] (ISO) הוא [[תקן]] ל[[מפת תווים]] אוניברסלית (UCS, ראשי תיבות של Universal Character Set) שנועד לאחד את כל מפות ה[[תו]]וים, שבשימוש כיים ולקודד את כל ה[[כתב]]ים הנוכחיים וההיסטוריים של האנושות. כיום תקן זה מאוחד עם תקן אחר למפת תווים אוניברסלית בשם [[יוניקוד]]. הוא עדיין נבדל ממנו בכמה תכונות, אך אין הוא שונה ממנו בפרטים כפי שהיה בעבר.
 
== היסטוריה ==
 
ארגון ISO יזם את מפת התווים האוניברסלית ב־1989, והטיוטה של תקן ISO 10646 יצאה לאור ב־1990. תקן זה היה שונה מאוד מהתקן של היום. הוגדרו בו 128 קבוצות (groups) בעלות 256 משטחים (planes) בעלי 256 שורות (rows) בעלות 256 תאים (cells) - לכאורה מקום ל־2,147,483,648 תווים, אך למעשה אפשר היה לקודד רק 679,477,248 תווים, שכן המדיניות הייתה שלא יופיעו תווי בקרה (הבתים 0x00 עד 0x1F ו־0x80 עד 0x9F, ב[[בסיס הקסדצימלי|כתיב הקסדצימלי]]) בשום מקום. כך למשל האות הלטינית A הופיעה בקבוצה 32, משטח 32, שורה 32, תא 65.
שורה 11:
בינתיים, עם חלוף השנים, השתנו הדברים ביוניקוד עצמו: 65,536 לא נראו עוד כמספיקים, והתקן מגרסה 2 ואילך תומך בקידוד 1,112,064 תווים באמצעות מנגנון [[UTF-16]]. לשם כך הוגבל ISO 10646 להכיל עד כמה תווים שאפשר לקודד באמצעות UTF-16 ולא יותר, כלומר מיליון וקצת תווים במקום שני מיליארד. קידוד UCS-4 של ISO 10646 הוכנס לתקן יוניקוד בהגבלה לתחום של UTF-16 ושמו שונה ל־[[UTF-32]]. באשר ל־UTF-1, איש לא השתמש בו, בשל עיצובו הגרוע (אין אפשרות להבחין בתים בודדים ומתחילים ומסיימים של קבוצות - בעיה דומה לזו של הקידוד היפני [[Shift-JIS]]) וביצועיו הנמוכים (הרבה פעולות חלוקה). רוב פייק וקן תומפסון, המתכננים של מערכת ההפעלה Plan 9, המציאו קידוד חדש ומהיר ומעוצב היטב לקידוד תווים באורך משתנה, וזה היה ל־[[UTF-8]] המוכר לנו כיום.
 
== הבדלים בין ISO 10646 לבין יוניקוד ==
 
ISO 10646 ויוניקוד זהים לחלוטין באוצר שלהם - אותם תווים בעלי אותם מספרים קיימים בדיוק בשני התקנים. ההבדל ביניהם הוא שתקן יוניקוד מוסיף כמה כללים ומפרטים שאינם קיימים ב־ISO 10646. התקן של ISO אינו אלא מפת תווים פשוטה, המשך של תקנים כמו [[ISO 8859]]. יוניקוד, לעומת זאת, מוסיף כללים לסידור האותיות לפי שפה, נורמליזציה של צורות זהות, ואת אלגוריתם הדו־כיווניות. לגבי המשתמש העברי זהו דבר חשוב ביותר והמשמעות היא שמכל תוכנה חדשה יש לדרוש תמיכה ביוניקוד ולא ב־ISO 10646 בלבד. תקן יוניקוד קובע כי העברית תקודד באופן [[עברית באינטרנט|משתמע]] (לוגי) בלבד, ואילו עברית חזותית (ויזואלית) אינה חוקית לפי יוניקוד.
 
יש כמה תוכנות שתומכות ב־ISO 10646 אך לא ביוניקוד. למשל, xterm של [[גנו/לינוקס|לינוקס]] (בגרסאות החדשות) תומך ב־ISO 10646, כלומר הוא מציג את כל התווים שבתקן, אך הוא אינו יכול להציג עברית משתמעת, ערבית או כתבים הודיים כמו דבנגארי, משום שהוא אינו תומך במנגנוני תצוגת הכתבים המורכבים (complex script) המוכתבים על ידי יוניקוד. לעומת זאת, הדפדפן [[מוזילה]] ומעבד התמלילים [[OpenOffice.org]], גם על לינוקס, תומכים ביוניקוד על כל מנגנוני התצוגה הנדרשים.
{{נ}}
 
[[קטגוריה:קידוד נתונים]]
[[קטגוריה: תקני ISO]]
{{נ}}
 
[[en:Universal Character Set]]