Перевод чисел из одной позиционной СС в другую
Методы перевода чисел
Числа в разных системах счисления можно представить следующим образом:
, где
Значит, в общем виде задачу перевода числа из системы счисления с основанием q1 в систему счисления с основанием q2 можно представить как задачу определения коэффициентов bj нового ряда, изображающего число в системе с основанием q2. В такой постановке задачу перевода можно решить подбором коэффициентов bj.
Перевод чисел делением на основание новой системы
Перевод целых чисел осуществляется делением на основание q2 новой системы счисления, правильных дробей – умножением на основание q2. Действия деления и умножения выполняются по правилам q1-арифметики. Перевод неправильных дробей осуществляется раздельно по указанным правилам, результат записывается в виде новой дроби в системе с основанием q2.
Пример 1. Перевести десятичное число A = 6110 в систему счисления с q = 2.
61 | 2
6030 | 2
b0 = 1 3015 | 2
b1 = 0 14 7 | 2
b2 = 1 63 | 2
b3 = 1 2 1 = b5
b4 = 1
Ответ: 6110 = 1111012.
Табличный метод перевода
В простейшем виде табличный метод заключается в следующем: имеется таблица всех чисел одной системы с соответствующими эквивалентами из другой системы; задача перевода сводится к нахождению соответствующей строки таблицы и выбору из нее эквивалента. Такая таблица очень громоздка и требует большой емкости памяти для хранения.
Другой вид табличного метода заключается в том, что имеются таблицы эквивалентов в каждой системе только для цифр этих систем и степеней основания (положительных и отрицательных); задача перевода сводится к тому, что в выражение ряда (1) для исходной системы счисления надо поставить эквиваленты из новой системы для всех цифр и степеней основания и произвести соответствующие действия (умножения и сложения) по правилам q2-арифметики. полученный результат этих действий будет изображать число в новой системе счисления.
Пример 2. Перевести десятичное число A = 113 в двоичную систему счисления, используя таблицу эквивалентов цифр и степеней основания
(q2 = 2).
Таблица 1 – Таблица эквивалентов
Десятичное число | Двоичное число |
100 | |
101 | |
102 | 110 0100 |
Решение. Подставив значения двоичных эквивалентов десятичных цифр и степеней основания в (3), получим
A = 113 = 1 · 102 + 1 · 101 + 3 · 100 = 001 · 1100100 + 0001 · 1010 + 0011 · 0001 = 11100012.
Ответ: 11100012.
Форматы представления чисел с фиксированной плавающей запятой
Число 0,028 можно записать так: 28·10-3, или 2,8·10-2, или 0,03 (с округлением) и т. д. В компьютере используются две формы представления чисел.
Представление чисел с фиксированной запятой (точкой). Оно характеризуется тем, что положение разрядов числа в машинном изображении остается всегда постоянным независимо от величины самого числа.
Число А можно представить в виде
A=[A]ф KA,
где [A]ф – машинное изображение числа в формате с фиксированной запятой, значение которого лежит в пределах
-1 < [A]ф < 1;
KA – масштабный коэффициент, выбирается так, чтобы сохранить соответствие разрадов всех чисел, которыми оперирует компьютер.
Формат (разрядная сетка) машинного изображения чисел с фиксированной запятой разбивается на знаковую часть и поле числа. В знаковую часть записывается информация о знаке числа: 0, если A≥0; 1, если A<0.
0 | № разряда |
Знаковая часть |
Поле числа |
Например, числа А1 и A2 в прямом коде имеют машинное изображение:
A1 = 0.0100111000101112;
A2 = – A1 = 0.0100111000101112.
Представление чисел в формате с плавающей запятой. Оно характеризуется тем, что положение разряда числа в его машинном изображении непостоянно, и число А записывается следующим образом:
A = mApA,
где mA – мантисса числа A; при представлении числа в компьютере мантисса должна удовлетворять ограничению 2-1 ≤ | mA | ≤ 1 – 2-n; n – количество разрядов для изображения мантиссы без знака; pA – порядок числа A.
Формат машинного изображения числа с плавающей запятой содержит знаковые части и поля мантиссы и порядка.