Выполнение действий по восьмеричной системе счисления. Арифметические операции в позиционных системах счисления

Рассмотрим основные арифметические операции: сложение, вычитание, умножение и деление. Правила выполнения этих операций в десятичной системе хорошо известны - это сложение, вычитание, умножение столбиком и деление углом. Эти правила применимы и ко всем другим позиционным системам счисления. Только надо пользоваться особыми таблицами сложения и умножения для каждой системы.

1. Сложение

Таблицы сложения легко составить, используя правила счета.

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

Пример 1. Сложим числа 15 и 6 в различных системах счисления .

Пример 2. Сложим числа 15, 7 и 3.

Шестнадцатеричная : F 16 +7 16 +3 16

15+7+3 = 25 10 = 11001 2 = 31 8 = 19 16 .

Проверка:

11001 2 = 2 4 + 2 3 + 2 0 = 16+8+1=25,

31 8 = 3 . 8 1 + 1 . 8 0 = 24 + 1 = 25,

19 16 = 1 . 16 1 + 9 . 16 0 = 16+9 = 25.

Пример 3. Сложим числа 141,5 и 59,75 .

Ответ: 141,5 + 59,75 = 201,25 10 = 11001001,01 2 = 311,2 8 = C9,4 16

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

11001001,01 2 = 2 7 + 2 6 + 2 3 + 2 0 + 2 -2 = 201,25

311,2 8 = 3 . 8 2 + 1 . 8 1 + 1 . 8 0 + 2 . 8 -1 = 201,25

C9,4 16 = 12 . 16 1 + 9 . 16 0 + 4 . 16 -1 = 201,25

2. Вычитание

Вычитание в двоичной системе счисления

уменьшаемое

вычитаемое

0

1

0

1

заем

Вычитание в шестнадцатеричной системе счисления

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

Заем единицы из старшего разряда

Вычитание в восьмеричной системе счисления

0

1

2

3

4

5

6

7

0

1

2

3

4

5

6

7

Заем единицы из старшего разряда

Пример 4. Вычтем единицу из чисел 10 2 , 10 8 и 10 16

Пример 5. Вычтем единицу из чисел 100 2 , 100 8 и 100 16 .

Пример 6. Вычтем число 59,75 из числа 201,25.

Ответ: 201,25 10 - 59,75 10 = 141,5 10 = 10001101,1 2 = 215,4 8 = 8D,8 16 .

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

10001101,1 2 = 2 7 + 2 3 + 2 2 + 2 0 + 2 -1 = 141,5;

215,4 8 = 2 . 8 2 + 1 . 8 1 + 5 . 8 0 + 4 . 8 -1 = 141,5;

8D,8 16 = 8 . 16 1 + D . 16 0 + 8 . 16 -1 = 141,5.

СИСТЕМЫ СЧИСЛЕНИЙ

Общие сведения

Краткий обзор. Основные термины и понятия

Система счисления – способ представления любого числа с помощью алфавита символов, называемых цифрами.

Существует много систем счисления, которые можно разбить на 2 вида: непозиционные и позиционные.

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

I, IX, XXI, LXI, XLII – символом “I” во всех приведенных числах закодирована цифра единица.

Позиционные системы. Пример арабская система.В позиционной системе значение каждой цифры (символа) зависит от места в числе, где записана эта цифра (символ). Убедимся в этом, на примере из принятой у нас десятичной системы, выполнив тождественные преобразования числа.

5555=5000+500+50+5. Итак, цифра 5 обозначает 5000, 500, 50 и 5.

В десятичной системе применяется 10 цифр (символов) для записи чисел: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Количество цифр (символов) применяемых в системе называют ее основанием, следовательно, у нашей системы основание равно 10, поэтому ее называют десятичной. Выполним снова преобразования десятичного числа

5685=5*1000+6*100+8*10+5=5*10 3 +6*10 2 +8*10 1 +5*10 0

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

Кроме десятичной системы существуют некоторые другие системы счислений. Например, 12-тиричная применялась в России до 1917 года. До сих пор сохранились выражения «дюжина», «чертова дюжина». Ее до сих пор применяют в денежных единицах некоторых стран. На часах 12 чисел. 12 месяцев в году и т.д.

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

Способы записи информации в компьютерной технике

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

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

Этот минимальный объем информации, который можно записать на таких носителях называютбит .

Исторически сложилось так, что 8 носителей информации объединили в одну ячейку памяти, и количество записываемой в них информации назвали байт. Таким образом 1 байт = 8 бит.
В байте можно записать 2 8 =256 различных комбинаций двоичных чисел, то есть чисел состоящих только из двух цифр 0 и 1: 00000000, 00000001, 00000010, 00000011 . . . 11111110, 11111111.

Если посмотреть несколько ячеек памяти, то в них будет записано множество нулей и единиц. Адреса ячеек памяти также представляются в двоичной системе. Чтобы облегчить человеку работу с такого рода информацией решили работать с ней по правилам 2-ной системы счислений. Числа этой системы можно перевести в другие более привычные и наглядные для человека системы: 8-меричную, 16-тиричную, 10-тичную.

Таблица 1.1.2

Десятичная система Двоичная система Восьмеричная система Шестнадцатеричная система
A
B
C
D
E
F

Из таблицы 1.1.2 видно, какие символы применяются в качестве цифр в разных системах. Если использован последний допустимый символ, то в младшем разряде пишут 0, а в старшем 1.

Арифметические действия в системах счисления

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

Сложение

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

Например 173, 261 8

16, 35 8

Восьмеричная с.с.

Арифметические операции в позиционных системах счисления

Арифметические операции во всех позиционных системах счисления выполняются по одним и тем же хорошо известным вам правилам.

Сложение. Рассмотрим сложение чисел в двоичной системе счисления. В его основе лежит таблица сложения одноразрядных двоичных чисел:

0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 10

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

Сложение многоразрядных двоичных чисел происходит в соответствии с вышеприведенной таблицей сложения с учетом возможных переносов из младших разрядов в старшие. В качестве примера сложим в столбик двоичные числа 110 2 и 11 2:

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

110 2 = 1 × 2 2 + 1 × 2 1 + 0 × 2 0 = 6 10 ;

11 2 = 1 × 2 1 + 1 × 2 0 = 3 10 ;

6 10 + 3 10 = 9 10 .

Теперь переведем результат двоичного сложения в десятичное число:

1001 2 = 1 × 2 3 + 0 × 2 2 + 0 × 2 1 + 1 × 2 0 = 9 10 .

Сравним результаты - сложение выполнено правильно.

Вычитание. Рассмотрим вычитание двоичных чисел. В его основе лежит таблица вычитания одноразрядных двоичных чисел. При вычитании из меньшего числа (0) большего (1) производится заем из старшего разряда. В таблице заем обозначен 1 с чертой:

Умножение. В основе умножения лежит таблица умножения одноразрядных двоичных чисел:

Деление. Операция деления выполняется по алгоритму, подобному алгоритму выполнения операции деления в десятичной системе счисления. В качестве примера произведем деление двоичного числа 110 2 на 11 2:

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

Задания

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

1.23. Сложить восьмеричные числа: 5 8 и 4 8 , 17 8 и 41 8 .

1.24. Провести вычитание шестнадцатеричных чисел: F 16 и А 16 , 41 16 и 17 16 .

1.25. Сложить числа: 17 8 и 17 16 , 41 8 и 41 16

Двоичная система счисления Сложение одноразрядных двоичных чисел: 0+0=0 1+0=1 0+1=1 1 + 1 = 10 Пример 1101 + 101 -----10010

Двоичная система счисления Вычитание одноразрядных двоичных чисел: 0 -0=0 1 -0=1 0 - 1 = (заем из старшего разряда) 1 1 -1=0 Пример: 1110 - 101 ---1001

Двоичная система счисления Умножение одноразрядных двоичных чисел: 0*0=0 1*0=0 0*1=0 1*1=1 Пример: 1110 * 10 -----+ 0000 1110 -------11100

Двоичная система счисления Деление выполняется так же как в десятичной системе счисления: 1110 10 11 10 10 10 111

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

Выполнение арифметических операций над двоичными числами разных порядков: Пример. Сложение Х 1=0, 1001*2101 Х 2=0, 1100*2100 1) р=101 -100=001 Х 2=0, 0110*2101 2)0, 1001 +0, 0110 0, 1111 3) Х 1+ Х 2=0, 1111*2101

Выполнение арифметических операций над двоичными числами разных порядков: Пример. Вычитание Х 1=0, 1001*2101 Х 2=0, 1100*2100 1) р=101 -100=001 Х 2=0, 0110*2101 2) 0, 1001 -0, 0110 0, 0011 3) Х 1 - Х 2=0, 0011*2101=0, 11*211

Выполнение арифметических операций над двоичными числами разных порядков: Пример. Умножение Х 1=q 1*2 p 1 Х 2=q 2*2 p 2 Х 1=10=0, 10*210 Х 2=10=0, 10*210 0, 10 *0, 10 0 00 01 0 000____ 0, 0100 X 1*X 2=q 1*q 2*2(p 1+p 2) р1+р2=10+10=100 X 1*X 2=0, 0100*2100

Выполнение арифметических операций над двоичными числами разных порядков: Пример. Деление Х 1=q 1*2 p 1 Х 2=q 2*2 p 2 Х 1=0, 110=110*2 -11 Х 2=0, 10=10*2 -10 10 10 11 10 10 0 р1 -р2=-11 -(-10)=-01 =11*2 -01

В ПК используются следующие разрядные сетки для представления чисел: 1 байт (8 разрядов) – полуслово 2 байта (16 разрядов) – слово 4 байта (32 разряда) – двоичное слово 8 байт (64 разряда) – расширенное слово -310 = -112 в восьмиразрядной сетке будет иметь вид: 1000011 Для кодирования знака числа отводится специальный разряд, называемый знаковым. Под него отводится старший разрядной сетки, «+» кодируется 0, «-» кодируется 1.

Выполнение арифметических операций в машинных кодах позволяет: свести операцию вычитания к операции сложения автоматически получать знак суммы выявлять переполнение разрядной сетки

Виды машинных кодов Прямой код числа представляется в виде абсолютной величины со знаком двоичного числа – это само двоичное число, в котором все цифры, изображающие его значение, записываются как в математической записи, а знак записывается в виде кода (0, 1) в старшем разряде. Обратный код положительного числа совпадает с его прямым кодом. Дополнительный код положительного совпадает с его прямым кодом. числа

Виды машинных кодов Обратный код отрицательного числа получается с помощью замены значений всех цифр числа на противоположные за исключением знакового разряда. 310 = 112 в прямом, дополнительном и обратном коде будет иметь вид – 0000011 -310 = -112 прямом коде будет иметь вид: 1000011 -310 = -112 обратном коде будет иметь вид: 11111100

Виды машинных кодов Дополнительный код отрицательного числа получается в результате увеличения его обратного кода на 1. -310 = -112 обратном коде будет иметь вид: 11111100 -310 = -112 дополнительном коде будет иметь вид: 11111101

Пример 1. Выполнение операции в обратном коде Х 1 -Х 2=17 -5= 17+(-5)=12 [Х 1] пр=0001 [Х 2] пр=10000101 [Х 1] обр=0001 [Х 2] обр=11111010 При выполнении операций в обратном коде единица, ушедшая за 8 разряд, прибавляется к младшему разряду числа.

Пример 2. Х 1 -Х 2=5 -17= 5+(-17)=-12 [Х 1] пр=00000101 [Х 2] пр=10010001 00000101 +1110 11110011 обр. 10001100= -12 [Х 1] обр=00000101 [Х 2] обр=1110 Ответ всегда записывается в прямом коде. Если в результате получилось отрицательное число, то его необходимо перевести в прямой код.

Пример 3. Выполнение операции в дополнительном коде Х 1 -Х 2=17 -5= 17+(-5)=12 [Х 1] пр=0001 [Х 2] пр=10000101 [Х 1] обр=0001 [Х 2] обр=11111010 [Х 1] доп=0001 [Х 2] доп=11111011 При выполнении операций в дополнительном коде Единица, ушедшая за 8 разряд ВЫБРАСЫВАЕТСЯ.

Пример 4. Х 1 -Х 2=5 -17= 5+(-17)=-12 [Х 1] пр=00000101 [Х 2] пр=10010001 [Х 1] обр=00000101 [Х 2] обр= 1110 [Х 1] доп=00000101 [Х 2] доп= 11101111 Получили отрицательное число в доп. коде. Для перевода его в прямой код необходимо: 1. Проинвертировать все разряды числа, за исключением знакового; 2. Еще раз прибавить 1 к младшему разряду.

Модифицированный дополнительный машинный коды Модифицированный дополнительный код получается из дополнительного простым дублированием знакового разряда. "00" соответствует знаку "+", "11" - знаку "-". Любая другая комбинация ("01" или "10"), получившаяся в знаковых разрядах служит признаком переполнения разрядной сетки и получившийся результат – неверный. знак 5 4 3 2 1 0

Пример Переведем X и Y в модифицированный дополнительный код: Выполним сложение: В данном примере запятой отделены знаковые разряды!! Переполнения нет (в знаковых разрядах "00" – в результате получено положительное число), поэтому полученный результат - верный (X+Y=1111=41 -26= 15).

Пример 2 Обычная запись числа Х= -41= - 101001 У= 26= + 011010 Модифицированный обратный код 11 010110 00 011010 Модифицированный дополнительный код 11 010111 00 011010 Х+У= -41+26= -15 11 010111 +00 011010 11 110001 доп. модиф. код Переполнения нет (в знаковых разрядах "11" – в результате получено отрицательное число), поэтому полученный результат – нужно переводить в прямой код. 11 110001 доп. модиф. код 11 001110 обратный. модиф. код + 1 11 001111 , что соответствует числу - 1510