- •Тақырып №1. Кіріспе. Кодтардың шығу тарихы
- •Тақырып №2. Информацияның өлшемдері
- •Тақырып №3. Энтропия
- •Тақырып №4. Фано-коды.
- •Тақырып №5 Префикстіқ қасиет. Бірмәнділік
- •Тақырып №6. Ауыстыру тәсілдері
- •Тақырып №7. Алмастыру тәсілі
- •Тақырып №8. Периодты кілтпен берілген көп алфавитті ауыстыру шифры
- •Тақырып№10. Циклдық кодтар.
- •Тақырып№9.Сызықтық кодтар
- •Тақырып №11. Қаныққан кодтар.Кодтарды бағалау
- •Тақырып №12. Архиваторлар. Лемпель – Зив тәсілі
- •Тақырып №13. Хаффман коды
- •Тақырып №14. Арифметикалық кодтау
- •Тақырып №15. Сөздік әдістер
Тақырып №11. Қаныққан кодтар.Кодтарды бағалау
Қаныққан
кодтарда кодтық сөздердің саны
(1)
Егер
де n= 2t+1,=> M=
Ұзындығы 2m -1-ге тең Хеммингтың коды берілсін. Мұндай кодтар кез- келген бір қатені жөндейтінін білеміз. Сонымен
n=
2m-1,
t=1,
V=
m=3, n=7, M=16.
(4)-ші
теңдік бойынша екілік қаныққан кодтар
үшін
түрінде өрнектелуі керек.
1949 жылы Голей (23,12) кодын құрастырды. Бұл қаныққан код және ол үш қатені жөндейді. 1957 жылы Эллой қаныққан кодтарды зерттеп, зерттеу барысында комплекс сандарды, дифференциялдық теңдеулерді қолданып берілген теорияны алгебралық теңдеулер жүйесіне алып келді.
Бізге ұзындығы n- ге тең сөздер берілсін. Олардың ішіндегі кодтық сөздің ең кіші ара қашықтығы d -әріпімен берілсін. Осы ұзындығы n-ге тең сөздің ішінен кодтық сөздің санын қалай анықтауға немесе бағалауға болады. Оны біз M(n,d) деп белгілейміз.
(1)
Бұл формулада егер де r кез келген бір радиус болса, онда
Негізгі әдебиеттер: [1, 2, 9]
Қосымша әдебиеттер:[11, 12]
Тақырып №12. Архиваторлар. Лемпель – Зив тәсілі
Архиваторлар мағынасына байланысты 2 түрлі болады.
сығу архиваторы программа бойынша 2-лік мәліметтерді өлшемі аз файлға жазу.
архивтегі файлдарды қалпына келтіру.
Информацияларды сығу алгоритмдерді жалпы 2 түрге бөледі.
информацияны жоғалтпай сығатын алгоритмдер.
Информацияның кейбір мәліметтерін жоғалтып, сығатын алгоритмдер.
І-ші алгоритмдер бойынша сығылған информацияны түгелдей қалпына келтіруге болады. Олардың мысалдары arj, pk zip, rar, ha, т.б.
ІІ-ші алгоритмдер бойынша алғашқы информация тек жуықтап қалпына келтіруге болады. Мұндай сығу мәтіндік файлдар үшін тиімді болып табылмайды. Бірақ оларды дыбыс, графика, видеоинформацияларды сақтау барысында өте жиі қолданады. Мысалы: jpeg файлы.
Егер берілген ағында барлық символдар бірдей мүмкіншілікпен және бір-біріне байланыссыз болса, онда мұндай ағындардың символдарын сығу мүмкін емес. Сондықтан кез-келген файлды сығуға болатын архиватор құрастыру мүмкін емес. Мәліметтерді архивтеу барысында мәліметтер тізбегінің ағынының ерекшеліктерін қарастырады. Әзірше, біз ағындағы символдардың алдыңғы символдарға тәуелділігін қарастырайық. Кодтау теориясында келесі символдардың алдынғы символдарға тәуелділігін сипаттау қиын мәселелердің бірі болып табылады. Нақты программада бұл есепті басқаша қояды. Оны қысқарту деп атайды.
Онда бұған дейін кездескен символдардың орнына файлға сол символдарға сәйкес сілтеме жасалады. Практикада бұл төмендегідей жүзеге асырылады.
Белгілі бір мәліметтердің тізбегінен басқа алфавитте символдар құрастырылады. Бұл жағдайда мүмкіншілік болғанша қысқарту әдісін пайдаланады. Мұнда Леппель-Зив алгоритмінің әр-түрлі варианттарын қарастырады.
Алдынғы құрылған алфавит бойынша Хаффман немесе арифметикалық кодтау әдістері бойынша есептерді шығару. Мұнда әрбір символдың пайда болуы ықтималдығы әр түрлі және келесі символдың пайда болуы алдыңғы алдыңғы символға тәуелсіз болады.
Бұған дейін қарастырған тәсілдің барлығында алғашқы берілген алфавит элементінің саны шектеулі болған. Әдетте белгілі бір тілге байланысты онда қолданылатын негізгі символдардың саны 256-дан аспайды. Осындай алфавиттерді қолдану арқылы, мысалы Хаффман коды, 2-рет жүргізілген алгоритм мәтінді 50%- ке дейін сығуға мүмкіндік береді. Мәтінді әрі қарай жақсы сығу үшін берілген алфавиттен белгілі бір қайталанатын мәтіндерді мүмкіндігінше бөліп алып, соларға сілтеме жасау арқылы орындауға болады. Осындай тәсілдің бірі Лемпеь –Зив тәсілі. Тәсілдің негізгі жұмыс істеу принцпі.Жұмыс істеу барысында алгоритм сөздік құрастырады. Өзі оқитын мәтіннің ішінен сөздікке тиісті элементтерді іздей бастайды. Егер оны табатын болса, оған екі мәнді сәйкес қояды. Табылған ішкі жолдың ұзындығын сол сөзден оқылатын мәтінге дейін қашықтық. Егер ондай элемент табылмаса, онда келесі оқылатын символды сөздікке тіркейді. Осылай жұмыс жалғаса береді. Яғни алгоритм бойынша мәліметтердің ағынына екі мән сәйкес қойылады.
Length - ұзындық.
Distance- ара қашықтық.
Сонымен кез-келген мәліметтер ағынын жаңа алфавитте белгілеп алады. L, D
0, 1
A-900 І-460
Ә-31 Ө-83
Б-112 Ң-104
В-0 Ү-62
Г-48 Ұ-40
Ғ-56 Қ-240
Д-212 Һ-2
Е-208 Ж-148
Негізгі әдебиеттер: [3, 9]
Қосымша әдебиеттер:[11, 13]
