Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы.docx
Скачиваний:
94
Добавлен:
07.02.2015
Размер:
297.29 Кб
Скачать

4.Арифметические действия над двоичными числами.

Сложение. Т.к. 1+1=10, то 0 остается в данном разряде, а 1 переносится в следующий разряд

Примеры

1001

+1010

10011

1101

+ 1011

11000

11111

+1

100000

1010011,111

+ 11001,110

1101101,101

Вычитание производится всегда из числа большего по абсолютной величине

110

- 11

011

100

- 1

011

10111001,1

-10001101,1

00101100,0

110110101

- 101011111

001010110

Умножение Операция умножения выполняется с использованием таблицы умножения по обычной схеме.

11001

* 1101

11001

11001

11001

101000101

11001,01

* 11,01

1100101

1100101

1100101

1010010,0001

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

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

5.Правило перевода чисел из десятичной системы в любую другую систему счисления.

Для перевода числа из десятичной системы счисления в систему счисления с другим основанием поступают следующим образом:

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

б) Для перевода дробной части числа ее умножают на основание системы счисления, фиксируя при этом целые части полученных произведений. Целые части в дальнейшем умножении не участвуют. Умножение производиться до получения 0 в дробной части произведения или до заданной точности вычисления.

в) Ответ записывают в виде сложения переведенной целой и переведенной дробной части числа.

6.Правила перевода в десятичную систему счисления из любой другой.

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

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

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

8.Правило перевода из шестнадцатеричной системы счисления в двоичную и наоборот.

Правило перевода из двоичной системы счисления в шестнадцатеричную: разбить двоичное число вправо и влево от запятой на тетрады ( по 4 цифры ) и представить каждую тетраду соответствующим шестнадцатеричным кодом. При невозможности разбиения на тетрады допускается добавление нулей слева в целой записи числа и справа в дробной части числа. Для обратного перевода каждую цифру шестнадцатеричного числа представляют тетрадой двоичного кода.

9.Дополнительный и смещенный код числа.

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

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

Дополнение до 2 двоичного числа определяется как величина полученная вычитанием числа из наибольшей степени двух (из 2N для N-битного дополнения до 2).

Представление числа в дополнительном коде

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

Двоичное 8-ми разрядное число со знаком в дополнительном коде может представлять любое целое в диапазоне от −128 до +127. Если старший разряд равен нулю, то наибольшее целое число, которое может быть записано в оставшихся 7 разрядах равно , что равно 127.

Примеры:

Десятичное

представление

Код двоичного представления(8 бит)

прямой

дополнительный

127

01111111

01111111

1

00000001

00000001

0

00000000

00000000

-0

10000000

--------

-1

10000001

11111111

-2

10000010

11111110

-3

10000011

11111101

-4

10000100

11111100

-5

10000101

11111011

-6

10000110

11111010

-7

10000111

11111001

-8

10001000

11111000

-9

10001001

11110111

-10

10001010

11110110

-11

10001011

11110101

-127

11111111

10000001

-128

--------

10000000

При применении той же идеи к привычной 10-ричной системе счисления получится (например, для гипотетического процессора использующего 10-ричную систему счисления):

10-ричная система счисления

("обычная" запись)

10-ричная система счисления,

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

...

...

13

0013

12

0012

11

0011

10

0010

9

0009

8

0008

...

...

2

0002

1

0001

0

0000

-1

9999

-2

9998

-3

9997

-4

9996

...

...

-9

9991

-10

9990

-11

9989

-12

9988

...

...

Преобразование дополнительного кода

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

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

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

Пример. Преобразуем отрицательное число −5, записанное в прямом коде, в дополнительный. Прямой код числа −5, взятого по модулю:

101

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

010

Добавим к результату 1

011

Допишем слева знаковый единичный разряд

1011

Для обратного преобразования используется тот же алгоритм. А именно:

1011

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

0100

Добавим к результату 1 и проверим, сложив с дополнительным кодом

0101 + 1011 = 10000, пятый разряд выбрасывается.

Дополнительный код для десятичных чисел

Тот же принцип можно использовать и в компьютерном представлении десятичных чисел: для каждого разряда цифра X заменяется на 9−X, и к получившемуся числу добавляется 1. Например, при использовании четырёхзначных чисел −0081 заменяется на 9919 (9919+0081=0000, пятый разряд выбрасывается).