Двоично кодиране

За автоматизиране на работата с данни от различен тип е много важно да се унифицира формата им на представяне - за това обикновено се използва техниката на кодиране, т.е. изразяване на данни от един тип чрез данни от друг тип. Естествените човешки езици са системи за кодиране на концепции за изразяване на мисли чрез реч. Езиците са тясно свързани с азбуките - системи за кодиране на езикови компоненти, използващи графични символи.

Собствената му система съществува и в компютърните технологии - нарича се двоично кодиране и се основава на представянето на данни като последователност от само два знака: 0 и 1. Тези знаци се наричат ​​двоични цифри, на английски - двоична цифра или съкратен бит ( малко). Един бит може да изразява две понятия: 0 или 1 (да или не, черно или бяло, вярно или невярно и т.н.). Ако броят на битовете се увеличи до два, тогава вече могат да бъдат изразени четири различни концепции. Три бита могат да кодират осем различни стойности.

Целите числа са двоично кодирани съвсем просто - трябва да вземете цяло число и да го разделите наполовина, докато коефициентът е равен на единица. Съвкупността от остатъците от всяко разделение, записани отдясно наляво заедно с последния коефициент, и образува двоичен аналог на десетично число.

За кодиране на цели числа от 0 до 255 е достатъчно да имате 8 бита двоичен код (8 бита). 16 бита ви позволяват да кодирате цели числа от 0 до 65535 и 24 - вече над 16,5 милиона различни стойности.

За кодиране на реални числа се използва 80-битово кодиране. В този случай броят се преобразува предварително в нормализирана форма:

3,1414926 = 0,31415926 10 1

300 000 = 0,3 10 6

Първата част от числото се нарича мантиса, а втората е характеристиката. Повечето от 80 бита са разпределени за съхранение на мантисата (заедно със знака) и определен фиксиран брой битове са разпределени за съхраняване на характеристиката.

Ако всеки знак от азбуката е свързан с определено цяло число, тогава с помощта на двоичен код можете да кодирате текстова информация. Осем бинарни бита са достатъчни за кодиране на 256 различни знака. Това е достатъчно, за да се изразят с различни комбинации от осем бита всички символи на английския и руския език, както малки, така и главни, както и препинателни знаци, символи за основни аритметични операции и някои често срещани специални знаци.

Технически изглежда много просто, но винаги е имало доста сериозни организационни затруднения. В ранните години от развитието на изчислителната технология те бяха свързани с липсата на необходимите стандарти, а сега са причинени, напротив, от изобилието от едновременно работещи и противоречащи си стандарти. За да може целият свят да кодира еднакво текстови данни, са необходими унифицирани кодиращи таблици, а това все още е невъзможно поради противоречия между символите на националните азбуки, както и корпоративни противоречия.

Що се отнася до английския език, който де факто заема нишата на международните средства за комуникация, противоречията вече са премахнати. Американският институт по стандартизация представи системата за кодиране ASCII (American Standard Code for Information Interchange). В системата ASCII две кодиращи таблици са фиксирана, основна и разширена. Базовата таблица фиксира стойностите на кодовете от 0 до 127, а разширената таблица се отнася до символи с числа от 128 до 255.

Първите 32 кода на основната таблица, започвайки от нула, се дават на производителите на хардуер. Тази област съдържа контролни кодове, които не съответстват на езикови символи. Поставят се от 32 до 127 кода, кодове на символи от английската азбука, пунктуационни знаци, аритметични операции и някои спомагателни знаци.

Кодирането на символи на руския език, известно като кодиране Windows-1251, е въведено „отвън“ - от Microsoft, но предвид широкото разпространение на операционни системи и други продукти на тази компания в Русия, то е дълбоко укрепено и широко разпространен.

Друго често срещано кодиране се нарича KOI-8 (код за обмен на информация, осемцифрен) - произходът му датира от времето на Съвета за икономическа взаимопомощ на източноевропейските държави. Днес кодирането KOI-8 се използва широко в компютърните мрежи в Русия и в руския сектор на Интернет.

Международният стандарт, който предвижда кодирането на символите на руския език, се нарича ISO (Международна организация за стандарти - Международен институт за стандартизация). На практика това кодиране се използва рядко.