diff --git a/source/lessons/l10.rst b/source/lessons/l10.rst index 8d4797f..d031cd3 100644 --- a/source/lessons/l10.rst +++ b/source/lessons/l10.rst @@ -42,7 +42,7 @@ شناخته میشوند. -همانطور که گفته شد فایلها چیزی جز مجموعهای از مقدارهای باینری (یا دودویی) نیستند و فایلهای متنی نیز در واقع یک زیر مجموعه از فایلهای باینری است با این تفاوت که بیتهای یک فایل متنی در کنار هم، بسته به نوع کدگذاری آن متناظر با دنبالهای از کاراکترهایی مشخص و قابل چاپ هستند. محتوای این نوع فایل در سطرهایی جداگانه قرار داده میشود و با استفاده از برنامههای ویرایشگر متن برای انسان خوانا میباشد. در یک فایل متنی با کدگذاری ASCII (اَسکی) هر هشت بیت (یک بایت) برابر یک کاراکتر میباشد - کدهای اسکی هفت بیتی هستند ولی در اکثر کامپیوترها برای هر کدام یک بایت در نظر گرفته میشود - برای نمونه کلمه Python به شکل شش بایت که هر کدام به ترتیب برابر مقدار باینری کد اسکی هر یک از این کاراکترها میباشد، ذخیره میشود. اسکی تنها از ۱۲۸ کاراکتر - از کد ۰ تا ۱۲۷ (در پایه ده) - پشتیبانی میکند و به همین دلیل امروزه بیشتر از کدگذاریهای استاندارد Unicode (یونیکد) استفاده میگردد. در یونیکد مجموعه بسیار بزرگتری از کاراکتر نسبت به کدگذاری اسکی پشتیبانی میشود به گونهای که اسکی را نیز در برمیگیرد؛ برای نمونه در کدگذاری UTF-8 از این استاندارد، ۱۲۸ کد نخست (از کد ۰ تا ۱۲۷) برابر کد همان ۱۲۸ کاراکتر اسکی میباشد. کدگذاری UTF-8 کاراکترهای یونیکد را در یک دنباله بایت با طول متغیر (۱ تا ۶ بایت) ارايه میدهد؛ در این کدگذاری برای کاراکترهای اسکی تنها یک بایت در نظر گرفته میشود. +همانطور که گفته شد فایلها چیزی جز مجموعهای از مقدارهای باینری (یا دودویی) نیستند و فایلهای متنی نیز در واقع یک زیر مجموعه از فایلهای باینری است با این تفاوت که بیتهای یک فایل متنی در کنار هم، بسته به نوع کدگذاری آن متناظر با دنبالهای از کاراکترهایی مشخص و قابل چاپ هستند. محتوای این نوع فایل در سطرهایی جداگانه قرار داده میشود و با استفاده از برنامههای ویرایشگر متن برای انسان خوانا میباشد. در یک فایل متنی با کدگذاری ASCII (اَسکی) هر هشت بیت (یک بایت) برابر یک کاراکتر میباشد - کدهای اسکی هفت بیتی هستند ولی در اکثر کامپیوترها برای هر کدام یک بایت در نظر گرفته میشود - برای نمونه کلمه Python به شکل شش بایت که هر کدام به ترتیب برابر مقدار باینری کد اسکی هر یک از این کاراکترها میباشد، ذخیره میشود. اسکی تنها از ۱۲۸ کاراکتر - از کد ۰ تا ۱۲۷ (در پایه ده) - پشتیبانی میکند و به همین دلیل امروزه بیشتر از کدگذاریهای استاندارد Unicode (یونیکد) استفاده میگردد. در یونیکد مجموعه بسیار بزرگتری از کاراکتر نسبت به کدگذاری اسکی پشتیبانی میشود به گونهای که اسکی را نیز در برمیگیرد؛ برای نمونه در کدگذاری UTF-8 از این استاندارد، ۱۲۸ کد نخست (از کد ۰ تا ۱۲۷) برابر کد همان ۱۲۸ کاراکتر اسکی میباشد. کدگذاری UTF-8 کاراکترهای یونیکد را در یک دنباله بایت با طول متغیر (۱ تا ۴ بایت) ارايه میدهد؛ در این کدگذاری برای کاراکترهای اسکی تنها یک بایت در نظر گرفته میشود. در یک فایل باینری وجود سطر مفهومی ندارد و بایتهای آن ممکن است دادههایی را نمایش دهند که نمیتوان آنها را توسط هیچ یک از کدگذاریهای کاراکتر (UTF-8 ،ASCII و...) چاپ کرد یا حتی ممکن است در صورت چاپ آنها نیز حاصل برای انسان غیر قابل فهم باشد. diff --git a/source/log.rst b/source/log.rst index 922ca3b..e731ac0 100644 --- a/source/log.rst +++ b/source/log.rst @@ -12,6 +12,17 @@ ============= +.. raw:: html + +
00129 - پنجشنبه ۲۴ فروردین ۱۴۰۲
+ +* بنابر تذکر آقای «محمد درویشی» متن زیر از درس دهم اصلاح گردید: + + کدگذاری UTF-8 کاراکترهای یونیکد را در یک دنباله بایت با طول متغیر (۱ تا ۴ بایت) ارايه میدهد - پیشتر به اشتباه ۶ بایت ذکر شده بود. + + + +---- .. raw:: html