Кодирование целых чисел со знаком

Кодирование положительных целых чисел

КОДИРОВАНИЕ ЧИСЕЛ И ТЕКСТОВ

 

В качестве схем кодирования данных для компьютеров используют цифровые схемы (табличные) или числовые. И в том, и в другом случае аналоговая информация представляется битами, байтами или ком­позициями байтов. В этом разделе мы познакомимся с методами цифрового и числового кодирования основных видов информации при её записи. Рассматривать мы будем их в хронологическом порядке -именно так, как учёные создавали и вне­дряли методы кодирования.

 

Положительные целые числа кодиру­ются согласно правилам двоичной арифметики. Числа в диапазоне от 0 до 255 записываются одним байтом. Порядок пре­образования числа в двоичную форму рас­смотрим на примере числа 99.

1. Число раскладывается в ряд по степе­ням двойки (128, 64, 32,16, 8, 4, 2 и 1),
например:

99 = 64 + 32 + 2 + 1

2. Слагаемые записываются с помощью степенных выражений:

99 = 26 + 25 + 21 + 2°

3. Показатели степеней указывают на то, какой бит в байте должен быть включён (равен 1). То есть в нашем примере включены должны быть биты: шестой, пятый, первый и нуле­вой. Номера битов в байте отсчитыва­ются от 0 до 7, а сами биты обознача­ются от А0 до А7. (Здесь буква «А» обозначает слово «адрес».)

Числа в диапазоне от 0 до 65535 записы­ваются двумя байтами. Пара взаимосвя­занных байтов (16 бит) в информатике на­зывается словом. Его информационным значением являются 65 536 (216) различи­мых состояний.

Для записи более крупных целых положи­тельных чисел используют двойное слово(32 бита) или учетверённое слово(64 бита). Так, например, учетверённым словом можно записать целые числа в диапазоне от 0 до 18 446 744 073 709 551 615.

 

Теоретически, для знака записи числа можно было бы выделить один бит, на­пример самый старший. Тогда оставшиеся 7 бит позволили бы выразить целые числа от -127 до +127, включая 0. Однако при таком подходе возникают две проблемы:

· информационным содержанием байта становятся 255 различимых чисел вместо 256 (то есть одно значение куда-то пропадает);

· мы получаем два различимых нуля: «плюс ноль» и «минус ноль» (вот куда пропало недостающее значение). Эти обстоятельства «сбивают» работу вычислительных систем и не позволяют использовать простое двоичное представ­ление для записи целых чисел со знаком. Для таких чисел придумана специальная форма записи, которая называется двоич­ной дополнительной арифметикой.Запись числа в этой форме осуществляется в три приёма.

1. Сначала записывается целое число без знака (как будто оно положительное).

2. Если число отрицательное, то оно ин­вертируется (каждый бит числа меняется на противоположный).

3. Затем инверсное число дополняется (значение младшего бита увеличивается на единицу).

 

Интересно отметить, что старший бит байта указывает на знак числа. Если он равен нулю, то число положительное, а если он равен 1, то отрицательное.