Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Шпоры по ассемблеру, 1ый семестр (Гончаревич А Л) [3131 вопросов] / шпоры-1 / 5- Формы представления и способы кодирования двоичных чисел

..docx
Скачиваний:
48
Добавлен:
15.06.2014
Размер:
17.69 Кб
Скачать

5- Формы представления и способы кодирования двоичных чисел.

Для представления каждого числа в ЭВМ используется стандартная

разрядная сетка (совокупность двоичных разрядов), состоящая из

определенного количества (в зависимости от типа числа) разрядов. Знак числа

является двузначной величиной и поэтому кодируется нулем или единицей в

первом разряде числа. В зависимости от способа использования разрядной сетки различают две формы представления чисел: естественную форму (с фиксированной точкой) и нормальную форму (с плавающей точкой). В естественной форме числа представляются последовательностью цифр, разделенных запятой на целую и дробную части. Весовые коэффициенты разрядов здесь фиксированы, поэтому и положение точки фиксировано. В нормальной форме числа представляются с помощью мантиссы и

порядка в виде A=Mqk, где M – мантисса числа A, q – основание системы

счисления; k – порядок числа A. При хранении числа в нормальной форме в

разрядной сетке помещаются две группы цифр: мантисса со знаком и порядок

со своим знаком.

Необходимость кодирования двоичных чисел связана с двумя основными

причинами: во–первых, необходимо кодировать знак числа; во–вторых, для

упрощения выполнения операции сложения отрицательных чисел возникает

необходимость в специальном кодировании всего числа. Числа,

представляемые в естественной и нормальной формах, кодируются с помощью

специальных машинных кодов: прямого, дополнительного и обратного.

Прямой код является простейшим машинным кодом и получается при

кодировании в числе только знаковой информации. Прямой код числа

совпадает с его изображением в естественной форме, за исключением

отрицательных чисел, у которых в знаковом разряде ставится единица.

Недостатком кодирования чисел в прямом коде является то, что правила счета,

оказываются разными для положительных и отрицательных чисел.

Дополнительный код находится как дополнение модуля отрицательного

числа до некоторого граничного числа, представимого в данной ЭВМ.Изображение положительных чисел в дополнительном коде совпадает с

изображением их в прямом коде. Дополнительный код для отрицательных

чисел больших единицы образуется в соответствии с формулой Aдоп=2n+1

+A, а для чисел меньших единицы A=2+A, где n – количество разрядов целой части

числа. Таким образом, для представления отрицательного числа в

дополнительном коде необходимо в знаковом разряде поставить единицу,

произвести обращение всех разрядов числа и к полученному коду прибавить

единицу младшего разряда, например A = –8710 = –01010111 = 10101001. Любое

отрицательное число в дополнительном коде может быть представлено в виде

суммыно с той лишь разницей, что знаковый разряд должен учитываться с

отрицательным весом. Поэтому при проведении арифметических операций в

дополнительном коде со знаковым разрядом оперируют как обычным

цифровым, например: разность двух чисел A1=39 и A2=87 равна A1 – A2 = A1 +

(–A2) = A1 + A2доп = 00100111+00101001–10000000 = –00110000 =–4810.

Обратный код является инверсией числа и образуется путем замены его

цифр взаимно обратными. При выполнении арифметических операций в

обратном коде, со знаковым разрядом оперируют как обычным цифровым,

однако, учитывают его с отрицательным весом минус единицу младшего

разряда. Для удобства общения человека с компьютером находит применение

двоично–десятичная система счисления (BCD–код – BinaryCodedDecimal), в

которой десятичные цифры кодируются в двоичной системе счисления. Для

кодирования всех десятичных цифр достаточно 4 двоичных разрядов. Но

четырехразрядное двоичное число позволяет получить 24=16 наборов, изкоторых при двоично–десятичном кодировании используется только 10.

Поэтому возможны различные варианты кодирования десятичных цифр в

двоичной системе счисления.

Наибольшее распространение получило кодирование десятичных цифр

кодом 8–4–2–1, при котором четырьмя разрядами двоичного кода отдельно

кодируется каждая цифра в десятичном числе. При этом один байт может

хранить либо две цифры десятичного числа, либо одну.