4603

Арифметические основы работы ЭВМ

Контрольная

Информатика, кибернетика и программирование

Арифметические основы работы ЭВМ Правила выполнения арифметических действий над двоичными числами задаются таблицами сложения, вычитания и умножения. Таблица 1 Сложение Вычитание Умножение 0 + 0=0 0 – 0=0 0 x 0=0 0 + 1=1 1 – 0=1 0 x 1=0 1 ...

Русский

2012-11-23

70.5 KB

43 чел.

Арифметические основы работы ЭВМ

Правила выполнения арифметических действий над двоичными числами задаются таблицами сложения, вычитания и умножения.

Таблица 1

Сложение

Вычитание

Умножение

0 + 0=0

0 – 0=0

0 x 0=0

0 + 1=1

1 – 0=1

0 x 1=0

1 + 0=1

1 – 1=0

1 x 0=0

1 + 1=10

10 – 1=1

1 x 1=1

Правила арифметики во всех позиционных СС аналогичны. В двоичной СС арифметическое сложение происходит по правилу сложения по модулю два с учетом переноса единицы в старший разряд (см. таблицу 1).

Пример 1. Выполнить операцию арифметического сложения в двоичной системе счисления.

Решение.

В устройствах, реализующих операцию арифметического сложения двоичных чисел, операнды представляют числами определенной разрядности (одинаковой для обоих операндов). При этом неиспользуемые разряды заполняются нулями. Также заполняются нулями младшие разряды дробной части вещественного числа. Следует заметить, что в реальных ЭВМ чаще всего используются 16-ти , 32-х, 64-х разрядные сетки (машинные слова). Однако для учебных целей при рассмотрении методов выполнения арифметических операций не будем обращать внимание на разрядность операндов (т.е. будем использовать разрядность, отличающуюся от разрядности реальных ЭВМ).

Пример 2. Выполнить операцию арифметического сложения двух вещественных чисел в двоичной системе счисления.

Решение.

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

Рассмотрим правило умножения многоразрядных двоичных чисел.

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

Пример 3. Перемножить в двоичной СС числа 7,5D и 5D.

Решение.

В рассмотренном примере второй разряд множителя равен нулю, поэтому второе частичное произведение также равно нулю.

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

В ВТ применяют прямой, обратный и дополнительный коды.

Прямой двоичный код Рпр(х) это такое представление двоичного числа x, при котором знак «плюс» кодируется нулем в старшем разряде числа, знак «минус» единицей. При этом старший разряд называется знаковым.

Например, числа +5D и -5D, представленные в прямом четырехразрядном коде. выглядят так: +5D=0'101В; -5D=1'101B. Здесь апострофом условно (для удобства определения знака) отделены знаковые разряды.

Обратный код Робр(x) получается из прямого кода по следующему правилу:

Из приведенного выражения видно, что обратный код для положительных чисел совпадает с прямым кодом. Чтобы представить отрицательное двоичное число в обратном коде нужно оставить в знаковом разряде 1, во всех значащих разрядах заменить 1 на 0, а 0 на 1. Такая операция называется инвертированием и обозначается горизонтальной чертой над инвертируемым выражением.

Пример 4. Получить обратный код для числа х= – 11D.

Решение.

Рпр(x)=(11011)2

Робр(x)=(10100)2

Считается, что здесь числа представлены пятью разрядами. Из рассмотренного примера видно, что обратный код для положительных чисел совпадает с прямым, а для отрицательных чисел получается инверсией (переворотом) всех разрядов, кроме знакового разряда.

Дополнительный код Рдоп(x) образуется следующим образом:

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

Дополнительный код отрицательного числа может быть получен из обратного кода путем прибавления 1 к младшему разряду обратного кода (естественно, с учетом переносов между разрядами).

Пример 5. Получить дополнительный код для числам х= – 13D.

Решение.

Рпр(х) = ( 11101)2 прямой код

Робр(х) = ( 10010)2— обратный код

Рдон)= (1'0011)2 дополнительный код.

В таблице 2 представлены прямые, обратные и дополнительные коды чисел от -7D до +7D.

Таблица 2

Десятичное

число x

Рпр(х)

Робр(х)

Рдон)

0

0000

0000

0000

1

0001

0001

0001

2

0010

0010

0010

3

0011

0011

0011

4

0100

0100

0100

5

0101

0101

0101

6

0110

0110

0110

7

0111

0111

0111

0

1000

1111

-1

1001

1110

1111

-2

1010

1101

1110

-3

1011

1100

1101

-4

1100

1011

1100

-5

1101

1010

1011

-6

1110

1001

1010

-7

1111

1000

1001

Рассмотрим правила сложения двоичных чисел.

Напомним, что алгебраическое сложение это сложение, в котором могут участвовать как положительные, так и отрицательные числа.

Пример 6. Выполнить алгебраическое сложение о использованием дополнительного кода для чисел x1= 7D и x1= – 3D.

Решение.

Необходимо найти сумму: y = x1 + x2.

Учитывая, что x1>0, это число нужно представить в прямом коде, а так как x2 < 0, то x2 нужно перевести в дополнительный код.

P(х) =Рпр1)+ Рдоп2)

Рпр1) = 0111B

Рпр2) = 1011B

Pобр2) = 1100B

Pдоп2) = 1101B

Так как результат положителен (в знаковом разряде Р(у) - 0), значит, он представлен в прямом коде. После перевода двоичного числа в десятичную СС получим ответ: y =+4D.

Пример 7. Выполнить алгебраическое сложение с использованием дополнительного кода для чисел x1= 8D и x2= – 13D.

Необходимо найти сумму y = x1 + x2.

Число x1 представить в прямом коде, а х2 в дополнительном коде.

P(х) =Рпр1)+ Рдоп2)

Рпр1) = 01000B

Рпр2) = 11101B

Pобр2) = 10010B

Pдоп2) = 10011B

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

Pдоп(y) = 11011B

к прямому коду Рпр(y) необходимо выполнить следующие преобразования:

Робр(у)=Рдоп(у) -1 = 11011B – 1 = 11010В,

.

Переходя от двоичной СС к десятичной СС, получим ответ : у = – 5D.


 

А также другие работы, которые могут Вас заинтересовать

16848. ТОТАЛЬНАЯ ВНУТРИВЕННАЯ АНЕСТЕЗИЯ ИЛИ ИНГАЛЯЦИОННЫЙ НАРКОЗ ДЛЯ ИНТРАКРАНИАЛЬНЫХ ВМЕШАТЕЛЬСТВ 86.3 KB
  П. РАВУССИН Г. ВАН АКЕН Д. ВАН ХЕМЕЛЬРИК. ТОТАЛЬНАЯ ВНУТРИВЕННАЯ АНЕСТЕЗИЯ ИЛИ ИНГАЛЯЦИОННЫЙ НАРКОЗ ДЛЯ ИНТРАКРАНИАЛЬНЫХ ВМЕШАТЕЛЬСТВ Отделение анестезиологии университетской клиники Лозанна Швейцария отделение анестезиологии университетской клиники Леувен Бел
16849. СТАТУС ЮЖНОДУНАЙСКИХ РУМЫНСКИХ ДИАЛЕКТОВ 83.5 KB
  СТАТУС ЮЖНОДУНАЙСКИХ РУМЫНСКИХ ДИАЛЕКТОВ Для решения проблемы статуса южнодунайских диалектов требуется разграничить с одной стороны понятия язык и диалект и с другой стороны понятия диалект и наречие или говор. С генетической точки зрения...
16850. ФОРМИРОВАНИЕ РУМЫНСКИХ ДИАЛЕКТОВ 116 KB
  ФОРМИРОВАНИЕ РУМЫНСКИХ ДИАЛЕКТОВ Проблема формирования 4х румынских диалектов: дакорумынского арумынского мегленорумынского и истрорумынского широко обсуждается в румынской лингвистике. Для решения данной проблемы и получения ответов на многочисленные вопросы...
16851. Анализ философии нового религиозного сознания 44.5 KB
  Анализ философии нового религиозного сознания В конце прошлого столетия и особенно в начале настоящего бурно развивающегося XX века получило распространение религиознофилософское движение под названием религиозного ренессанса. Это движение охватило широкие круг...
16852. Под знаком террора, или: в защиту имени о. Александра Меня 59.5 KB
  Леонид Василенко Под знаком террора или: в защиту имени о. Александра Меня Под знаком террора не может быть раскрыта правда. Николай Бердяев Недавно гдето в ноябре 1998 г. появилось Православное книжное обозрение в редакционном совете которого видим следующих: арх...
16853. Трипілля. Там, де відкрили легендарну цивілізацію 16.88 KB
  Трипілля. Там де відкрили легендарну цивілізацію Зовсім недалеко від нашої столиці всього за 30 км розкинулось на березі Дніпра мальовниче селище Трипілля яке має багатющу та ще до кінця не вивчену історію якої б вистачило не те що на три сила а й на три міста. Місце...
16854. Различия создают различия: разница в экспрессии генов отличает людей от других приматов 46 KB
  Различия создают различия: разница в экспрессии генов отличает людей от других приматов Девид Девитт Еще со времен Дарвина ученыеэволюционисты замечали анатомическое сходство между людьми и большими приматами включая шимпанзе горилл и орангутангов. За последние...
16855. 10 опасностей теистической эволюции 70.5 KB
  PAGE 1 10 опасностей теистической эволюции Вернер Гитт Атеистическая формула для эволюции выглядит следующим образом: Эволюция = материя эволюционные факторы случай и необходимость мутации отбор изоляция смерть очень долгие периоды времени. ...
16856. Биостратиграфия. Геохронологическая шкала 91.81 KB
  Биостратиграфия Вертьянов С. Ю. Для подтверждения или опровержения гипотезы макроэволюции как и любой научной концепции необходимы теоретическая разработка и экспериментальные исследования. Что могло бы подтвердить факт происшедшей эволюции Безусловно останки...