زنگ

کسانی هستند که این خبر را قبل از شما می خوانند.
برای دریافت آخرین مقالات مشترک شوید.
پست الکترونیک
نام
نام خانوادگی
چگونه می خواهید The Bell را بخوانید
بدون اسپم

04.04.2006 لئونید چرنیاک رده: فناوری

"سیستم های باز" ایجاد رایانه غیرممکن خواهد بود اگر تئوری رمزگذاری سیگنال به طور همزمان با "ظاهر آنها ایجاد نشده است.

"سیستم های باز"

اگر تئوری رمزگذاری سیگنال همزمان با ظاهر آنها ایجاد نمی شد ، ایجاد رایانه غیرممکن خواهد بود.

نظریه کد نویسی یکی از آن بخش های ریاضیات است که به طور قابل توجهی بر پیشرفت محاسبات تأثیر گذاشته است. دامنه آن به انتقال داده ها از طریق کانال های واقعی (یا پر سر و صدا) گسترش می یابد و موضوع اطمینان از صحت اطلاعات منتقل شده است. به عبارت دیگر ، یاد می گیرد که چگونه می توان داده ها را به بهترین نحو بسته بندی کرد تا پس از انتقال سیگنال ، اطلاعات مفیدی با اطمینان و به سادگی از داده ها استخراج شود. بعضی اوقات تئوری رمزگذاری با رمزگذاری اشتباه گرفته می شود ، اما این درست نیست: رمزنگاری مسئله متضاد را حل می کند ، هدف آن تهیه اطلاعات از داده ها را دشوار می کند.

نیاز به رمزگذاری داده ها ابتدا بیش از 150 سال پیش ، اندکی پس از اختراع تلگراف ، با آن روبرو شد. کانال ها گران و غیرقابل اعتماد بودند و همین امر باعث می شد تا وظیفه به حداقل رساندن هزینه و افزایش قابلیت اطمینان انتقال تلگرام فوری شود. با تخمگذاری کابلهای فراتر از اقیانوس اطلس ، این مشکل بیشتر تشدید شد. از سال 1845 ، کتاب های ویژه کد استفاده شده اند. آنها توسط اپراتورهای تلگراف برای "فشرده سازی" پیام های دستی مورد استفاده قرار گرفتند ، توالی های کلمه مشترک را با کدهای کوتاه تر جایگزین کردند. در همین زمان ، برای بررسی صحت انتقال ، از کنترل برابری استفاده شد ، روشی که برای بررسی صحت ورود کارتهای سوراخ شده نیز در رایانه های نسل اول و دوم استفاده شد. برای این کار ، یک کارت مخصوص تهیه شده با یک چک در داخل عرشه درج شده قرار داده شده است. اگر دستگاه ورودی خیلی مطمئن نبود (یا عرشه خیلی بزرگ بود) ، ممکن است خطایی رخ دهد. برای تصحیح آن ، روش ورود مجدداً تکرار شد تا اینکه محاسبه شده محاسبه شده با دستگاه ذخیره شده در کارت مطابقت داشته باشد. این طرح نه تنها ناخوشایند است بلکه خطاهای مضاعف را نیز از دست می دهد. با توسعه کانالهای ارتباطی ، مکانیسم کنترل مؤثرتری مورد نیاز بود.

اولین راه حل نظری برای مشکل انتقال داده از طریق کانال های پر سر و صدا توسط کلود شانون ، بنیانگذار نظریه آماری اطلاعات ارائه شد. شانون ستاره زمان خود بود ، او یکی از نخبگان دانشگاهی ایالات متحده بود. وی به عنوان دانشجوی فارغ التحصیل ونوار بوش ، در سال 1940 جایزه نوبل (که نباید با جایزه نوبل اشتباه گرفته شود) دریافت کرد ، به دانشمندان زیر 30 سال اهدا شد. در حالی که در آزمایشگاه های بل ، شانون تئوری ریاضی ارسال پیام (1948) را نوشت ، جایی که نشان داد اگر پهنای باند یک کانال بالاتر از آنتروپی منبع پیام باشد ، می توان پیام را رمزگذاری کرد تا بدون تأخیر ناخواسته منتقل شود. این نتیجه گیری در یکی از قضیه های اثبات شده توسط شانون موجود است ، معنای آن به این واقعیت می رسد که اگر کانالی با پهنای باند کافی وجود داشته باشد ، می تواند پیام را با تاخیر زمانی منتقل کند. علاوه بر این ، وی امکان نظری انتقال مطمئن را در صورت وجود نویز در کانال نشان داد. فرمول C \u003d W log ((P + N) / N) ، حکاکی شده بر روی یک اثر تاریخی متوسط \u200b\u200bبه شانون ، که در زادگاهش در میشیگان ساخته شده است ، با فرمول E \u003d mc 2 آلبرت انیشتین مقایسه می شود.

آثار شانون برای تحقیقات بیشتر در زمینه نظریه اطلاعات مواد غذایی ایجاد کرد ، اما آنها کاربرد مهندسی عملی نداشتند. انتقال از تئوری به عمل با تلاش ریچارد هامینگ ، همكار بل لابراتس شانون انجام شد كه به دلیل كشف كلاس كدی مشهور شد كه به آن "رمزهای هامینگ" معروف شده است. یک افسانه وجود دارد که اختراع کدهای Hamming آنها را به دلیل ناراحتی در کار با کارتهای سوراخ شده روی دستگاه محاسبه رله Bell Model V در اواسط دهه 40 برانگیخته است. در اواخر آخر هفته وقتی هیچ اپراتور وجود نداشت و او مجبور شد خود را با ورودی کار کند ، به او وقت داده شد تا روی دستگاه کار کند. همانطور که ممکن است ، اما Hamming کدهای پیشنهادی را ارائه می دهد که می توانند خطاها را در کانالهای ارتباطی ، از جمله خطوط انتقال داده در رایانه ها ، در درجه اول بین پردازنده و حافظه اصلاح کنند. کدهای هامینگ شواهدی از چگونگی تحقق احتمالات ذکر شده توسط قضایای شانون را ارائه می دهد.

هامینگ مقاله خود را در سال 1950 منتشر کرد ، اگرچه نظریه کدگذاری وی در گزارش های داخلی به سال 1947 باز می گردد. بنابراین ، برخی معتقدند که هامینگ را باید پدر نظریه کدگذاری دانست و نه شانون. با این حال ، جستجوی سابق در تاریخ فناوری بی فایده است.

آنچه مسلم است اینست که هامیینگ اولین کسی بود که کد اصلاح خطا (ECC) را پیشنهاد داد. اصلاحات جدید این کدها در کلیه سیستمهای ذخیره داده و تبادل بین پردازنده و حافظه اصلی استفاده می شود. یکی از انواع آنها ، کدهای Reed-Solomon در سی دی ها استفاده می شود و به شما امکان می دهد تا بدون ضربات و سر و صدایی ضبط کنید که می تواند باعث ایجاد خراش و ذرات گرد و غبار شود. نسخه های بسیاری از کدها ، ساخته شده بر اساس "Hamming" وجود دارد ، آنها در الگوریتم های رمزگذاری و تعداد بیت های چک تفاوت دارند. چنین کدها در ارتباط با توسعه ارتباطات فضایی از راه دور با ایستگاه های بین سیاره ای اهمیت ویژه ای به دست آورده اند ، برای مثال ، کدهای Reed-Muller وجود دارد ، که در آن 32 بیت کنترل برای هفت بیت اطلاعاتی یا 26 برای شش وجود دارد.

در میان جدیدترین کدهای ECC کدهای LDPC (کد بررسی با برابری کم تراکم) است. در حقیقت ، آنها سی سال شناخته شده اند ، اما علاقه خاصی به آنها دقیقاً در سالهای اخیر ، هنگامی که تلویزیون با کیفیت بالا شروع به توسعه کرد ، آشکار شد. کدهای LDPC 100٪ دقیق نیستند ، اما می توان میزان خطا را در حد دلخواه تنظیم کرد و از پهنای باند تا حد امکان استفاده کرد. "کدهای توربو" نزدیک به آنها هستند ، هنگام کار با اشیاء واقع در فضای عمیق و پهنای باند کانال محدود ، آنها موثر هستند.

نام ولادیمیر الکساندروویچ کوتلنیکوف کاملاً در تاریخ نظریه کد نویسی حک شده است. در سال 1933 در "مطالب مربوط به ارتباطات رادیویی برای نخستین کنگره همه اتحادیه در مورد بازسازی فنی ارتباطات" ، او کار "در پهنای باند هوا؟" و "سیم؟" نام کوتلنیکوف ، به عنوان برابر ، در عنوان یکی از مهمترین قضایای نظریه کدگذاری گنجانده شده است. این قضیه شرایطی را تعریف می کند که تحت آن سیگنال منتقل شده بدون از دست دادن اطلاعات قابل بازیابی است.

این قضیه با نامهای مختلفی از جمله "قضیه WKS" خوانده می شود (مخفف WKS از ویتاکر ، کوتنیکف ، شانون گرفته شده است). برخی منابع هم از قضیه نمونه برداری Nyquist-Shannon و هم از قضیه نمونه گیری Whittaker-Shannon استفاده می کنند ، و در کتابهای درسی دانشگاه روسی ، رایج ترین "قضیه Kotelnikov" است. در حقیقت ، قضیه تاریخ طولانی تری دارد. قسمت اول آن در سال 1897 توسط ریاضیدان فرانسوی امیل بورل اثبات شد. ادموند ویتاکر در سال 1915 سهم خود را داد. در سال 1920 ، Kinnosuki Ogura ژاپنی اصلاحاتی را در تحقیق ویتاکر منتشر کرد و در سال 1928 هری نیکویست آمریکایی اصول دیجیتالی کردن و بازیابی سیگنال آنالوگ را روشن کرد.

کلود شانون (1916 - 2001) از سالهای مدرسه علاقه برابر به ریاضیات و مهندسی برق نشان داد. در سال 1932 وارد دانشگاه میشیگان شد ، در سال 1936 - در انستیتوی فناوری ماساچوست ، که از آنجا فارغ التحصیل شد در سال 1940 ، با دریافت دو درجه - فوق لیسانس مهندسی برق و دکترای ریاضیات. در سال 1941 ، شانون به آزمایشگاه های بل پیوست. در اینجا او شروع به توسعه ایده هایی کرد که بعداً منجر به نظریه اطلاعات شد. در سال 1948 ، شانون مقاله ای را با عنوان "تئوری ریاضی ارتباطات" منتشر کرد ، که در آن ایده های اصلی دانشمند تدوین شده ، به ویژه تعیین میزان اطلاعات از طریق آنتروپی ، و همچنین یک واحد اطلاعات را پیشنهاد می کند که انتخاب دو گزینه به همان اندازه محتمل را تعیین می کند ، یعنی چیزی که بعداً کمی خوانده شد. ... در سال 1957-1961 ، شانون مقالاتی را منتشر کرد که در آن اثبات قضیه ظرفیت کانالهای ارتباطی پر سر و صدا ، که اکنون نام او را دارد ، اثبات کرد. در سال 1957 ، شانون به عنوان استادی در انستیتوی فناوری ماساچوست ، از آنجا 21 سال بعد بازنشسته شد. شانون در "بازنشستگی شایسته" خود ، کاملاً تسلیم اشتیاق دیرینه خود برای دستکاری شد. او چندین ماشین دستکاری ساخت و حتی یک تئوری کلی در مورد دستکاری ساخت.

ریچارد هامینگ (1915 - 1998) تحصیلات خود را در دانشگاه شیکاگو شروع کرد و در آنجا در سال 1937 لیسانس دریافت کرد. وی در سال 1939 مدرک کارشناسی ارشد خود را از دانشگاه نبراسکا و دکترای ریاضیات خود را از دانشگاه ایلینویز دریافت کرد. در سال 1945 ، هامینگ به عنوان بخشی از پروژه منهتن ، یک پروژه تحقیقاتی گسترده در مقیاس بزرگ دولت ، برای ایجاد بمب اتمی شروع به کار کرد. در سال 1946 ، هامینگ به آزمایشگاه بل بل پیوست و در آنجا با کلود شانون همکاری کرد. در سال 1976 ، هامینگ صندلی را در مدرسه فارغ التحصیلان نیروی دریایی در مونتری ، کالیفرنیا دریافت کرد.

اثری که باعث شهرت وی شده است ، مطالعه بنیادی رمزهای کشف و تصحیح خطا ، توسط Hamming در سال 1950 منتشر شد. در سال 1956 ، او روی یكی از اصلی ترین نسخه های اصلی IBM 650 كار كرد و كار او پایه و اساس یك زبان برنامه نویسی را ایجاد كرد كه بعداً به زبانهای برنامه نویسی سطح بالایی تبدیل شد. IEEE با شناخت موفقیت های هامینگ در علم رایانه ، مدال خدمات برجسته ای را برای نظریه انفورماتیک و سیستم ها ایجاد کرد که نام وی را بر آن گذاشت.

ولادیمیر کوتلنیکوف (1908 - 2005) در سال 1926 وارد دانشکده مهندسی برق دانشکده فنی عالی مسکو به نام N.E.Bauman (MVTU) شد ، اما فارغ التحصیل موسسه مهندسی برق مسکو (MEI) شد که از MVTU به عنوان یک مؤسسه مستقل جدا شد. در طول تحصیلات تکمیلی (1931-1931) ، کوتلنیکف ریاضیاتی فرمول و اثبات "قضیه شمارش" ، که بعداً به نام او نامگذاری شد. كوتلنیكف پس از فارغ التحصیلی از دانش آموختگی در سال 1933 ، در حالی كه همچنان در مؤسس Engineering مهندسی نیروگاه مسكو به تدریس می پرداخت ، در مؤسسه تحقیقاتی علوم تحقیقات مرکزی (TsNIIS) به كار رفت. در سال 1941 ، V.A.Kotelnikov بیانیه واضحی را در مورد آنچه نیازمند یک سیستم ریاضی غیرقابل رمز شدن است ، راضی کرد و اثبات عدم امکان رمزگشایی آن را ارائه داد. در سال 1944 ، كوتلنیكف سمت استاد ، رئیس دانشكده مهندسی رادیو MPEI را گرفت ، جایی كه تا سال 1980 مشغول به كار بود. در سال 1953 ، در سن 45 سالگی ، كوتنیكف بلافاصله به عنوان عضو كامل آكادمی علوم اتحاد جماهیر شوروی انتخاب شد. از سال 1968 تا 1990 ، V.A.Kotelnikov همچنین استاد ، رئیس بخش انستیتوی فیزیک و فناوری مسکو بود.


نظریه کدگذاری


کدگذاری مفاهیم اساسی.

از زمان های بسیار قدیم روش های مختلف کد نویسی در تمرین بشر بسیار مورد استفاده قرار گرفته است. برای مثال ، نماد موقعیت دهدهی راهی برای رمزگذاری اعداد طبیعی است. روش دیگر رمزگذاری اعداد طبیعی ، اعداد رومی است ، و این روش از لحاظ تصویری و طبیعی تر ، واقعاً انگشت - I ، پنج - V ، دو پنج - X است. با این وجود ، با این روش رمزگذاری ، انجام عملیات حسابی بر روی تعداد زیادی دشوارتر است ، بنابراین با استفاده از روش مورد نظر تهیه شد برنامه نویسی بر اساس نماد اعشاری موقعیتی. از این مثال می توان نتیجه گرفت که روشهای مختلف کد نویسی دارای ویژگیهای خاصی هستند که ذاتاً برای آنها وجود دارد ، که بسته به اهداف کدگذاری ، می تواند یا مزیت یک روش رمزگذاری خاص یا ضرر آن باشد.

روشهای رمزگذاری عددی اشیاء هندسی و موقعیت آنها در فضا به طور گسترده ای شناخته شده است: مختصات دکارتی و مختصات قطبی. و این روش های کدگذاری در ویژگی های خاص ذاتی آنها متفاوت است.

تا قرن بیستم ، روشها و ابزارهای برنامه نویسی نقش مهمی را ایفا می کردند ، اما با ظهور رایانه ها ، اوضاع اساساً تغییر کرد. برنامه نویسی به طور گسترده ای در فناوری اطلاعات مورد استفاده قرار می گیرد و اغلب برای حل انواع مختلف مشکلات از جمله موارد اساسی است:

- ارائه داده هایی از ماهیت دلخواه (اعداد ، متن ، گرافیک) در حافظه کامپیوتر.

- انتقال بهینه داده از طریق کانالهای ارتباطی.

- محافظت از اطلاعات (پیام ها) از دسترسی غیرمجاز؛

- اطمینان از مصونیت صوتی هنگام انتقال داده از طریق کانالهای ارتباطی.

- فشرده سازی اطلاعات.

از نظر تئوری اطلاعات ، کد نویسی فرآیندی است برای مقایسه بدون ابهام از الفبای منبع پیام و مجموعه مشخصی از نمادهای شرطی ، مطابق با یک قاعده خاص انجام می شود ، و یک کد (الفبای کد) یک مجموعه کامل (مجموعه) از انواع مختلف نمادهای شرطی (نماد کد) است که می تواند برای آن استفاده شود رمزگذاری پیام اصلی و با قانون رمزگذاری داده شده امکان پذیر است. به تعداد نمادهای مختلف کد که الفبای کد را تشکیل می دهند حجم کد یا حجم الفبای کد گفته می شود. بدیهی است که حجم الفبای کد نمی تواند از حجم الفبای پیام اصلی رمزگذاری شده کمتر باشد. بنابراین ، رمزگذاری تبدیل پیام اصلی به مجموعه یا دنباله ای از نمادهای کد است که بیانگر پیام منتقل شده از طریق کانال ارتباطی است.

کدگذاری بسته به نوع نمایش نمادهای کد می تواند عددی (دیجیتال) و غیر عددی باشد: به ترتیب در هر سیستم عددی یا برخی اشیاء یا علائم دیگر.

در اکثر موارد ، نمادهای کد یک مجموعه یا دنباله ای از ساده ترین مؤلفه ها است ، به عنوان مثال ، دنباله ای از اعداد در نمادهای کد یک کد عددی ، که عناصر یک سمبل کد نامیده می شوند. محل یا تعداد ترتیب یک عنصر در یک رمزگذار با توجه به موقعیت آن تعیین می شود.

به تعداد عناصر یک شخصیت کد که برای نشان دادن یک شخصیت از الفبای منبع پیام اصلی استفاده می شود مقدار کد گفته می شود. اگر مقدار کد برای همه نمادهای الفبای پیام اصلی یکسان باشد ، پس از آن کد یکنواخت خوانده می شود ، در غیر این صورت - ناهموار. تعداد عناصر موجود در نماد کد را گاهی به طول نماد کد می گویند.

از نظر افزونگی ، همه کدها را می توان به کدهای غیر زائد و کدهای اضافی تقسیم کرد. در کدهای اضافی ، به دلیل استفاده کارآمد تر از عناصر باقیمانده ، می توان تعداد عناصر نمادهای کد را کاهش داد ، در کدهای غیر افزایشی ، کاهش تعداد عناصر در نمادهای کد غیرممکن است.

مشکلات کد نویسی در صورت عدم تداخل و در حضور آنها تفاوت چشمگیری دارد. بنابراین ، بین کدگذاری موثر (آنتروپی) و کدگذاری تصحیح (تصحیح خطا) تمایز قائل می شود. با کدگذاری کارآمد ، کار دستیابی به نمایش نمادهای الفبای منبع پیام با حداقل تعداد عناصر نماد کد به طور متوسط \u200b\u200bبه ازای هر سمبل الفبای منبع پیام با کاهش افزونگی کد است ، که منجر به افزایش سرعت انتقال پیام می شود. و با کدگذاری اصلاحی (تصحیح خطا) ، وظیفه کاهش احتمال خطاها در انتقال نمادهای الفبای اصلی با تشخیص و تصحیح خطاها با معرفی افزونگی اضافی کد است.

وظیفه جداگانه برنامه نویسی محافظت از پیام ها از دسترسی غیرمجاز ، تحریف و تخریب است. با این نوع رمزگذاری ، پیام ها به گونه ای کدگذاری می شوند که حتی با دریافت آنها ، یک مهاجمی قادر به رمزگشایی آنها نخواهد بود. فرایند این نوع رمزگذاری پیام را رمزگذاری (یا رمزگذاری) می نامند و فرآیند رمزگشایی را رمزگشایی (یا رمزگشایی) می نامند. پیام رمزگذاری شده به خودی خود رمزگذاری شده (یا به سادگی رمزگذاری) گفته می شود و به روش رمزگذاری استفاده شده رمزنگاری گفته می شود.

اغلب اوقات ، روش های رمزگذاری در یک کلاس جداگانه متمایز می شوند ، که امکان ساخت (بدون از بین رفتن اطلاعات) کدهای پیام را می دهند که در مقایسه با پیام اصلی ، دارای طول کمتری هستند. این تکنیک های رمزگذاری به روش های فشرده سازی یا بسته بندی داده ها گفته می شود. کیفیت فشرده سازی با نسبت فشرده سازی تعیین می شود ، که معمولاً به صورت درصد اندازه گیری می شود و نشان می دهد که چه مقدار از پیام رمزگذاری شده از نسخه اصلی کوتاهتر است.

در پردازش خودکار اطلاعات با استفاده از رایانه ، به طور معمول ، از رمزگذاری عددی (دیجیتالی) استفاده می شود و طبعاً این سوال برای توجیه سیستم شماره مورد استفاده ایجاد می شود. در واقع با کاهش پایه سیستم شماره ، الفبای عناصر نمادهای کد ساده می شود ، اما نمادهای کد افزایش یافته است. از طرف دیگر هرچه پایه سیستم عدد بزرگتر باشد ، تعداد رقم های مورد نیاز برای نشان دادن یک نماد کد کمتر و در نتیجه زمان کمتری برای انتقال آن نیز خواهد بود ، اما با رشد پایه سیستم شماره ، الزامات مربوط به کانالهای ارتباطی و ابزارهای فنی تشخیص سیگنالهای ابتدایی به میزان قابل توجهی افزایش می یابد. مربوط به عناصر مختلف نمادهای کد. به طور خاص ، کد عددی که در سیستم شماره باینری نوشته شده است به طور متوسط \u200b\u200bتقریباً 3.5 برابر بیشتر از کد اعشاری است. از آنجا که در کلیه سیستمهای پردازش اطلاعات ، بایستی آرایه های اطلاعاتی بزرگ در قالب اطلاعات عددی ذخیره شود ، بنابراین یکی از معیارهای اساسی برای انتخاب الفبای عناصر کاراکترهای کد عددی (یعنی مبنای سیستم عددی مورد استفاده) به حداقل رساندن تعداد عناصر الکترونیکی در دستگاههای ذخیره سازی و همچنین آنهاست سادگی و قابلیت اطمینان.

هنگام تعیین تعداد عناصر الکترونیکی مورد نیاز برای رفع هر یک از عناصر نمادهای کد ، لازم است از این فرضیه توجیه شده نتیجه بگیریم که این امر به تعداد ساده ترین عناصر الکترونیکی (به عنوان مثال ترانزیستور) برابر با پایه سیستم شماره نیاز دارد. آ... سپس برای ذخیره سازی در برخی از دستگاه ها نعناصر شخصیت کد مورد نیاز خواهد بود معناصر الکترونیکی:

M \u003d a n. (2.1)

بیشترین تعداد متمایز قابل ثبت در این دستگاه است ن:

N \u003d a n.

گرفتن لگاریتم این عبارت و بیان از آن ن ما گرفتیم:

ن\u003d ln ن / لوگاریتم آ.

تبدیل فرم (2.1) به فرم

م= لوگاریتم ن / لوگاریتم آ(2.2)

می توان در چه پایه لگاریتم ها تعیین کرد آمقدار عناصر مبرای یک مقدار حداقل خواهد بود ن... تمایز توسط آتابع M \u003d f (a)و برابر با مشتق آن با صفر ، دریافت می کنیم:

بدیهی است ، برای هر محدود آ

لوگاریتم ن / ln 2 ≠ ≠

و بنابراین

لوگاریتم آ -1 = 0,

از جایی که a \u003d e 2.7.

از آنجا که ردیف فقط می تواند یک عدد صحیح باشد ، پس وبرابر با 2 یا 3 انتخاب می شود. به عنوان مثال ، اجازه دهید حداکثر ظرفیت دستگاه ذخیره سازی را تعیین کنیم ن\u003d 10 6 شماره. سپس ، برای پایه های مختلف سیستم های شماره ( و) تعداد عناصر ( م) در چنین وسیله ذخیره سازی مطابق با بیان (2.2) موارد زیر خواهد بود: (جدول 2.1):

جدول 2.1.

و
م 39,2 38,2 39,2 42,9 91,2

بنابراین ، اگر از به حداقل رساندن مقدار تجهیزات پیش برویم ، سودمندترین سیستم های باینری ، سه قلو و کواترنر هستند که در این پارامتر نزدیک هستند. اما از آنجا که اجرای فنی دستگاههایی که در سیستم شماره باینری کار می کنند بسیار ساده تر است ، بیشترین توزیع در کدگذاری عددی کدهایی است که بر اساس سیستم شماره پایه 2 ساخته شده اند.

به طور کلی، کدگذاری - هرگونه تبدیل یک پیام به یک سیگنال با برقراری مکاتبات متقابل بین آنها. به معنای باریک کدگذاری - تبدیل یک پیام گسسته به دنباله ای از نمادهای کد طبق یک قانون خاص. مجموعه همه دنباله های کد ( کد ترکیب یا کلمات) ، برای یک قانون رمزگذاری معین ، ممکن است کد... قانون رمزگذاری را می توان با یک جدول کد با الفبای پیام های رمزگذاری شده و ترکیب کد مربوطه بیان کرد. به مجموعه نمادهایی که توالی کد را تشکیل می دهند گفته می شود الفبای کد، و تعداد آنها (اندازه الفبای کد) است کد پایه.

قوانین برنامه نویسی عناصر پیام - قوانین ضبط تعداد مختلف در
سیستم عددی -ary تمیز دادن دودویی (
) و چند موقعیتی (
شخصی
)کدها. طول کدکد - تعداد رقم موجود در آن . برای انتقال پیام ها با کد باینری ، تنها دو سیگنال متفاوت کافی است. بنابراین نمادها و می توان با نوسانات فرکانس های مختلف یا توسط پالس های جریان قطبی متفاوت منتقل شد. فاصله چکش بین دو کدبانوی و در دو مرحله یافت می شوند. کلمات جستجو را کمی بیت اضافه کنید
سیستم عددی -ary بدون انتقال به مهمترین بیت ( علاوه بر پایه کد مدولو
نشان داده شده توسط ) مقادیر حاصل به آن اضافه می شود
سیستم شماره ای:

, (1.1)

جایی که و - به همین نام (
) بیت کلمات کد و ، به ترتیب. بنابراین،
,
,
و
در
... برای کد باینری ، فاصله برابر است با تعدادی از رقم هایی که در آن کلمات است و متفاوت هستند. فاصله کد - کمترین مقدار برای این کد ... که در برابر در کد فاصله بین هر دو کلمه یکسان است. تعداد عناصر غیروزو codeword برابر است با آن وزن .

1.2 طبقه بندی روشهای کدگذاری

در شکل طبقه بندی روش های برنامه نویسی داده شده است ... یکی از وظایف وی هماهنگی الفبای پیام با الفبای کانال است. هر مجموعه پیام می تواند به روش های مختلف رمزگذاری شود. بهترین کد مطابق با الزامات:

1) گیرنده می تواند پیام مبدأ ارسال شده از طریق خط ارتباط را بازیابی کند.

2) برای نشان دادن یک پیام ، به طور متوسط \u200b\u200b، حداقل تعداد کاراکترها لازم است.

اولین نیاز برآورده می شود برگشت پذیر کدها در آنها ، تمام کلمات کد متفاوت هستند و منحصر به فرد با پیام های مربوطه در ارتباط هستند. مقرون به صرفهکدها نیاز دوم را برآورده می کنند.

شکل. 1.1. طبقه بندی روشهای کدگذاری

هدف تاثیر گذار(آماریرمزگذاری برای افزایش سرعت انتقال اطلاعات و نزدیک شدن به این نرخ حداکثر ممکن است - پهنای باندکانال ارتباطی توافق عملکرد منبعپیام از پهنای باند کانال یکی از مهمترین وظایف برنامه نویسی است.

کد ها هستند اولیه(ساده یا ابتدایی) و ضد آزار و اذیت... کدهای ساده شامل کلیه کلمات کد با روش کدگذاری معین می باشد. تبدیل یک شخصیت از codeword به شخصیت دیگر به دلیل عمل تداخل ، رمزگذار جدیدی به شما می دهد. خطایی رخ می دهد که قابل تشخیص نیست. در کدهای تصحیح خطا ، فقط بخشی از کل کدبانک های ممکن استفاده می شود. کلمات مورد استفاده نامیده می شوند مجاز، بقیه - ممنوع است... برنامه نویسی ضد جاسوسی وفاداری انتقال پیام را بهبود می بخشد.

تمیز دادن رمزگذار (رمزگذارها) برای منبع اطلاعات و برای کانالارتباطات وظیفه اولی نشان دادن پیامها از نظر اقتصادی (به معنای حداقل تعداد متوسط \u200b\u200bکاراکترها) است و وظیفه دوم اطمینان از انتقال مطمئن پیامها است.

رمزگشاییشامل بازیابی پیام از نمادهای کد دریافتی است. رمزگشایی ( رمزگشایی) همراه با فرم های رمزگذار کدک. معمولاً کدک یک وسیله منطقی است.

اولیه (مازاد) از کدگذاری برای مطابقت با الفبای منبع با الفبای کانال استفاده می شود. سپس افزونگی منابع(بند 2.1 را ببینید) خروجی و ورودی رمزگذار یکسان است. این کدگذاری همچنین برای رمزگذاری اطلاعات منتقل شده و افزایش پایداری سیستم هماهنگ سازی استفاده می شود. در حالت دوم ، قانون کدگذاری به گونه ای انتخاب می شود که احتمال ظهور در خروجی رمزگذار دنباله طولانی که فقط شامل یا فقط از حداقل بود یک رمزگذار مشابه نامیده می شود تقلا کننده (از کلمه انگلیسی crscramble - برای مخلوط کردن).

ترمیم پیام منتقل شده در گیرنده همیشه تقریبی است. به برخی از اطلاعات مورد نیاز برای اطمینان از صحت بهبودی مورد نیاز گفته می شود ضروری. فشرده سازی (فشرده سازی) پیام ها(داده ها) - حذف کامل یا جزئی از آن (آنها) زائد اطلاعات راه حل این مشکل حاصل می شود مقرون به صرفه کدگذاری فشرده سازی داده موجب صرفه جویی در فضای ذخیره سازی و پهنای باند می شود. با کدگذاری اقتصادی ، افزونگی منبع ایجاد شده توسط خروجی رمزگذار کمتر از ورودی رمزگذار است. برنامه نویسی اقتصادی در رایانه ها استفاده می شود. سیستم های عامل شامل برنامه های فشرده سازی داده ها هستند ( کمپرسورهای پویا و بایگانی کنندگان) بنابراین استاندارد
روی مودمبرای ارتباط بین رایانه ها از طریق شبکه تلفن عمومی ، فشرده سازی در تعداد مراحل پردازش داده ها (به پیوست مراجعه کنید).

ضد آزار و اذیت (اضافی) از کدگذاری برای تشخیص و تصحیح خطایی که هنگام انتقال پیام از طریق کانال رخ می دهد استفاده می شود. سپس افزونگی منبع ایجاد شده توسط خروجی رمزگذار از افزونگی منبع در ورودی رمزگذار بیشتر است. این برنامه نویسی در سیستم های مختلف ارتباطی ، در حین ذخیره و انتقال داده ها در شبکه های رایانه ای ، در تجهیزات دیجیتال صوتی و تصویری رایج است.

تعداد بیت ها در رمزگذارهای مختلف کد می تواند یکسان یا متفاوت باشد. بر این اساس ، تشخیص لباس فرمو ناهموار. ناجور کدها استفاده از کدهای یکنواخت ، ساخت دستگاههای چاپ مستقیم اتوماتیک را ساده کرده و نیازی به انتقال کاراکترهای جداکننده بین کلمات کد ندارد. تعداد رقم ها در هر کلمه کد یکنواخت - کمی بودن کد... برای یک کد یکسان ، تعداد ترکیبات ممکن است
.

مثال 1.2.1.کد یکدست اولیه که در تلگراف استفاده می شود کد Baudot است عناصر باینری در هر کلمه (

) تعداد کل کلمات
... این برای کد نویسی کافی است
حروف الفبای روسی ، اما برای انتقال پیام حاوی حروف ، اعداد و علائم مختلف متعارف (دوره ، کاما ، علاوه بر آن ، ضرب و غیره) کافی نیست. سپس می توانید "کد بین المللی شماره 2" (МТК-2) را با اصل ثبت نام اعمال کنید. همین حرفهاست
بسته به موقعیت ثبت ، یک کلمه کد ابتدایی تا سه بار قابل استفاده است: روسی ، لاتین و دیجیتال. تعداد کل علائم مختلف است
که برای رمزگذاری تلگرام کافی است. برای انتقال داده ها توصیه می شود
کد عنصر МТК-5 .

که در کدهای ناهموارکلمات کد نه تنها در ترتیب کاراکترها بلکه در تعداد آنها نیز متفاوت است. این کدها به جداکننده مخصوصی نیاز دارند که نشانگر پایان یک و شروع رمزگذار دیگر است ، یا به گونه ای ساخته شده اند که هیچ رمزگذاری سرآغاز دیگری نیست. پیشوند (غیرقابل برگشت) کدها شرط آخر را برآورده می کنند. توجه داشته باشید که کد یکنواخت غیرقابل برگشت است.

راحت است که ساختار کد را در فرم نشان دهید شمردن(درخت کد) ، که در آن از هر کدام گره تعداد شاخه ها برابر با پایه کد منتشر می شود (برای کد باینری ، برای مثال ، یک پله به معنی است ، پایین بروید - ).

مثال 1.2.2.کد مورس نمونه بارز کد باینری ناهموار است ... این شامل نمادها است و فقط در دو ترکیب استفاده می شود - به صورت تک ( و ) یا به صورت سه گانه (
و
) سیگنال مربوط ، یک نقطه نامیده می شود ، و
- خط تیره. نماد به عنوان کاراکتر جداکننده نقطه از خط ، نقطه از نقطه و خط تیره استفاده می شود. جمع
به عنوان علامت جداسازی رمزگذار استفاده می شود.

یک الگوریتم ساده برای به دست آوردن کدهای پیشوند ناهموار توسط شانون و فانو پیشنهاد شد. الگوریتم شانون-فنو برای کد باینری - موارد زیر. نمادهای الفبای منبع به ترتیب نوشته شده اند بدون اینکه احتمال وقوع آنها زیاد شود. سپس شخصیت ها به هم تقسیم می شوند قطعات به گونه ای که مبالغ احتمالات نمادها در هر یک از این قسمت ها تقریباً یکسان باشد. همه نمادها
اوه (
اوه) قطعات اعتبار داده می شوند () مانند
شخصیت هفتم کلمه کد. هر کدام از
قطعات x (در صورت حاوی موارد بیشتر)
نماد هفتم) در صورت امکان به دو بخش مساوی تقسیم می شود. همان قانون رمزگذاری برای آنها صدق می کند. این روند تا زمانی که هر یک از قسمتهای بدست آمده حاوی تکرار باشد
به نماد تقسیم قسمتهایی با "احتمال تقریباً برابر" همیشه روشی غیرقابل توصیف نیست. با جابجایی از برنامه نویسی کاراکتر به کدگذاری توالی شخصیت های پیام ، می توان خطاهای کد نویسی را کاهش داد و از ساختن کد استفاده کرد. با بزرگ کردن الفبای (بند 4.2 را ببینید).

مثال 1.2.3.اجازه دهید الفبای
منبع از شخصیت ها تشکیل شده است ,
... احتمال ظهور نمادها در خروجی منبع به ترتیب ، است
,
,
,
,
و
... روش Shannon-Fano برای ساختن یک کد ناهموار بدون بزرگ کردن الفبای منبع در جدول آورده شده است. 1.1 .

جدول 1.1. کدگذاری منبع با روش شانون-فانو

انتخاب شخصیت های کد ناهموار

در
در مرحله سوم ، مجموعه نمادها را بر اساس تقسیم کنید قطعات: و
؛ روی
اهم - و
؛ روی
خوردن -
و
؛ روی
اهم - و ,و ... به احتمال زیاد نمادهای منبع به رمزنگاری هایی با طول کوتاه تر اختصاص می یابد ... یک کد پیشوند ساخته شده است. میانگین طول کدکد (تعداد متوسط \u200b\u200bنماد کد در هر نماد منبع)
.

کدهای ضد جام جم هستند توده و مداوم... در کدگذاری بلوک ، دنباله شخصیت منبع به بخش ها تقسیم می شود. هر بخش با یک توالی خاص (بلوک) از نمادهای کد مطابقت دارد - یک کلمه کد. مجموعه ای از کلمات کد ممکن است با یک روش کدگذاری معین ، کد بلوک را تشکیل دهد. که در لباس فرم (ناهموار. ناجور) کد ، طول بلوک ثابت (متغیر) است. کدهای ضد جامد معمولاً یکنواخت هستند.

کدهای بلوک هستند قابل جدا شدن و جدا نشدنی... در کد تقسیم
طول شخصیت ها را می توان با توجه به هدفشان به تقسیم کرد اطلاعات(حمل اطلاعات در مورد پیام) و
تایید... سرعت کد
... تعداد کل کلمات موجود در کد است
و
- تعداد کلمات مجاز. نمادهای اطلاعاتی و چک را نمی توان در کدهای جدا از هم تفکیک کرد. به عنوان مثال ، اینها کدهایی با وزن ثابتو کدهای مبتنی بر ماتریس Hadamard(بند 6.3 را ببینید). در کد باینری با وزن ثابت ، کدبانوها دارای همان شماره هستند ... در کد استاندارد تلگراف شماره 3 ، هر یک از آنها حاوی سه مورد است و چهار .

کدهای جدا از هم هستند خطی و غیرخطی... در کدهای خطی ، جمع تمام شد
(نگاه کنید به (1.1))
x از هر کدبانک یک رمزنگاری با همان کد را تشکیل می دهد. کد خطی نامیده می شود نظاماگر اولین کاراکترهای هرکدام از رمزگذارهای آن اطلاعاتی هستند و بقیه
- تایید. زیر کلاس کدهای خطی - کدهای حلقوی(به صفحه 6.5 مراجعه کنید). در آنها ، تمام مجموعه های ایجاد شده توسط تغییر چرخه ای از نمادها در هر کدبانوی ، کدبانوی یک کد هستند. این خاصیت ایجاد کدک را آسانتر می کند ، خصوصاً هنگام تشخیص و رفع خطاهای منفرد. نمونه هایی از کدهای حلقوی عبارتند از: کد های همینگ ، کدهای Bose-Chowdhury-Hockingham (کدهای BCH) و موارد دیگر. مثال کد باینری غیرخطی - کد برگر (به بند 1.4 مراجعه کنید) . در آن ، کاراکترهای چک با علامت دودویی شماره تشکیل می شوند در دنباله ای از نمادهای اطلاعات

رمزگذاری و رمزگشایی مداوم بیش از یک دنباله مداوم از نمادها بدون تقسیم آن در بلوک ها انجام می شود. در میان موارد مداوم ، بیشترین کاربرد را دارد کدهای محاوره ای(بند 6.8 را ببینید).

کانالهای ارتباطی را با مستقل و خطاهای گروه بندی... بر این اساس ، کدهای تصحیح خطا را می توان به یکدیگر تقسیم کرد class: رفع اشکالات مستقل و رفع بسته ها اشتباهات. کدهای کارآمد بسیاری برای رفع دومی وجود دارد. در عمل ، استفاده از کدهایی که خطاهای مستقل را تصحیح می کنند ، بهمراه تر است interleaver(خطاهای تزئینات) سپس نمادهای رمزگذار به طور متوالی منتقل نمی شوند بلکه با نمادهای سایر رمزگذارها مخلوط می شوند. اگر فاصله بین کاراکترهای هر کدبورد بزرگتر از "حافظه" کانال باشد ، خطاها در یک کلمه مستقل می شوند. این امکان استفاده از کدهایی را دارد که خطاهای مستقل را تصحیح می کنند.

ضمیمه اصول کدهای ساختاری و فشرده سازی داده ها را به عنوان نمونه شبکه های رایانه ای نشان می دهد.

نظریه کدگذاری - بررسی خصوصیات کدها و مناسب بودن آنها برای دستیابی به یک هدف معین. برنامه نویسی اطلاعات فرآیند تبدیل آن از شکلی است که برای استفاده مستقیم به شکلی مناسب برای انتقال ، ذخیره سازی ، پردازش خودکار و حفظ از دسترسی غیرمجاز مناسب است. مشکلات اصلی نظریه کدگذاری شامل موارد مربوط به کدگذاری یک به یک و پیچیدگی اجرای کانال ارتباطی در شرایط معین است. در همین راستا ، نظریه کدگذاری عمدتاً زمینه های زیر را در نظر می گیرد: فشرده سازی داده ها ، تصحیح خطای رو به جلو ، رمزنگاری ، رمزگذاری فیزیکی ، تشخیص خطا و تصحیح.

قالب

این دوره شامل 10 هفته دانشگاهی است. برای حل موفقیت آمیز اکثر کارها از آزمونها ، کافی است که به مطالب توصیف شده در سخنرانی ها تسلط پیدا کنید. سمینارها همچنین با مشکلات پیچیده تری روبرو هستند که می تواند شنونده ای را که از قبل با اصول اولیه آشنا است علاقه مند کند.

برنامه دوره

  1. کدگذاری حروف. شرایط کافی برای رمزگشایی ابهام: یکنواختی ، پیشوند ، پسوند. تشخیص نامشخص: تست مارکوف. تخمین طول کلمه رمزگشایی مبهم.
  2. نابرابری کارد و مک میلان؛ وجود یک کد پیشوند با مجموعه ای از طول کلمات. پیامد جهانی بودن کدهای پیشوند.
  3. کد هایی با حداقل افزونگی: بیانیه مشکل ، قضیه کاهش هافمن.
  4. وظیفه تصحیح و تشخیص خطاها. تفسیر هندسی. انواع خطاها. معیارهای همینگ و لونشتاین. فاصله کد وظایف اصلی نظریه کدهای تصحیح خطا.
  5. کدهای Varshamov-Tenengolts ، الگوریتم هایی برای تصحیح خطاهای منفرد از کنار گذاشتن و درج کاراکترها.
  6. ساده ترین مرزها برای پارامترهای کدهایی که خطاهای جایگزینی را تصحیح می کنند: مرزهای بسته بندی کروی ، Singleton ، Plotkin.
  7. تعبیه فضاهای متریک. تعداد بردارها در فضای اقلیدسی. مرز الیز - بسالیگو.
  8. کدهای خطی. تعاریف ماتریس های مولد و بررسی کنید. اتصال فاصله کد با ماتریس برابری. مرز ورشاموف - گیلبرت. کدگذاری سیستماتیک. رمزگشایی سندرم. کدهای چکش زدن
  9. کد باقیمانده مرز Greismer-Solomon-Stiffler.
  10. پیچیدگی مشکل رمزگشایی برای کدهای خطی: مشکل NCP (نزدیکترین مشکل کدگذاری).
  11. کدهای رید سلیمان. الگوریتم رمزگشایی Berlekamp-Welch.
  12. کدهای Reed-Muller: فاصله کد ، الگوریتم رمزگشایی اکثریت.
  13. انواع کلیات ساخت و سازهای رید - مولر. لیپتون-لیمو ، شوارتز-زیپل. مفهوم کدهای هندسی جبری.
  14. نمودارهای گسترش دهنده اثبات احتمالی وجود بسط دهنده ها. کدهای مبتنی بر نمودارهای دو طرفه. فاصله کد از کدهای مبتنی بر Expander. الگوریتم رمزگشایی Sipser-Spielman.
  15. قضایای شانون برای یک مدل کانال احتمالی.
  16. پیوست کدهای تصحیح خطا. پروتکل تصادفی در پیچیدگی ارتباطات. رمزنگاری مک لیلی. مجموعه های همگن (شبه تصادفی) بر اساس کدها ، برنامه های آنها برای ایجاد تصادف در مشکل MAX-SAT.

شاخه ای از تئوری اطلاعات است که روش های شناسایی پیام ها را با سیگنال هایی که آنها را منعکس می کند ، مطالعه می کند. وظیفه تئوری کدگذاری منطبق کردن منبع اطلاعات با کانال ارتباطی است.

هدف برنامه نویسی هم اطلاعات گسسته و هم پیوسته است که از طریق منبع اطلاعات به مصرف کننده می رسد. مفهوم رمزگذاری به معنای تبدیل اطلاعات به شکلی است که برای انتقال از طریق کانال ارتباطی خاص مناسب باشد.

عملكرد معكوس - رمزگشايي - شامل بازگرداندن پيام دريافت شده از فرم رمزگذاري شده به يك مورد عمومي پذيرفته شده است كه در دسترس مصرف كننده است.

در تئوری رمزگذاری چندین جهت وجود دارد:

  • برنامه نویسی استاتیک یا کارآمد؛
  • کد نویسی ایمنی از سر و صدا؛
  • کدهای اصلاحی؛
  • کدهای حلقوی
  • کدهای حسابی.

با ظهور سیستم های کنترل ، به ویژه رایانه ها ، نقش رمزگذاری به طور قابل توجهی افزایش یافته و تغییر کرده است ، زیرا بدون کدگذاری انتقال اطلاعات غیرممکن است. اخیراً ، در رابطه با توسعه سیستم های ارتباطی و استفاده گسترده از فناوری رایانه ای برای پردازش و ذخیره اطلاعات ، زمینه جدیدی از دانش ایجاد شده است - امنیت اطلاعات.

برنامه نویسی روشی جهانی برای نمایش اطلاعات در طول ذخیره سازی ، پردازش و انتقال آن در قالب سیستم مکاتبات بین سیگنال ها و عناصر پیام است که به کمک آن می توان این عناصر را برطرف کرد.

Code یک قاعده ای برای انتقال نامشخص یک پیام از یک شکل نمادین از یک پیام به دیگری است که معمولاً بدون هیچ گونه گم شدن اطلاعات است.

اگر همه کدبانوها طول یکسانی داشته باشند ، کد را یکنواخت یا بلوک می نامند.

با الفبای انتزاعی منظور ما مجموعه ای از علائم گسسته سفارش یافته است.

کدگذاری حروف. الفبایی ، یعنی نامه با نامه ، کدگذاری می تواند توسط جدول کد تنظیم شود. کد تبدیل واقعی جایگزینی است.

در جایی که الفبای A ، مجموعه ای از کلمات تشکیل شده در الفبای B. مجموعه کدهای نامه به مجموعه کدهای ابتدایی گفته می شود. برای هر مجموعه پیام می توان از کدگذاری حروف الفبا استفاده کرد.

پردازش داده های رایانه ای مبتنی بر استفاده از کد دودویی است. این روش رمزگذاری جهانی بدون در نظر گرفتن منشا و محتوای آن برای هر گونه داده مناسب است.

رمزگذاری متن

متنها دنباله ای از کاراکترهای موجود در یک الفبای خاص هستند. رمزگذاری متن به رمزگذاری باینری الفبا می رود که بر اساس آن ساخته شده است. متداول ترین رمزگذاری بایت الفبا است. در این حالت حداکثر کاردینالیت الفبا 256 نویسه است. چنین الفبایی می تواند شامل دو مجموعه از حروف الفبا (به عنوان مثال روسی و لاتین) ، اعداد ، علائم نگارشی و ریاضی ، یک فضا و تعداد کمی از کاراکترهای اضافی باشد. نمونه ای از چنین الفبایی کد ASCII است.

با این حال ، مجموعه محدود 256 کد کاراکتر دیگر پاسخگوی نیازهای ارتباطی بین المللی نیست. سیستم رمزگذاری کاراکتر جهانی 16 بیتی UNICODE محبوبیت زیادی پیدا می کند.

قدرت الفبای موجود در سیستم کدگذاری UNICODE 216 \u003d 65 536 کد مختلف است که از این میان 63 484 کد مطابق با شخصیت های اکثر الفبای هستند و کدهای باقی مانده 2048 به نصف تقسیم می شوند و جدول 1024 ستون X 1024 خط را تشکیل می دهند. در این جدول بیش از یک میلیون سلول وجود دارد که می توانند بیش از یک میلیون شخصیت مختلف را در خود جای دهند. اینها نمادی از زبانهای "مرده" و همچنین سمبل هایی هستند که هیچ محتوای واژگانی ، نشانگرها ، علائم و غیره ندارند. برای نوشتن این شخصیت های اضافی یک جفت کلمه 16 بیتی لازم است (16 بیتی برای شماره خط و 16 بیتی برای شماره ستون).

بنابراین ، سیستم UNICODE یک سیستم رمزگذاری جهانی برای کلیه نمادهای سیستم نوشتن ملی است و توانایی گسترش قابل توجهی دارد.

رمزگذاری تصویر

نقشه ها ، تصاویر ، عکس ها رمزگذاری شده اند در قالب شطرنجی... در این نمای ، هر تصویر یک جدول مستطیلی از نقاط رنگ است. رنگ و روشنایی هر نقطه جداگانه به صورت عددی بیان می شود ، که اجازه می دهد تا از کد دودویی برای نمایش داده های گرافیکی استفاده شود.

مرسوم است که تصاویر سیاه و سفید را در مقیاس خاکستری نشان دهید ؛ برای این کار از مدل GreyScale استفاده شده است. اگر درخشندگی یک نقطه در یک بایت رمزگذاری شود ، می توان از 256 تن خاکستری مختلف استفاده کرد. این دقت با حساسیت چشم انسان و قابلیت های فناوری چاپ سازگار است.

در هنگام کدگذاری تصاویر رنگی ، رنگ اصلی رنگ در اجزای سازنده اعمال می شود ؛ برای این کار از مدل RGB استفاده می شود. تصویر رنگی روی صفحه با مخلوط کردن سه رنگ اصلی: قرمز (قرمز ، R) ، آبی (آبی ، B) و سبز (سبز ، G) به دست می آید.

هر پیکسل روی صفحه نمایش از سه عنصر نزدیک فاصله تشکیل شده است که با این رنگ ها می درخشند.

نمایشگرهای رنگی با استفاده از این اصل مانیتورهای RGB نامیده می شوند.

یک کد رنگ پیکسلی حاوی اطلاعاتی در مورد نسبت هر رنگ پایه است.

طرح شکل گیری رنگ

اگر هر سه مؤلفه از شدت (روشنایی) یکسانی برخوردار باشند ، می توان 8 رنگ مختلف را از ترکیبات آنها بدست آورد (23):

رنگ قهوه ای

شکل گیری رنگ ها در عمق رنگ 24 بیتی:

هرچه عمق رنگ بیشتر باشد ، دامنه رنگهای موجود گسترده تر و نمایش آنها در تصویر دیجیتالی دقیق تر است. یک پیکسل با عمق کمی برابر با یک فقط 2 حالت دارد (در قدرت اول) - دو رنگ: سیاه یا سفید. یک پیکسل با عمق کمی 8 دارای 28 یا 256 مقدار رنگ ممکن است. یک پیکسل با عمق کمی 24 واحد 224 درجه) یا 16.7 میلیون مقدار ممکن دارد. اعتقاد بر این است که تصاویر 24 بیتی حاوی 16.7 میلیون رنگ بطور دقیق رنگ های جهان اطراف ما را بازتولید می کنند. به طور معمول ، وضوح بیت در دامنه 1 تا 48 بیت / پیکسل مشخص می شود.

هنگام چاپ بر روی کاغذ ، از یک مدل رنگ کمی متفاوت استفاده می شود: اگر مانیتور از خود ساطع می کند ، رنگ در نتیجه اضافه شدن رنگ ها به دست می آید ، سپس رنگ ها نور را جذب می کنند ، رنگ ها کم می شوند. بنابراین ، از رنگ های فیروزه ای (C) ، سرخابی (M) و زرد (زرد ، Y) به عنوان اصلی استفاده می شود. علاوه بر این ، به دلیل عیوب رنگها ، معمولاً یک چهارم به آنها اضافه می شود - سیاه (سیاه ، K ، K). برای ذخیره اطلاعات در مورد هر رنگ ، و در این حالت ، بیشتر از 1 بایت استفاده می شود. این سیستم کدگذاری CMYK نام دارد.

نمای رنگی درشت تر از بیت های کمتری استفاده می کند. به عنوان مثال ، کدگذاری گرافیک رنگی با اعداد 16 بیتی High Color نام دارد. در این حالت ، به هر رنگ پنج رقم اختصاص داده می شود.

رمزگذاری صوتی و تصویری

تکنیک های کار با اطلاعات صوتی جدیدترین فن آوری رایانه است. یک روش رمزگذاری تحلیلی که برای هر سیگنال صوتی کاربرد دارد ، مبتنی بر تبدیل آنالوگ به دیجیتال است. سیگنال آنالوگ اصلی به عنوان دنباله ای از سیگنال های دیجیتال ضبط شده در کد باینری نمایش داده می شود. بیت تبدیل میزان داده های مربوط به یک سیگنال دیجیتال را تعیین می کند. هنگام پخش صدا ، تبدیل دیجیتال به آنالوگ معکوس را انجام دهید.

این روش کدگذاری حاوی یک خطا است ، به طوری که سیگنال تکثیر شده با کمی متفاوت است.

روش رمزگذاری سنتز جدولی فقط برای یک قطعه موسیقی قابل استفاده است. نمونه (نمونه) صداهای سازهای مختلف موسیقی در جداول تهیه شده ذخیره می شوند. کدهای عددی ابزار ، نت و مدت زمان را تعریف می کنند.

هنگام رمزگذاری سیگنال ویدیویی ، لازم است یک توالی از تصاویر (فریم) و صدا (آهنگ صدا) ضبط شود. قالب ضبط فیلم اجازه می دهد تا هر دو جریان داده در یک دنباله دیجیتال گنجانده شود.

زنگ

کسانی هستند که این خبر را قبل از شما می خوانند.
برای دریافت آخرین مقالات مشترک شوید.
پست الکترونیک
نام
نام خانوادگی
چگونه می خواهید The Bell را بخوانید
بدون اسپم