Перевод дробных чисел из одной системы счисления в другую
Процедура перевода десятичных чисел в р-ную систему счисления: 1. перевести отдельно целую часть числа х, для чего последовательно делить сперва целую часть [х]10, а затем все частные (получаемые при делении) на р до тех пор, пока не получим в очередном частном число меньшее р; изображение [х]p получается последовательным приписыванием к последнему частному остатков от деления – от последнего до первого; 2. перевести отдельно дробную часть (мантиссу) числа, то есть {x}10, для чего последовательно умножать сперва исходную мантиссу, а затем мантиссы получаемых чисел на р до тех пор, пока не получим мантиссу, равную нулю, или нужное количество цифр в {х}p; изображение {х}p получается приписыванием к целой части первого произведения второй такой же цифры и т.д., до последней цифры целой части; 3. результат будет иметь вид (х)р = [х]p, {х}p.
Пример. Дано число 12,810. Необходимо перевести число 12,810 в двоичную систему счисления. Решение: 1. Переводим целую часть: 1210 =11002; 2. Переводим дробную часть (полужирным выделены цифры, идущие в изображение мантиссы в двоичной системе):
0,8x2 =1,6; 0,6x2=1,2; 0,2x2=0,4; 0,4x2=0,8; 0,810=0,11001102; 3. Результат перевода: 12,810 = 1100,1100110011...2. Пример. Дано число 29,2510. Перевести число 29,2510 в восьмеричную систему счисления. Решение имеет вид 1) 2910 = 358; 2) 0,2510 = 0,28; 3) 29,2510 = 35,28. Пример. Дано число 79,2610. Перевести число 79,2610в шестнадцатеричную систему счисления. Решение: 1) 7910 = 4F16; 2) 0,2610 = 0,4016; 3) 79,2610 = 4F,416. При переводе дробной части мы ограничились нахождением двух значащих цифр после запятой, ибо перевод точно сделать невозможно. Арифметические операции в позиционных системах
Счисления Сложение в двоичной системе счисления осуществляется по правилам
Таблица вычитания в двоичной системе счисления имеет вид
Таблица умножения в двоичной системе счисления имеет вид
Таблица деления в двоичной системе счисления имеет вид
Обратным кодом числа в системе с основанием р называется число в этой системе, получаемое заменой цифры, символа в каждом разряде числа на его дополнение до максимальной цифры в системе (то есть до р – 1).
Дополнительный код = обратный код + единица в младшем разряде. Пример. 1. 10011 Þ двоичное число, 01100 Þ обратный код этого двоичного числа, 01101 Þ дополнительный код этого двоичного числа; 2. 457 Þ восьмеричное число, 321 Þ дополнительный код; 3. А9 Þ шестнадцатеричное число, 57 Þ дополнительный код. Вычитание с помощью дополнительного кода: найти дополнительный код вычитаемого такой же разрядности, как и уменьшаемое, и сложить этот код с уменьшаемым. Результатом вычитания будет полученная сумма без учета старшего разряда (отбрасывается).
Пример. Выполним вычитание напрямую и через сложение (через дополнительный код):
Представление чисел в компьютере Каждый разряд двоичного числа представляется в ЭВМ физическим элементом, обладающим двумя устойчивыми состояниями, одному из которых приписывается значение 0, а другому - 1. Совокупность определенного количества этих элементов служит для представления многоразрядных двоичных чисел и составляет разрядную сетку или формат представления числовых данных. В ЭВМ, как и в математике, используется как естественная, так и нормальная формы записи чисел. Каждая из форм имеет определенные форматы для каждого типа ЭВМ, составленные из целого количества байтов. Длину формата данных измеряют в машинных словах или в количестве двоичных разрядов (бит). Например, в вычислительных машинах единой системы ЕС ЭВМ (предшествующих персональным ЭВМ) использовались форматы: полуслово - 2 байта (16 бит), слово - 4 байта (32 бит), двойное слово - 8 байт (64 бит); в персональных ЭВМ: слово - 2 байта, двойное слово - 4 байта.
Естественной формой представления данных обычно называют представление чисел с фиксированной запятой, положение которой строго устанавливается, для правильных дробей - перед старшим разрядом, для смешанных дробей - в определенном месте, отделяющем целую и дробную части числа, для целых чисел - после младшего разряда. В современных ЭВМ естественная форма используется в основном для представления целых чисел. Во всех форматах знак числа занимает место перед старшим разрядом и кодируется 0 - знак "плюс" и 1 - знак "минус". Знак от числа отделяется воображаемой точкой. Рассмотрим диапазон представления чисел в коротком формате Н = 2 байта и в длинном - F = 4 байта (рис 1.1) В разрядных сетках вместе указаны коды наименьшего и наибольшего значений чисел.
Формат Н
Знак 214 213 21 20
Рис 1.1. Форматы чисел в естественной форме
Числа в формате Н имеют значения:
Числа в формате F имеют значения:
При представлении правильных дробей, например в формате Н, наименьшее и наибольшее значения определяются как:
Для сокращения записи двоичных чисел можно использовать шестнадцатеричную систему. Так, в формате
= 0001; = 7FFF,
в формате
= 00000001, = 7FFFFFFF.
Каждая шестнадцатеричная цифра представляет собой двоичную тетраду.
Пример: Даны 2 числа в форматах Н и F представить числа A=173, B=-173 А2H = 0000000010101101; В2Н = 1000000010101101; А16Н = 00АD; А16F = 000000АD; В16Н = 80АD; В16F= 800000АD.
По первой шестнадцатеричной цифре можно определить знак числа. Если первая цифра меньше 8, то число положительное, если ее значение от 8 до F, то отрицательное. Достоинствами естественной формы являются простота и наглядность представления чисел, простота алгоритмов реализации операций а, следовательно, простота устройств и высокая скорость выполнения операций. Существенным недостатком является ограниченный диапазон представления величин. Если результаты вычислений выходят за допустимые пределы, то наступает переполнение разрядной сетки и результат искажается. В больших машинах вырабатывается при этом запрос на прерывание программы, а в персональных производится автоматический переход к представлению данных в нормальной форме.
Нормальной формой представления числа называется представление его в виде мантиссы и основания системы в соответствующей степени. Любое число можно представить в различной форме записи, например:
А= 55,25 = 5525 *10-2 = 0,5525 * 102 = 0,005525 * 104.
Любое число в нормальной форме представляется в виде
(1.3)
где mA- мантисса числа А, q - основание системы счисления, Р - порядок. Для однозначности представления чисел используется нормализованная форма, при которой мантисса должна отвечать условию:
(1.4)
Ограничение справа требует, чтобы мантисса представлялась правильной дробью, ограничение слева - чтобы после запятой присутствовала значащая цифра (не 0). Нормальную форму называют также полулогарифмической или с плавающей запятой, положение которой определяется порядком, а также экспоненциальной. Для представления чисел в нормальной форме используются фиксированные форматы разной длины. В разрядной сетке форматов отводятся места для знака мантиссы (нулевой разряд), знака порядка (первый разряд), значение порядка (6 разрядов, со 2-го по 7-ой), в остальные разряды записывается мантисса числа. В других форматах первый байт не изменяется, а увеличивается область под мантиссу. На рис. 1.2 представлена разрядная сетка в формате 4 байта.
Рис. 1.2. Формат числа в нормальной форме Диапазон представления чисел можно оценить по максимальному значению:
где
При q= 2:
По сравнению с естественной формой диапазон представления чисел при той же разрядной сетке увеличился на 10 порядков. В ЭВМ ЕС используются три формата: короткий Е (4 байта), длинный О (8 байт) и повышенной точности (16 байт). Особенностями нормальной формы в ЭВМ ЕС являются следующие: 1. Смещение числовой оси порядков в область положительных значений для облегчения действий над порядками, не имеющими знака. В форматах 7 разрядов отводится под значение порядка и его знак, Следовательно, числовая ось порядков находится в диапазоне
или . Смещенный порядок, называемый характеристикой, определяется смещением порядка на +26 = 64 = 4016, то есть характеристика Рх = Р +40 не имеет знака. Теперь характеристика может принимать значения в диапазоне =7F16 и под ее значение отводятся 7 разрядов (27 - 1 = 127). Очевидно, если Рх = 40, то Р = 0, если Рх < 40, то порядок отрицательный (Р < 0), при Рх > 40 - порядок положительный (Р > 0). Если Рх < 0 или Рх > 7F, то значение характеристики пропадает и результаты искажаются. 2. Мантиссы и порядки чисел выражаются в шестнадцатеричной системе счисления в двоичном виде, что обеспечивает увеличение диапазона представления чисел, так как изменение характеристики на 1 приводит к сдвигу мантиссы на одну шестнадцатеричную цифру, то есть сразу на одну двоичную тетраду. Действительно, если в формулу 1.3 подставить q = 16, то
Таким образом, значение порядка увеличилось в 4 раза. Пример: Представить в разрядной сетке формата Е два числа: А = 32008,510 и В = -32008,5. Запишем заданные числа в шестнадцатеричной системе: А = 7D08, 816 и В = -7D08, 816. Найдем нормализованные мантиссы и характеристики: mA=0,7D088, Рха=40+4-44; mв=-0,7D088, Рхв=40+4=44 (см. рис. 1.3)
Зн.m Рх m
0 1 31 Рис. 1.3. Представление чисел в формате Е
А16 = 55700880 > 0, В1б = С47D0880 < 0 Здесь также по первой шестнадцатеричной цифре кода числа определяется его знак.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|