2.7 Кодтау теориясы. Абстрактілі алфавит. Кодтау. Декодтау
Абстрактілі алфавит
Ақпарат хабарлама тҥрінде беріледі. Дискретті ақпарат кейбір
таңбалардың ақырлы сан жиынтығы арқылы жазылады. Таңбалар - әріптер деп
аталады. Бҧл жерде әріптер – мәлімет алмасу ҥшін кейбір ҧйғарым бойынша
тағайындалған кез-келген таңба. Реттелген таңбалар жиыны – алфавит деп
аталады.
Алфавит тҥрлері:
- Орыс әріптерінің алфавиті А...Я;
- ІBM дербес компьютерінің клавиатуралық символдарының алфавиті;
- Дҧрыс алты жақты ойын сҥйегінің таңбалар алфавиті;
- Морзе алфавиті;
- Араб цифрларының алфавиті: 0...9;
- Он алтылық символдар алфавиті: 0...9 A...F;
- Екілік цифр алфавиті: 0, 1;
- ―Нҥкте‖, ―тире‖ екілік алфавиті: .-;
- Римдік санау жҥйесі алфавиті: І, V, X, L, C, D, M;
- Алгоритмді бейнелеудің блок-схема тілінің алфавиті:
Кодтау және кері кодтау
Ақпарат
берілген
кезде
байланыс
каналында
бір
алфавиттің
символдарынан қҧралған хабарлама екінші алфавит символдарынан қҧралған
хабарламаға тҥрленуі мҥмкін. Осындай тҥрлендіру кезіндегі алфавит
әріптерінің бірмәнді сәйкестігін сипаттайтын ереже – код деп аталады. Ал
тҥрлендіру процесін кодтау деп атайды. Мҧндай тҥрлендіру ақпарат кӛзінен
байланыс каналына хабарлама тҥскен кезде (кодтау) және қабылдаушы
хабарламаны қабылдаған кезде (кері кодтау) жҥзеге асуы мҥмкін.
Ақпаратты ЭЕМ-де ӛрнектеу ҥшін кӛбінесе екілік кодтау қолданылады.
Мҧнда ақпарат 0, 1 әріптерінен тҧратын екілік алфавит қҧралдары арқылы
ӛрнектеледі. Екілік алфавиттің қҧрамына кіретін символдар саны ӛте аз (екі)
болғандықтан, әріптердің кӛп санынан тҧратын алфавитті екілік кодтау кезінде,
әрбір әріпке бірнеше екілік таңба немесе екілік сӛз сәйкестендіріледі. Осындай
тізбектер кодтық тіркестер деп аталады. Кодталатын алфавиттің барлық
әріптерінің екілік жазылуына сәйкес кодтық тіркестердің толық жиынтығы –
код деп аталады.
25
Тең ӛлшемді және тең ӛлшемді емес кодтар бар. Тең ӛлшемді екілік
кодтардың кодтық тіркестері екілік таңбалардың бірдей санынан, ал тең
ӛлшемді емес кодтар әр тҥрлі санынан тҧрады.
Тең ӛлшемді емес екілік кодқа Морзе алфавиті мысал бола алады. Мҧнда
әрбір әріп пен цифр ҥшін қысқа және ҧзын сигналдардың екілік тізбегі
анықталған. Морзе әліппесінде мысалы, Е әрпіне бір қысқа сигнал (нҥкте), ал
Ш әрпіне – тӛрт ҧзын сигнал (тӛрт тире) сәйкестендірілген. Тең ӛлшемді емес
кодтау хабарламаны беру жылдамдығын арттыруға жағдай жасайды, ӛйткені
берілетін текстідегі кӛп кездесетін символдарға (мысалы, Е әрпі) неғҧрлым
қысқа тіркес тағайындалады.
Есептеу техникасында, негізінен, кодтық тіркестері сегіз екілік таңбалар
тізбегінен қҧралатын тең ӛлшемді кодтар қолданылады. Мысалы, ЭЕМ-де
ақпарат енгізу мен шығаруда қолданылатын ақпарат алмасу коды – КОИ-8;
ақпараттың ішкі қҧрылымын кӛрсетуге қолданылатын ақпарат алмасудың
екілік коды – ДКОИ.
Трисиме коды (латын алфавитінің таңбаларына 3 таңба: 1, 2, 3 тіркесі
сәйкестендіріледі). Трисиме коды – тең ӛлшемді код (яғни барлық кодтық
тіркестер екілік таңбалардың бірдей санынан тҧрады). Тең ӛлшемді емес код –
Морзе алфавиті.
Кодтық тіркестерді қҧрайтын символдар саны – код ҧзындығы деп
аталады. Екілік кодқа қатысты код ҧзындығы терминімен қатар, код
разрядтылығы термині қолданылады.
Байттық кодтаудың халықаралық жүйесі
N екілік таңба топтарынан тҧратын тең ӛлшемді код арқылы қанша әр
тҥрлі кодтық тіркестер қҧруға болатынын K=2
N
формуласы арқылы табуға
болатыны белгілі.
Бірнеше алфавитті кодтау ҥшін қажет N-нің ең кіші мәні – 8, яғни
K=2
8
=256. Осы екілік символдардың 256 тіркесі арқылы кез келген алфавитті
кодтауға болады. Сегіз екілік цифр байтты қҧрайды, сондықтан жҥйе – байттық
кодтау жҥйесі деп аталады. Кӛбінесе мына екі жҥйе қолданылады:
- EBСDІC (Extended Bіnary Coded Decіmal Іnterchange Code)
- ASCІІ (Amerіcan Standard Code for Іnformatіon Іnterchange)
Біріншісі ҥлкен машиналарда, ал екіншісі мини, микроЭЕМ, дербес
компьютерлерде қолданылады. Бҧл жҥйелер 1963 жылдары қҧрылған.
Қазіргі кезде ASCІІ кестесінің жетілдірілген балама кодировкасы
қолданылады. Мҧнда дербес компьютер алфавитінің таңбаларына он алтылық
сандар тӛмендегі ереже бойынша сәйкес қойылған: біріншісі – баған номері,
екіншісі – жол номері:
‗А‘ - коды 41
16
=4*16
1
+1*16
0
=64+1=65
10
‗и‘ - коды А8
16
=10*16
1
+8*16
0
=160+8=168
10
Бҥтін оң сандардың тура коды қосымша кодпен бірдей:
1) Сан екілік жҥйеге аударылады
2) Санның қай типке жататынына сәйкес, оның жазылуына сол жақтан
қажет 0-дер тіркеледі .
Мыс: 37
10
=100101
2
26
- егер іnteger деп хабарланса, онда тура коды: 2 байт, яғни 2*8 бит =16 бит
- егер longіnt деп хабарланса, онда тура коды: 4 байт, яғни 4*8 бит =32 бит
- қысқа жазу ҥшін он алтылық жҥйе қолданылады.
Бҥтін теріс санның қосымша коды:
1. сан тобының тура кодын жазу
2. инверттеу (бірді –нӛлмен, нӛлді – бірмен алмастыру)
3. инвертті кодқа 1-ді қосу
Достарыңызбен бөлісу: |