11.07.2015 Views

Выпуск 1 - Российский государственный профессионально ...

Выпуск 1 - Российский государственный профессионально ...

Выпуск 1 - Российский государственный профессионально ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

в мир информатики № 17258январь 2012 / ИНФорматикавычитания нам нужно устройство, которое инвертировалобы биты, только если производится вычитание.Более подходящая схема выглядит так:ИнверсияРис. 5ВходыВыходыСигнал Инверсия подается на входы всех девятивентилей “Искл-ИЛИ”. Напомним, что вентиль“Искл-ИЛИ” работает так:Искл-ИЛИ 0 10 0 11 1 0Если сигнал Инверсия равен 0, восемь выходоввентилей “Искл-ИЛИ” повторяют сигнал на восьмиих входах. Например, если на вход подается число01100001, на выходе также будет 01100001. Если жесигнал Инверсия равен 1, восемь входных сигналовбудут инвертироваться (если на входе 01100001, навыходе имеем 10011110).Давайте поместим восемь вентилей “Искл-ИЛИ”в общий прямоугольник под названием “Дополнениедо единицы”:Вх 7Вх 6Вх 5Вх 4Вх 3Вх 2Вх 1Вх 0ИнверсияДополнение до единицыВых 7Вых 6Вых 5Вых 4Вых 3Вых 2Вых 1Вых 0Рис. 6Теперь вентиль “Дополнение до единицы”, 8-битовыйсумматор и выходной вентиль “Искл-ИЛИ”можно собрать в единую схему:Вход АВход BИнверсияДополнениедо единицыА 7…А 0 В 7…В 0СО8-битовый сумматорS 7…S 0Переполнение /ИсчезновениеВыход для суммыСlРис. 7Обратите внимание на сигнал Выч, идущий спереключателя “Сложение/Вычитание”. Этот сигналравен 0, если нужно выполнить сложение, и 1,если нужно выполнить вычитание. При вычитаниивходы В (второй ряд переключателей) перед сумматороминвертируются схемой “Дополнение до единицы”,а к результату сумматора прибавляется 1,для чего его вход CI установлен в 1. При сложениисхема “Дополнение до единицы” не делает ничего;сигнал на входе CI равен 0.Сигнал Выч и выход СО (выход для переноса) сумматоратакже поступают в вентиль “Искл-ИЛИ”,который управляет включением лампочки “Переполнение/Исчезновение”.При равенстве 0 сигналаВыч (выполняется сложение) лампочка горит, еслисигнал СО сумматора равен 1, т.е. результат сложенияоказался больше 255.Пусть вас не смущает, что выход СО сумматораравен 1, если выполняется вычитание и вычитаемое(переключатели В) меньше уменьшаемого (переключателиА). Так проявляется число 100000000,которое в этом случае должно вычитаться на заключительномшаге. Лампочка “Переполнение/Исчезновение” горит, только если выход СО сумматораравен 0. Это означает, что вычитаемое большеуменьшаемого и результат отрицателен. Отображениеотрицательных чисел в нашем устройстве непредусмотрено.Мы в этой статье уже неоднократно говорили оботрицательных числах, но все еще не показали, начто они похожи в двоичном представлении. Можно,конечно, обозначать отрицательные двоичныечисла знаком “минус”, как и в десятичной системе,скажем, записать число –77 как –1001101. Но однаиз целей введения двоичных чисел в том, чтобыпредставлять в виде нулей и единиц все что угодно,в том числе и знак “минус” перед отрицательнымчислом.Признаком знака может служить и дополнительныйбит, который, например, равнялся бы 1 уотрицательных чисел и 0 у положительных. Однакоесть другой способ представления отрицательныхчисел, который позволяет без особых хлопотскладывать отрицательные и положительныечисла. Недостаток его лишь в том, что вы должнызаранее решить, сколько цифр понадобится дляпредставления чисел, с которыми вам предстоитиметь дело.Давайте немного подумаем. Преимуществостандартного способа записи положительных и отрицательныхчисел в том, что он не накладываетникаких ограничений на их величины. Как отрицательные,так и положительные числа расходятся от0 до бесконечности.... –1000000 –999999 ...... –3 –2 –1 0 1 2 3 ...... 999999 1000000 ..,Но допустим, что бесконечный числовой ряд намне нужен, так как мы заранее знаем, что все числа,с которыми мы столкнемся, заключены в определенныхпределах.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!