Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Представление дробей в двоичных кодах

Поиск

 

Чтобы иметь возможность работать с дробями в двоичной системе счисления, мы применяем позиционную точку, подобную используемой в десятичных дробях. Цифры слева от точки представляют целую часть числа (мантиссу) и обрабатываются точно так, как целые числа, записанные в двоичной системе. Цифры справа представляют дробную часть и обрабатываются аналогично любым другим битам, за исключением того, что их позициям присвоены дробные весовые значения. Это означает, что первая цифровая позиция справа от точки имеет весовое значение 1/2, следующим позициям присваиваются весовые значения 1/4, 1/8 и т.д. Следует отметить, что описанный механизм является простым расширением изложенного выше правила — каждой цифровой позиции присваивается весовое значение в два раза большее, чем последующей в направлении слева на право. Благодаря тому, что позиционным разрядам присваиваются указанные выше весовые значения, процедура расшифровки двоичного представления с точкой, отделяющей дробную часть от целой, аналогична той, которая применяется к целым числам. Значение в каждом разряде просто умножается на весовое значение, присвоенное его позиции в представлении числа, а затем полученные результаты суммируются. Чтобы пояснить эту процедуру нагляднее, на рис. 1.18 показан пример расшифровки двоичного числа 101.101, десятичное представление которого равно 5 5/8.

Рис 1.18 Расшифровка значения двоичного числа 101.101

 

В отношении операции сложения можно сказать, что для дробных двоичных чисел используются те же методы, что и для десятичных дробей. Таким образом, чтобы сложить два дробных двоичных числа, нужно их просто выровнять по по­ложению точки и после этого применить процедуру сложения, описанную выше.

 

Представление целых чисел

 

Математики долгое время занимались цифровыми системами счисления, и многие выдвинутые ими идеи оказались весьма полезными для разработки циф­ровых электронных схем. В этом разделе мы обсудим две такие системы нота­ции, а именно двоичный дополнительный код и двоичную нотацию с избытком. Эти системы построены на основе двоичной системы счисления и имеют определенные преимущества, благодаря которым широко используются при конструировании компьютеров. Однако эти преимущества мо­гут обернуться и недостатками. Наша задача — уяснить свойства этих систем и понять, как они влияют на работу компьютеров.

 

Двоичный дополнительный код

 

На сегодняшний день наиболее распространенной системой представления це­лых чисел в компьютерах является двоичный дополнительный код, в котором для представления каждого числа используется фиксированное количество би­тов. В настоящее время данная система чаще всего реализуется с использовани­ем, для представления любого числа, 32-х двоичных разрядов. Подобное реше­ние позволяет предоставить широкий диапазон целых чисел, однако демонстра­ция его работы вызывает определенные затруднения. Поэтому при изучении свойств двоичного дополнительного кода мы будем оперировать числами мень­шей длины.

На рис. 1.19 показаны два варианта дополнительного двоичного кода, в кото­рых для представления чисел используются три и четыре бита соответственно. По­строение подобной системы начинается с записи строки нулей, количество кото­рых равно числу используемых двоичных разрядов. Далее ведется обычный дво­ичный отсчет до тех пор, пока не будет получено значение, состоящее из единственного нуля, за которым следуют лишь единицы. Полученные комбинации будут представлять положительные числа 0, 1, 2, 3,.... Для представления отри­цательных чисел выполняется обратный отсчет, начиная со строки из всех единиц соответствующей длины. Обратный счет продолжается до тех пор, пока не будет получена строка, состоящая из одной единицы, за которой будут следовать все ну­ли. Полученные комбинации будут представлять числа -1, -2, -3,.... (Если вам покажется трудным вести обратный отсчет в двоичной системе счисления, можно отсчитывать комбинации в обратном порядке, начиная со строки с одной единицей и всеми нулями и заканчивая строкой, состоящей из одних единиц.)

Обратите внимание, что в дополнительном двоичном коде крайний левый бит в значении каждого числа определяет знак представляемой числовой величины, поэтому этот бит принято называть знаковым разрядом. В этой нотации отрица­тельные числа представляются комбинациями со знаковым битом, равным 1, а положительные числа — комбинациями со знаковым битом, равным 0.

В двоичном дополнительном коде очень удобно представлена взаимосвязь между комбинациями битов, представляющими положительные и отрицатель­ные значения, одинаковые по модулю. Последовательность битов оказывается идентичной при чтении справа налево до первой единицы включительно. С этой позиции и далее коды являются дополнительными друг другу. (Дополнением двоичной комбинации называется такая комбинация, которая получается в ре­зультате изменения всех нулей в исходном значении на единицы, а всех единиц на нули. Например, двоичные комбинации 0110 и 1001 являются дополнитель­ными друг другу.) Например, в четырехразрядном коде (рис. 1.19) обе битовые комбинации, представляющие числа 2 и -2, заканчиваются на 10, однако ком­бинация, представляющая число 2, начинается с 00, тогда как комбинация, представляющая число -2, начинается с 11. Данное наблюдение позволяет сформулировать алгоритм взаимного преобразования битовых комбинаций, представляющих положительные и отрицательные числа, имеющие одно и то же

значение по модулю. Достаточно просто копировать исходную комбинацию спра­ва налево до тех пор, пока не будет встречена единица, а затем последовательно заменять значения оставшихся битов их дополнениями (рис. 1.20).

Рис 1.19 Схемы кодирования в двоичном дополнительном коде

 

Ясное понимание описанных выше основных свойств двоичного дополни­тельного кода позволяет также сформулировать алгоритм преобразования значений этого кода в десятичное представление. Если битовая комбинация имеет нулевой знаковый бит, то это значение рассматривается просто как обычное двоичное число. Например, битовая комбинация 0110 представляет число 6, поскольку комбинация битов 110 является двоичным представлени­ем числа 6. Если битовая комбинация содержит знаковый бит, равный еди­нице, то она представляет отрицательное число, и нам остается лишь опре­делить абсолютную величину этого числа. Это выполняется посредством за­писи исходной комбинации справа налево, вплоть до первой встретившейся единицы, после чего для оставшихся битов, в порядке их следования, запи­сываются дополнительные значения. Полученная комбинация битов дешиф­руется как обычное двоичное число.

Например, чтобы определить десятичное значение комбинации 1010, мы, прежде всего, отмечаем, что это значение является отрицательным, так как ис­ходная комбинация содержит единицу в знаковом бите. Затем исходная комбинация преобразуется в комбинацию 0110, которая представляет собой двоичное число 6. Теперь можно сделать окончательное заключение, что исходная двоич­ная комбинация представляет число

-6.

Рис 1.20 Представление числа -6 в четырехразрядном дополнительном коде

 



Поделиться:


Последнее изменение этой страницы: 2016-04-21; просмотров: 1930; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.191.26.149 (0.007 с.)