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

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

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

При сложении двух единиц происходит переполнение разряда и производится перенос единицы в старший разряд, при вычитании 0–1 производится заем из старшего разряда, в таблице «Вычитание» этот заем обозначен 1 с чертой над цифрой (Таблица 3).

Таблица 3

Ниже приведены примеры выполнения арифметических операций над числами, представленными в различных системах счисления:

Арифметические операции над целыми числами, представленными в различных системах счисления, достаточно просто реализуются с помощью программ Калькулятор и MS Excel.

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

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

Целые числа хранятся в памяти в формате с фиксированной запятой. При таком формате представления чисел для хранения целых неотрицательных чисел отводится регистр памяти, состоящий из восьми ячеек памяти (8 бит). Каждому разряду ячейки памяти соответствует всегда один и тот же разряд числа, а запятая находится справа после младшего разряда и вне разрядной сетки. Например, число 110011012 будет храниться в регистре памяти следующим образом:

Таблица 4

Максимальное значение целого неотрицательного числа, которое может храниться в регистре в формате с фиксированной запятой, можно определить из формулы: 2n – 1, где n – число разрядов числа. Максимальное число при этом будет равно 28 – 1 = 25510 = 111111112и минимальное 010 = 000000002. Таким образом, диапазон изменения целых неотрицательных чисел будет находиться в пределах от 0 до 25510.

В отличие от десятичной системы в двоичной системе счисления при компьютерном представлении двоичного числа отсутствуют символы, обозначающие знак числа: положительный (+) или отрицательный (-), поэтому для представления целых чисел со знаком в двоичной системе используются два формата представления числа: формат значения числа со знаком и формат дополнительного кода. В первом случае для хранения целых чисел со знаком отводится два регистра памяти (16 бит), причем старший разряд (крайний слева) используется под знак числа: если число положительное, то в знаковый разряд записывается 0, если число отрицательное, то – 1. Например, число 53610 = 00000010000110002 будет представлено в регистрах памяти в следующем виде:

Таблица 5

а отрицательное число -53610 = 10000010000110002 в виде:

Таблица 6

Максимальное положительное число или минимальное отрицательное в формате значения числа со знаком (с учетом представления одного разряда под знак) равно 2n-1 – 1 = 216-1 – 1 = 215 – 1 = 3276710 = 1111111111111112 и диапазон чисел будет находиться в пределах от -3276710 до 32767.

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

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

1) модуль числа записать прямым кодом в n (n = 16) двоичных разрядах;

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

3) к полученному обратному коду прибавить единицу к младшему разряду.

Например, для числа -53610 в таком формате модуль будет равен 00000010000110002, обратный код – 1111110111100111, а дополнительный код – 1111110111101000.

Необходимо помнить, что дополнительный код положительного числа – само число.

Для хранения целых чисел со знаком помимо 16-разрядного компьютерного представления, когда используются два регистра памяти (такой формат числа называется также форматом коротких целых чисел со знаком), применяются форматы средних и длинных целых чисел со знаком. Для представления чисел в формате средних чисел используется четыре регистра (4 х 8 = 32 бит), а для представления чисел в формате длинных чисел – восемь регистров (8 х 8 = 64 бита). Диапазоны значений для формата средних и длинных чисел будут соответственно равны: -(231 – 1) … + 231 – 1 и -(263-1) … + 263 – 1.

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

Вещественные числа (конечные и бесконечные десятичные дроби) обрабатываются и хранятся в компьютере в формате с плавающей запятой. При таком формате представления числа положение запятой в записи может изменяться. Любое вещественное число К в формате с плавающей запятой может быть представлено в виде:

где А – мантисса числа; h – основание системы счисления; p – порядок числа.

Выражение (2.7) для десятичной системы счисления примет вид:

для двоичной -

для восьмеричной -

для шестнадцатеричной -

Такая форма представления числа также называется нормальной . С изменением порядка запятая в числе смещается, т. е. как бы плавает влево или вправо. Поэтому нормальную форму представления чисел называют формой с плавающей запятой . Десятичное число 15,5, например, в формате с плавающей запятой может быть представлено в виде: 0,155 · 102; 1,55 · 101; 15,5 · 100; 155,0 · 10-1; 1550,0 · 10-2 и т. д. Эта форма записи десятичного числа 15,5 с плавающей запятой не используется при написании компьютерных программ и вводе их в компьютер (устройства ввода компьютеров воспринимают только линейную запись данных). Исходя из этого выражение (2.7) для представления десятичных чисел и ввода их в компьютер преобразовывают к виду

где Р – порядок числа,

т. е. вместо основания системы счисления 10 пишут букву Е, вместо запятой – точку, и знак умножения не ставится. Таким образом, число 15,5 в формате с плавающей запятой и линейной записи (компьютерное представление) будет записано в виде: 0.155Е2; 1.55Е1; 15.5Е0; 155.0Е-1; 1550.0Е-2 и т.д.

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

где |А| - абсолютное значение мантиссы числа.

Условие (2.9) означает, что мантисса должна быть правильной дробью и иметь после запятой цифру, отличную от нуля, или, другими словами, если после запятой в мантиссе стоит не нуль, то число называется нормализованным. Так, число 15,5 в нормализованном виде (нормализованная мантисса) в форме с плавающей запятой будет выглядеть следующим образом: 0,155 · 102, т. е. нормализованная мантисса будет A = 0,155 и порядок Р = 2, или в компьютерном представлении числа 0.155Е2.

Числа в форме с плавающей запятой имеют фиксированный формат и занимают в памяти компьютера четыре (32 бит) или восемь байт (64 бит). Если число занимает в памяти компьютера 32 разряда, то это число обычной точности, если 64 разряда, то это число двойной точности. При записи числа с плавающей запятой выделяются разряды для хранения знака мантиссы, знака порядка, мантиссы и порядка. Количество разрядов, которое отводится под порядок числа, определяет диапазон изменения чисел, а количество разрядов, отведенных для хранения мантиссы, – точность, с которой задается число.

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

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

2) выполняются арифметические операции над мантиссами чисел;

3) производится нормализация полученного результата.

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

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

Примеры с двоичными числами:

101001 101 10111 1100,01

1011 + 011 + 10110 - 0,10

110100 1000 101101 1011,11

Умножение

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

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

00000 + 100111

00000 + 100111

11011 + 100111

11110011 101011010001

Деление

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

101001101 1001 − 333 9 11110 110

1001 100101 27 37 - 110 101

1001 1001000 1000

Арифметические действия с числами в восьмеричной и шестнадцатеричной системах счисления выполняются по аналогии с двоичной и десятичной системами. Для этого необходимо воспользоваться необходимыми таблицами.

Процессор не умеет непосредственно осуществлять операцию вычитания, поэтому вычитание приходится сводить к сложению путем представления вычитаемого в так называемом дополнительном коде. Рассмотрим прежде всего обратный код числа. Например, 1001 (исходное число), а 0110 - обратный код + 1 = 0111 дополнительный код.

Т.е. вычитание в двоичной арифметике – это сложение уменьшаемого с дополнительным кодом вычитаемого. Например, из 101 2 вычесть 10 2

1) 10 2 = 010, его обратный код 101

2) затем увеличив обратный код на 1 получим дополнительный код 110

110 (или 5-2=3)

4) Отметим, что перенос из старшего результата означает, что полученный результат положителен

Вопросы для самоконтроля

    Что называется системой счисления?

    В чем отличие позиционных систем счисления от непозиционных?

    Как определяется процесс кодирования информации и почему в нем существует необходимость?

    Какие единицы измерения количества информации вы знаете?

    Почему двоичное представление информации входит в число основных принципов работы современных ЭВМ?

    Переведите из двоичной системы счисления в десятичную: 10100011 2 и 1101011 2 .

    Что такое базис естественной позиционной системе счисления?

    Какие методы перевода чисел от одной системы счисления в другую вы знаете?

Дополнительный материал

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

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

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

Ответ: 5+7+3 =25 10 =11001 2 =31 8 = 9 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

Сложение и вычитание

В системе с основанием для обозначения нуля и первых с-1 натуральных чисел служат цифры 0, 1, 2, ..., с - 1. Для выполнения операции сложения и вычитания составляется таблица сложения однозначных чисел.

Таблица 1 - Сложение в двоичной системе

Например, таблица сложения в шестеричной системе счисления:

Таблица 2 - Сложение в шестеричной системе

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

Например,

Можно обосновать указанное правило сложения чисел, используя представление чисел в виде:

Разберем один из примеров:

3547=3*72+5*71+4*70

2637=2*72+6*71+3*70

(3*72+5*71+4*70) + (2*72+6*71+3*70) =(3+2)*72+(5+6)*7+(3+4)=

5*72+1*72+4*7+7=6*72+4*7+7=6*72+5*7+0=6507

Последовательно выделяем слагаемые по степени основания 7, начиная с низшей, нулевой, степени.

Вычитание производится также по разрядам, начиная с низшего, причем если цифра уменьшаемого меньше цифры вычитаемого, то из следующего разряда уменьшаемого "занимается" единица и из полученного двузначного числа вычитается соответствующая цифра вычитаемого; при вычитании цифр следующего разряда в этом случае нужно мысленно уменьшить цифру уменьшаемого на единицу, если же эта цифра оказалась нулем (и тогда уменьшение ее невозможно), то следует "занять" единицу из следующего разряда и затем произвести уменьшение на единицу. Специальной таблицы для вычитания составлять не нужно, так как таблица сложения дает результаты вычитания.

Например,

Умножение и деление

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

Таблица 3 - Умножение однозначных чисел

Таблица 4 - Умножение в шестеричной системе счисления

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

Например,

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

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

Например:


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

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

Способ деления

Пусть дано число N=an an-1. . . a1 а0 р.

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

N=bmhm+bm-1hm-1+... +b1h+b0 (1)

где 1

N=bmbm-1... b1boh (2)

Из (1) получаем:

N= (bmhm-1+...+b)*h +b0 = N1h+b0, где 0? b0 ?h (3)

To есть, цифра b0 является остатком от деления числа N на число h. Неполное частное Nl = bmhm-1+ . . . +b1 представим в виде:

Nl = (bmhm-2 + ... + b2)h + b1 = N2h+b1, где 0? b2 ?h (4)

Таким образом, цифра bi в записи (2) числа N является остатком от деления первого неполного частного N1 на основание h новой системы счисления. Второе неполное частное N2 представим в виде:

N2 = (bmhm-3+ ... +b3)h+b2, где 0? b2 ?h (5)

то есть цифра b2 является остатком от деления второго неполного частного N2 на основание h новой системы. Так как не полные частные убывают, то этот процесс конечен. И тогда мы получаем Nm = bm, где bm

Nm-1 = bmh+bm.1 = Nmh+bm.1

Таким образом, последовательность цифр bm, bm-1 . . ,b1,b0 в записи числа N в системе счисления с основанием h есть последовательность остатков последовательного деления числа N на основание h, взятая в обратной последовательности.

Рассмотрим пример: Выполнить перевод числа 123 в шестнадцатеричную систему счисления:

Таким образом, число 12310=7(11)16 либо можно записать как 7B16

Запишем число 340227 в пятеричной системе счисления:

Таким образом, получаем, что 340227=2333315

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

При сложении чисел в произвольной позиционной системе счисления с основанием р в каждом разряде производится сложение цифр слагаемых и цифры, переносимой из соседнего младшего разряда, если она имеется. При этом необходимо учитывать, что если при сложении чисел получилось число, большее или равное р, то представляем его в виде p*k + b, где kÎ N – количество единиц переноса в следующий разряд 0 ≤ b ≤ p - 1

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

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

+ 1101 2

1 +1 = 2 = 1

0 +0 + 1 = 1

1 + 1 = 2 = 1 *2 + 0 («1» переносится в старший разряд)

1 + 0 + 1 = 2 = 1 *2 + 0 («1» переносится в старший разряд)

5 +6 = 11 = 1 *8 + 3 («1» переносится в старший разряд)

4 +1 + 1 = 6

6 + 3 = 9 = 1 *8 + 1 («1» переносится в старший разряд)

7 + 0 + 1 = 8 = 1 *8 + 0 («1» переносится в старший разряд)

+ E836 16

10 +6 = 16 = 1 *16 + 0 («1» переносится в старший разряд)

15 +3 + 1 = 19 = 1 *16 + 3 («1» переносится в старший разряд)

9 + 8 + 1 = 18 = 1 *16 + 2 («1» переносится в старший разряд)

0 + 14 + 1 = 15 = F

При вычитании чисел в р цифры вычитаются поразрядно. Если в рассматриваемом разряде необходимо от меньшего числа отнять большее, то занимается единица в следующем (старшем разряде). Занимаемая единица равна р единицам этого разряда (аналогично, когда занимаем единицу в десятичной системе счисления, то занимаемая единица равна 10.) Для двоичной системы счисления занимаемая единица = 2 10 = 10 2 , для восьмеричной системы счисления занимаемая единица = 8 10 = 10 8 , для шестнадцатеричной системы счисления занимаемая единица = 16 10 = 10 16 .

Примеры: Точками в примерах с вычитанием отмечены разряды, из которых приходилось занимать.

2 – 1 = 1 (так как 0 < 1 пришлось занять из соседнего разряда)

2 – 1 = 1 (так как 0 < 1 пришлось занять из соседнего разряда)

В этом разряде остался 0, вновь пришлось занимать из старшего разряда: 2 – 1 = 1

В этом разряде остался 0

8 + 5 – 6 = 7 (так как 5 < 6 пришлось занять из соседнего разряда)


8 + 0 – 4 = 4 (после того, как заняли, в этом разряде остался 0)

16 + 6 – 10 = 12 = C 16 (заняли из соседнего разряда)

16 + 2 – 15 = 3 (В этом разряде осталась 2, заняли из соседнего разряда)

16 + 7 – 9 = 14 = Е 16

В этом разряде осталась D 16

Иногда при вычитании необходимо занимать единицу через несколько разрядов, так как в соседнем или в нескольких соседних разрядах подряд стоят нули. В этом случае надо иметь в виду, что в этих разрядах на месте нулей после того, как заняли, будет располагаться «последняя цифра» той системы счисления, в которой записано уменьшаемое, т.е. цифра 1 для двоичной, цифра 7 для восьмеричной и цифра F для 16-ричной систем счисления.

· 1 1 2 · 7 7 8 · F F 16

1000 2 1000 8 1000 16

11 2 11 8 AD 16

101 2 767 8 F53 16

Замечание . При выполнении арифметических операций с числами, которые находятся в разных системах счисления, необходимо перевести числа в одну и ту же систему и только потом выполнять действие. Конечно, можно в качестве такой системой счисления выбрать десятичную систему, однако, в случае, когда в числах много цифр, такой перевод будет трудоемким. Например, при переводе числа 123456789ABCDEF 16 в десятичную систему придется вычислять 16 в степенях вплоть до четырнадцатой.

Умножение в позиционной системе счисления является достаточно сложным действием, поэтому более надежно умножение выполнять в 10-тичной системе с предварительным и завершающим переводом в исходную систему. Однако умножение на 2 можно представить в виде суммы. Например: 2*Т, где Т = 315 8

2 * 315 8 = 315 8

При умножении на 7 10 , 8 10 , 9 10 можно воспользоваться переводом в десятичную систему. Но так как десятичное число 8 равно 8-ричному числу 10 (8 10 = 10 8), тогда умножение можно заменить умножением на десять с последующим вычитанием или сложением.

1) 8 10 * 6271 8 = 10 8 * 6271 8 = 62710 8

2) 7 10 * 6271 8 = (8 10 – 1 10) * 6271 8 = (10 8 – 1 8) * 6271 8 =

3) 9 10 * 6271 8 = (8 10 + 1 10) * 6271 8 = (10 8 + 1 8) * 6271 8 =

Замечание . Если второй сомножитель представлен в двоичной или шестнадцатеричной системе, его предварительно необходимо перевести в восьмеричную систему счисления, например: 7 10 * А3С5 16 .

Сначала переведите А3С5 16 в восьмеричную систему, используя метод тетрад и триад, а затем выполните умножение.

А3С5 16 = 1010 0011 1100 0101 2 = 001 010 001 111 000 101 2 = 121705 8 .

7 10 * 121705 8 = (8 10 – 1 10) * 121705 8 = (10 8 – 1 8) * 121705 8 =

121705 8

При умножении на 15 10 , 16 10 , 17 10 можно воспользоваться тем фактом, десятичное число 16 равно 16-ричному числу 10 (16 10 = 10 16). В этом случае, как и в предыдущем, умножение можно заменить умножением на десять с последующим вычитанием или сложением.

1) 16 10 * A6D5 16 = 10 16 * A6D5 16 = A6D50 16

2) 15 10 * A6D5 16 = (16 10 – 1 10) * A6D5 16 = (10 16 – 1 16) * A6D5 16 =

3) 17 10 * A6D5 16 = (16 10 + 1 10) * A6D5 16 = (10 16 + 1 16) * A6D5 16 =

Замечание . Если второй сомножитель представлен в двоичной или восьмеричной системе, его предварительно необходимо перевести в шестнадцатеричную систему счисления, например: 17 10 * 7154 8 .

Сначала переведите 7154 8 в шестнадцатеричную систему, используя метод тетрад и триад, а затем выполните умножение.

7154 8 = 111 001 101 100 2 = 1110 0110 1100 2 = E6C 16 .

17 10 * E6C 16 = (16 10 + 1 10) * E6C 16 = (10 16 + 1 16) * E6C 16 =

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

Непозиционными системами называются такие, у которых каждая цифра сохраняет свое значение независимо от места нахождения в числе. Примером может служить римская система счисления, в которой используются такие цифры как I, V, X, L, C, D, M и т.д.

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

Например, можно записать

Что соответствует числам в десятичной системе счисления

Индекс снизу указывает на основу счисления.

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

Перевод чисел из системы , в систему;

Перевод чисел из системы , в системус использованием арифметики системы;

Рассмотрим первое правило . Допустим, число в десятичной системе необходимо представить в двоичной системе . Для этого данное число делится на основание системы представленное в системе , т.е. на 2 10 . Остаток от деления будет младшим разрядом двоичного числа. Целая часть результата от деления вновь делится на 2. Операцию деления повторять столько раз, пока частное не будет меньше двух.

Пример: 89 10 перевести в двоичное число, пользуясь арифметикой десятичной системы счисления

89 10 → 1011001 2

Обратный перевод, согласно того же правила, следующий:

1011001 2 перевести в десятичное число, пользуясь арифметикой двоичной системы счисления

Двоичные числа 1000 и 1001 согласно таблице 2.1 соответственно равны 8 и 9. Поэтому 1011001 2 → 89 10

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

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

Арифметические и логические операции

Арифметические операции

Рассмотрим арифметику двоичной системы счисления, так как именно она используется в современных компьютерах по следующим причинам:

Существуют простейшие физические элементы, которые имеют только два состояния и которые можно интерпретировать как 0 и 1;

Арифметическая обработка очень проста.

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

Операции сложения, вычитания и умножения в двоичной системе имеют вид:

Как уже было продемонстрировано ранее, чтобы обойтись только сумматором, то есть выполнять лишь операции сложения, операция вычитания заменена на сложение. Для этого код отрицательного числа формируется как дополнение до чисел 2, 10, 100 и т.д.