![]() |
Звоните! (926)274-88-54 Бесплатная доставка. Бесплатная сборка. |
Ассортимент тканей График работы: Ежедневно. С 8-00 до 20-00. Почта: soft_hous@mail.ru |
![]() ![]() ![]() |
Читальный зал --> Программные средства foundation
Табл. 2.4. Примеры точного и поразрядного дополнений в десятичной системе Исходя из определения, можно подумать, что для вычисления точного дополнения (computing the radix complement) числа D нужно производить вычитание. Однако вычитания можно избежать, записьЕвая г в виде (г -\)+\,& r -D - в виде {{г -1) -D) + 1. В свою очередь число г -1 имеет вид: mm mm, где /я = г -1 и символ т повторяется п раз. Например, число 10000 равно 9999 + 1. Если принять, по определению, что дополнением одноразрядного числа dявляется число r-1-d, то (г -1) -D получается взятием дополнений в разрядах числа D. Поэтому точное дополнение числа D есть результат взятия дополнений в отдельных разрядах D и прибавления 1. Например, дополнение числа 1849 в десятичной системе равно 8150 + 1, то есть 8151. Навыки применения этого правила стоит закрепить, убедившись в его справедливости на других примерах, приведенных в табл. 2.4. В табл. 2.5 перечислены дополнения одноразрядных чисел для двоичной, восьмеричной, десятичной и шестнадцатеричной систем счисления. Табл. 2.5. Допол-Шестнадца- однораз- Число Дополнение Двоичное Восьмеричное Десятичное -еричное рядных чисел 2.5.4. Представление двоичных чисел в двоичном дополнительном коде Точное дополнение для двоичных чисел носит название двоичного дополнительного кода {twos complement). В этой системе старший разряд числа служит битом знака; число отрицательно тогда и только тогда, когда старший бит равен 1. Десятичный эквивалент двоичного числа, представленного в дополнительном коде, вычисляется так же, как в случае числа без знака, за исключением того, что вес старшего бита {weight of MSB) равен -2 а не +2 Диапазон значений представляемых таким образом чисел простирается от-{2 -) до +(2 --1). Вот примеры 8-разрядных двоичных чисел:
В левом нижнем примере возникает перенос из старшего разряда. Здесь, как и повсюду при выполнении операций с двоичными числами, представленными в дополнительном коде, этот бит игнорируется и в качестве результата берутся только п младших разрядов. При представлении двоичных чисел дополнительным кодом ноль считается положительным числом, так как его знаковый бит равен 0. Поскольку возможно только одно двоичное представление нуля в дополнительном коде, в нижней части диапазона представляемых чисел имеется еще одно отрицательное число {extra negative number)-2 , у которого нет положительного эквивалента. Представленное в дополнительном коде и-разрядное двоичное числоХможно преобразовать в ш-разрядное число, но при этом нужна определенная осторожность. Если /я > и, то мы должны добавить к числу Хслева т-п битов, являющихся копиями знакового бита числа (см. задачу 2.23). Другими словами, положительное число мы дополняем нулями, а отрицательное - единицами; такое действие называется знаковым расширением {sign extension). Если /я < и, то мы отбрасываем п-т битов слева; однако результат будет справедливым только в том случае. когда все отбрасываемые биты имеют то же значение, что и знаковый бит остающегося числа (см. задачу 2.24). В большинстве компьютеров и в других цифровых системах используется представление отрицательных чисел в дополнительном коде. Однако, ради полноты, мы рассмотрим также поразрядное дополнение и двоичный обратный код. *2.5.5. Представление в форме поразрядного дополнения в системе с поразрядным дополнением {diminished radix-complement system) дополнение и-разрядного числа D получается путем его вычитания из Это можно осуществить, беря дополнение в разрядах числа D порознь без добавления 1 в отличие от того, как это делается при взятии точного дополнения. В случае десятичных чисел такое преобразование можно назвать поразрядным дополнением до девяти (Рs complement); примеры таких дополнений приведены в правом столбце табл. 2.4. *2.5.6. Представление двоичных чисел в обратном коде в случае двоичных чисел поразрядное дополнение называют обратным кодом {ones complement). Как и в дополнительном коде, старший бит является знаковым: он равен О у положительных чисел и 1 - у отрицательных. Таким образом, существует два представления нуля: положительный ноль (00 00) и отрицательный ноль (11- 11). Положительные числа при их представлении в дополнительном коде и в обратном коде выглядят одинаково. Но представления отрицательных чисел различаются на 1. При вычислении десятичного эквивалента числа, представленного в обратном коде, вес старшего бита равен -(2 -1), а не -2 Диапазон чисел, которые могут быть представлены обратным кодом, простирается от -(2 -1) до +(2 -1). Приведем примеры 8-разрядных двоичных чисел и соответствующий им обратный код: Главным достоинством представления в обратном коде является его симметрия и легкость реализации. Однако построение сумматора чисел, представленных в обратном коде, требует большей изобретательности, нежели в случае сумматора чи- 17,0 = 000100012 -99io = lOOlllOOj 111011102 =-17,0 011000112 = 99io 119,0= OIIIOIII2 -127,0= IOOOOOOO2 100010002 = -119io OIIIIIII2 = 127,0 0,0 = OOOOOOOO2 (положительный ноль) IIHIIII2 = 0,0 (отрицательныйноль) Здесь и далее звездочкой помечены необязательные разделы ООО «Мягкий Дом» - это Отечественный производитель мебели. Наша профильная продукция - это диваны еврокнижка. Каждый диван можем изготовить в соответствии с Вашими пожеланияи (размер, ткань и материал). Осуществляем бесплатную доставку и сборку. Звоните! Ежедневно! (926)274-88-54 Продажа и изготовление мебели. Копирование контента сайта запрещено. Авторские права защищаются адвокатской коллегией г. Москвы. |