Системы счисления

VALIGN=TOP>

Двоичное счисление


Обратный код Дополнительный код

Код Грея


0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

1

0

0

0

0

1

1

1

1

0

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

1

1

1

1

1

1

1

1

0

0

0

0

0

0

0

0

1

1

1

1

0

0

0

0

1

1

1

1

0

0

0

0

1

1

0

0

1

1

0

0

1

1

0

0

1

1

0

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

0

1

1

1

1

1

1

1

0

0

0

0

0

0

0

0

0

1

1

1

1

0

0

0

0

1

1

1

1

0

0

0

0

1

1

0

0

1

1

0

0

1

1

0

0

1

1

0

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

1

0

0

0

0

1

1

1

1

1

1

1

1

0

0

0

0

0

0

1

1

1

1

0

0

0

0

1

1

1

1

0

0

0

1

1

0

0

1

1

0

0

1

1

0

0

1

1

0


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


Таблица 2.

Наиболее распространенные двоично-десятичные коды чисел от 0 до 9




Десятичное число

Двоично-десятичный код (8-4-2-1)


Код Айкена (2-4-2-1) Код «с избытком 3»


0

1

2

3

4

5

6

7

8

9

0

0

0

0

0

0

0

0

1

1

0

0

0

0

1

1

1

1

0

0

0

0

1

1

0

0

1

1

0

0

0

1

0

1

0

1

0

1

0

1

0

0

0

0

0

1

1

1

1

1

0

0

0

0

1

0

1

1

1

1

0

0

1

1

0

1

0

0

1

1

0

1

0

1

0

1

0

1

0

1

0

0

0

0

0

1

1

1

1

1

0

1

1

1

1

0

0

0

0

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

0

1

0



Например, число в двоично-десятичном коде записывается в виде 0111 0010 1001. Для выполнения сложения и вычитания двоично-десятичных чисел наиболее удобно использовать самодополняющиеся коды, к числу которых относятся код Айкена, код “с избытком 3 ”.Код Айкена отличается от обычного двоично-десятичного, имеющего весовые коэффициенты разрядов в тетрадах 8-4-2-1, другими значениями весовых коэффициентов разрядов: 2-4-2-1. Код “с избытком 3”получается из обычного двоично-десятичного арифметическим прибавлением числа 3 (двоичное число 0011).

Как видно из таблицы 2 обратный код числа, представленного в каком-либо самодополняющем двоично-десятичном коде ,является его двоичным дополнением до 9. Например, число 5 в коде «с избытком 3» =1000 имеет обратный код =0111, соответствующий числу 4 в коде «с избытком 3», которое «дополняет» число 5 до 9, так как 5+4=9.

Двоичная арифметика.


Мы будем рассматривать двоичную систему счисления с цифрами 0,1. Именно эта система счисления получила широкое применение в вычислительных машинах. Начало исследования этой системы относится к XVI веку. Удобство и простоту выполнения арифметических операций в двоичной системе счисления отмечали еще Б. Паскаль, Г. Лейбниц и др. Рассмотрим правила выполнения арифметических операций с двоичными числами.

СЛОЖЕНИЕ. Для того чтобы выполнить сложение двух чисел, записанных в двоичной системе счисления, достаточно знать простейшую таблицу сложения:

0+0=0

0+1=1

1+0=1

1+1=10

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

1+1=0+перенос единицы в соседний старший разряд.

Пример: Сложить двоичные числа

и .

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

+ 110,1011

10111,10101

10001,00011 – поразрядная сумма без учета переносов


11 1, 1 - переносы

11100,01011 - поразрядная сумма без учета повторных переносов


1

11110,01011 - окончательная сумма.

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

ВЫЧИТАНИЕ. Таблица вычитания имеет вид

0-0=0

1-0=1

1-1=0

10-1=1

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

Пример. Вычесть их =11010,1011 число =1101,01111


11010,1011

- 1101,01111

1101,00111


УМНОЖЕНИЕ. Умножение двух двоичных чисел выполняется так же, как и умножение десятичных. Сначала получаются частичные произведения и затем их суммируют с учетом веса соответствующего разряда множителя.

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

Умножение производится, начиная с младшего или старшего разряда множителя, что и определяет направление сдвига. Если сомножители имеют дробные части, то положение запятой в произведении определяется по тем же правилам, что и для десятичных чисел.

Пример. Перемножить двоичные числа =101,1101 и =1001,101

1011101

*1001101

1011101

0000000

1011101

1011101

0000000

0000000

1011101

1101111111001

Искомый результат: 110111,1111001

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

1011101

*1001101

1011101

1011101

1011101

1011101

1011101

1101111111001


ДЕЛЕНИЕ. Деление чисел в двоичной системе производится аналогично делению десятичных чисел. Рассмотрим деление двух целых чисел, так как делимое и делитель всегда могут быть приведены к такому виду путем перениесения запятой в делимом и делителе на одиноаковое число разрядов и дописывания неоюходимых нулей. Деление начинается с того, что от делимого слева отделяется минимальная группа разрядов, которая, рассматриваемая как число, превышает или равна делителю. Дальнейшие действия выполняются по обычным правилам, прием последняя целая цифра частного получается тогда, когда все цифры делимого исчерпаны.

Пример. Разделить =1101,11 на =10111.


1101110 0111

-10111 100,1100

100100

-10111

11010

-10111

Остаток 1100


Пример. Разделить =10001,111 на =11,01


10001111 11010

-11010 101,1

100111

-11010

11011

-11010

00000

Искомый результат 101,1

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

Формы представления чисел с фиксированной и плавающей запятой.


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

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

В ЦВМ используют две формы представления чисел: естественную и полулогарифмическую.


Числа с фиксированной запятой.


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







Разряды модуля числа

Знаковый разряд

Место запятой


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

При занесении числа в ячейку памяти свободные младшие разряды заполняются нулями, а если число значащих разрядов модуля больше n – 1, то младшие разряды модуля, которые не поместились в разрядной сетке, теряются. Это приводит к погрешности, значение которой меньше единицы младшего разряда разрядной сетки, т. е. . Так, при n=16 при n=32 .

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

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

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


Числа с плавающей запятой.


Для научно – технических расчетов необходимо представлять числа в широком диапазоны и с достаточно большой точностью. Указанным требованиям отвечают числа с плавающей запятой.


m m – 1 1 p p – 1 1

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

Поможем написать работу на аналогичную тему

Получить выполненную работу или консультацию специалиста по вашему учебному проекту
Нужна помощь в написании работы?
Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Пишем статьи РИНЦ, ВАК, Scopus. Помогаем в публикации. Правки вносим бесплатно.

Похожие рефераты: