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



ТЕМА 3. ИНФОРМАЦИОННО-ЛОГИЧЕСКИЕ ОСНОВЫ ПОСТРОЕНИЯ ЭВМ

ЛЕКЦИЯ 3.1. ПОЗИЦИОННЫЕ СИСТЕМЫ СЧИСЛЕНИЯ

ОСНОВНЫЕ ПОНЯТИЯ СИСТЕМ СЧИСЛЕНИЯ

 

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

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

В зависимости от способа изображения чисел системы счисления делятся на 2 типа:

· непозиционные;

· позиционные.

В непозиционных системах счисления значение любой цифры не зависит от занимаемой ею позиции в числе. Например, римская система, в которой в числе XXX каждый разряд означает 10 единиц (L – 50, C – 100, D – 500, М – 1000). В непозиционных системах счисления не представляются дробные и отрицательные числа, действия над числами связаны с большими трудностями и не имеют правил.

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

Основным понятием любой позиционной системы счисления является основание. Оно показывает:

1) сколько различных цифр в системе счисления;

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

В зависимости от основания различают следующие системы счисления:

· десятичную (Dec)(0, 1, 2, 3,…, 9);

· восьмеричную (Oct)(0, 1, 2,…, 7);

· двоичную (Bin) (0, 1);

· шестнадцатеричную (Hex) (0, 1,…, 9, A (10), B (11), C (12), D (13), E (14), F (15)).

В древнем Вавилоне использовали систему счисления с основанием 60. Деление часа на 60 минут, а минуты на 60 секунд заимствовано именно из этой системы.

Представление целых неотрицательных чисел

 

Любое целое неотрицательное число, записанное в позиционной системе счисления:

 

можно представить в виде степенного ряда (полинома):

 

Здесь Qm – число в m - й системе счисления, m – основание системы счисления, l – количество разрядов целого числа, i – номер разряда данного числа, ai – цифра числа, записанного в m – й системе счисления, принимающая любые значения от 0 до (m-1) и показывающая, сколько единиц i- го разряда содержится в числе, mi-1 – вес i-того разряда.

Максимальное целое число, которое может быть представлено в l разрядах:

Qmaх=ml -1

Имея l разрядов, можно записать всего ml разных чисел.

Каждое слагаемое в приведенном выражении называется термом. Крайняя правая цифра любого числа называется его младшим или наименьшим (a1) значащим разрядом (МЗР), крайняя левая – старшим или наибольшим (al) значащим разрядом (СЗР).

 

Кроме полиномиальной записи используется еще одна форма записи, которая называется схемой Горнера.

Эта форма используется при переводе чисел из одной системы счисления в другую.

В ЭВМ для представления информации (данных) используется двоичная система счисления. Ее достоинства:

- используется только 2 символа (цифры) 0 и 1, что хорошо согласуется с техническими характеристиками цифровых схем, имеющих, как правило, 2 устойчивых состояния;

- в двоичной системе легко реализуются арифметические операции над числами:


0+0=0

0´0=0

 

1+0=1

1´0=0

 

0+1=1

0´1=0

 

1+1=10

1´1=1


Недостаток: длинные числа, которые неудобно записывать. Двоичное представление числа требует примерно в 3.3 раза большего числа разрядов, чем его десятичное представление.

Двоичная цифра называется битом.

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

 

Перевод целых чисел

 

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

Если между основаниями двух систем счисления m и p соблюдается связь m1= pk, где k – целое число, то перевод является наиболее простым и осуществляется по правилу 1.

Правило 1. Каждая цифра числа с основанием m представляется k цифрами системы счисления с основанием p и наоборот.

По этому правилу осуществляется перевод между 16-ичной и 2-ичной системами: 161=24 и между 8-ичной и 2-ичной системами: 81=23. В первом случае одна шестнадцатеричная цифра заменяется четырьмя двоичными цифрами (тетрадой). Во втором случае одна восьмеричная цифра заменяется тремя двоичными цифрами (триадой). И наоборот. Замена начинается с младших разрядов. Если цифр до триады или тетрады не хватает, необходимо дополнить число слева нулями. В таблице 3.1 приведены двоичные коды всех 16-ричных цифр.

 

 

Таблица 3.1.

Таблица двоичных кодов десятичных и шестнадцатеричных цифр.

 

Цифра 0 1 2 3 4 5 6 7 8 9 А В С D E F
Код 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

 

Пример 3.1. В коде ASCII строчное латинское «а» есть 011000012, а в 16-ричной системе счисления – 6116. Как видим, каждый байт может быть представлен двумя 16-ричными цифрами.

Правило 2. Перевод чисел из 8-ичной системы в 16-ичную систему и наоборот осуществляется через 2-ичную систему счисления.

Правило 3. Перевод чисел из любой системы счисления в десятичную осуществляется представлением этого числа либо в виде полинома (3.2), либо в виде схемы Горнера (3.3) и выполнением арифметических действий в десятичной системе счисления.

Эти три правила часто называют правилами замещения.

Пример 3.2. 9Е316 = 9´162 + 14´161 + 3´160 = 253110

   9Е316 = (9´16 + 14)´16 + 3 = 253110

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

 

Целое число в системе счисления с основанием m может быть представлено эквивалентным числом в системе счисления с основанием p по следующей формуле:

Таким образом, для перевода необходимо отыскать значения цифр bk (k=1,…,n) в новой системе счисления p.

 

Разделив обе части равенства (3.4) на основание новой системы счисления p, выраженное цифрами соответствующей системы счисления, получим:

Слагаемое в скобках – это частное от деления (Qm)1. Второе слагаемое – это остаток. Т. е.

 

Число b1 и есть младшая цифра числа в новой системе счисления с основанием p.

 

При следующем делении целого частного (Qm)1 будет получено новое целое частное (Qm)2 и новый остаток b2.

Деление необходимо продолжать до тех пор, пока частное не станет меньше основания p. Отсюда правило 4 для десятичных чисел (m=10), которое называют правилом деления.

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

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

В ЭВМ преобразование десятичных чисел в двоичные проводится не так, а по правилу 3, используя схему Горнера и выполняя действия в двоичной системе.

17310 = (0001´1010 + 0111)´1010 + 0011 = 101011012

 

Представление дробных чисел

 

 

В общем случае любое неотрицательное число (смешанную дробь), представленное в позиционной системе счисления, вида:

 

можно записать в виде полинома:

Здесь k – количество разрядов в дробной части числа, l – количество разрядов в целой части числа. Старший разряд имеет обозначение al-1, а младший – a-k.

Минимальное значащее (не равное 0) число, которое можно записать в k разрядах дробной части:

Qmin=m-k

Имея в целой части числа l, а в дробной k разрядов, можно записать всего ml+k разных чисел.


Для правильных дробей также может быть использована форма записи в виде схемы Горнера:

Перевод дробных чисел

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

Крайние триады (тетрады) слева и справа дополняются нулями в случае, если не хватает цифр до полной триады (тетрады).

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

 

Рассмотрим теперь перевод правильной десятичной дроби в систему счисления с другим основанием. Поступим аналогично целым числам. Пусть исходная система счисления имеет основание m, новая система счисления – основание p.

Для перевода числа из системы счисления с основанием m необходимо отыскать значения цифр bj (j=-1,…,-n) в новой системе с основанием p.

 

Умножив обе части равенства (4.7) на основание новой системы счисления p, выраженное числами соответствующей системы счисления, получим:

Первое слагаемое – это целая часть произведения, первая цифра в дробной части новой системы счисления. Второе слагаемое – это дробная часть произведения.

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

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

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

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

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

Пример 3. 3.

101110,1012 =1*25+0*24+1*23+1*22+1*21+0*20+1*2-1+0*2-2+1*2-3=46,62510

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

 

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

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

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

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

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

 

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

Здесь полная аналогия с операцией «остаток от деления на 2» A mod 2, которая означает, что число A делится на 2 и заменяется остатком (например, 9 mod 2 = 1). Так и в случае сложения по модулю 2 сумма разрядов делится на 2 и заменяется остатком (например, 2 mod 2 = 0).


Дата добавления: 2019-11-25; просмотров: 230; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!