Кіріспе

Қателерді анықтау үшін екілік тізбекке қосылатын бит

7 дерек биті (1-дің саны) 8 бит, оның ішінде жұп санды 0000000 0 00000000 00000001 1010001 3 10100011 10100010 11010014 11010010 11010011 1111111 7 11111111 11111110

Паритет биті, немесе тексеру биті – екілік код тізбегіне қосылатын бит. Паритет биттері – қателерді анықтаудың қарапайым түрі. Паритет биттері әдетте байланыс протоколының ең кіші бірліктеріне қолданылады, әдетте 8 биттік октеттерге (байттарға), бірақ оларды біттердің толық хабарлама тізбегіне де жеке қолдануға болады. Паритет биті тізбектегі 1-дің жалпы саны жұп немесе тақ болуын қамтамасыз етеді. Сәйкесінше, паритет биттерінің екі түрі бар: жұп паритет биті және тақ паритет биті. Жұп паритет жағдайында, биттердің берілген жиынтығында 1 мәніндегі биттердің саны есептеледі. Егер бұл сан тақ болса, паритет битінің мәні 1 деп белгіленеді, бұл бүкіл жиынтықтағы 1-дің кездесуінің жалпы санын (паритет битін қоса алғанда) жұп санға айналдырады. Егер биттердің берілген жиынтығында 1-дің саны жұп болса, паритет битінің мәні 0 болады. Тақ паритет жағдайында кодтау кері қайтарылады. Биттердің берілген жиынтығы үшін, егер 1 мәніндегі биттердің саны жұп болса, паритет битінің мәні 1 деп белгіленеді, бұл бүкіл жиынтықтағы 1-дің жалпы санын (паритет битін қоса алғанда) тақ санға айналдырады. Егер 1 мәніндегі биттердің саны тақ болса, онда сан да тақ, сондықтан паритет битінің мәні 0 болады. Жұп паритет – циклдық артық тексерудің (CRC) ерекше жағдайы, онда 1 биттік CRC x+1 полиномымен жасалады.

Теңдік

Математикада паритет – бүтін санның жұп немесе тақ болуын білдіреді, оны екілік түрінде жазылғанда тек ең кіші маңызды битін қарастыру арқылы анықтауға болады. Ақпараттық технологияда паритет – кез келген екілік сандар жиынтығындағы бірлік мәні бар сандардың жұп немесе тақ санының көрсеткіші. Паритет әр биттің күйіне байланысты анықталғандықтан, оның барлық биттерге тәуелді болуы және кез келген бір бит өзгергенде жұп немесе тақ паритетке ауысу қасиеті, қателерді анықтау және түзету схемаларында қолдануға мүмкіндік береді. Телекоммуникацияда кейбір протоколдарда қолданылатын паритет қателерді анықтау үшін арналған. Жіберу ортасы екі шеткі нүктеде де тақ немесе жұп паритетке келісу үшін алдын ала бапталады. Жіберуге дайын әрбір биттер тізбегі (деректер пакеті) үшін жіберуші келісілген паритетке сәйкес келетін (жұп немесе тақ) паритет битін – нөлді немесе біртін есептейді. Пакетті алғанда, алдымен пакеттің жалпы паритеті алдын ала келісілген шартқа сәйкес келе ме екені тексеріледі, содан кейін пакетте паритет қатесі болса, оны қайта жіберу сұралады. Компьютер ғылымында RAID-тегі паритет жолағы немесе паритет дискісі қателерді түзетуге мүмкіндік береді. Паритет биттері массивтегі дискілер саны n болғанда, n битке бір паритет битінен жазылады. Оқу қатесі пайда болған кезде, қате аймағындағы әрбір бит n бит жиынтығынан қайта есептеледі. Осылайша, бір паритет битін пайдалану бір биттен бір диск өлшеміне дейінгі аймақ үшін "артық көшірмелік" құрайды. Төмендегі бөлімді қараңыз. Электроникада паритетпен деректерді транскодтау өте тиімді болуы мүмкін, себебі XOR қақпалары тіпті паритет құратын тексеру битіне тең нәтиже береді, ал XOR логикалық дизайны кез келген сандағы кіріске оңай бейімделеді. XOR және AND құрылымдары интегралды схемалардың көп бөлігін құрайды.

Қолданылуы

Қарапайымдылығының арқасында, паритет көптеген аппараттық қолданбаларда қолданылады, онда қиындық туған жағдайда операция қайта орындалуы мүмкін немесе қате анықталғаны жеткілікті. Мысалы, SCSI және PCI шиналары беріліс қателерін анықтау үшін паритетті пайдаланады, ал көптеген микропроцессорлық нұсқаулар кэштері паритеттік қорғаумен жабдықталған. Нұсқаулар кэшінің деректері негізгі жадтың көшірмесі болғандықтан, олар бұзылған жағдайда ескерілмей, қайтадан алынуы мүмкін. Тізбектік деректерді беруде, кең таралған формат 7 дерек биті, жұп паритет биті және бір немесе екі тоқтату битінен тұрады. Бұл формат 8 биттік байтқа барлық 7 биттік ASCII символдарының орналасуына мүмкіндік береді. Басқа форматтар да мүмкін; 8 бит дерек пен бір паритет биті барлық 8 биттік байт мәндерін жеткізе алады. Тізбектік байланыс контекстінде, паритет әдетте интерфейс жабдығы (мысалы, UART) арқылы жасалады және тексеріледі, ал қабылдағанда нәтижесі интерфейс жабдығындағы аппараттық тізілімдегі статус биті арқылы процессорға (мысалы, CPU) және, сондай-ақ, операциялық жүйеге беріледі. Қатеден қалпына келтіру әдетте деректерді қайтадан жіберу арқылы жүзеге асырылады, мұндай жағдайлардағы егжей-тегжейлі мәліметтер әдетте бағдарламалық қамтамасыз ету (мысалы, операциялық жүйенің I/O процедуралары) арқылы басқарылады. Егер берілген биттердің жалпы саны, паритет битін қоса алғанда, жұп болса, тақ паритет барлық нөлдер мен барлық бірлер комбинацияларын қате ретінде анықтау артықшылығына ие. Егер биттердің жалпы саны тақ болса, комбинациялардың тек біреуі ғана қате ретінде анықталады, ал таңдау көбірек кездесетін қатеге сүйене отырып жасалуы мүмкін.

Тарих

1951 жылы алғашқы магниттік таспаларда дерек сақтау үшін паритеттік жол қолданылды. Осы түріндегі паритет, бірнеше параллель сигналдар арқылы қолданылса, көлденең артықтық тексеру деп аталады. Оны бір сигналмен жіберілген бірнеше бит бойынша есептелген паритетпен, яғни бойлық артықтық тексерумен біріктіруге болады. Параллель шинада әрбір параллель сигналға бір бойлық артықтық тексеру биті қарастырылады. Паритет кем дегенде кейбір қағаз таспалы (перфорацияланған таспалы) деректерді енгізу жүйелерінде де қолданылған (бұл жүйелер магниттік таспалардан бұрын пайда болған). Британдық ICL (бұрынғы ICT) компаниясы сатқан жүйелерде қағаз таспада 8 тесік болған, соның ішінде 8-і паритет үшін арналған. Деректерді сақтау үшін 7 позиция қолданылған, мысалы, 7 биттік ASCII коды. 8-ші позицияға тесік салу деректердегі тесіктердің санына байланысты болған.