5. Формы представления двоичных чисел в ЭВМ

 

Машинное представление числа – это представление числа в разрядной сетке ЭВМ.

Машинное изображение числа условно обозначают [A].

При этом А=[A]kA,

где kA – масштабный коэффициент, величина которого зависит от формы представления числа в ЭВМ.

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

Если произвольное вещественное число А`=[A]kA, то такое число представлено в разрядной сетке машины точно. Если А`≠[A]kA, то произвольное вещественное число может быть представлено в машине приближенно или вообще не может быть представлено. При приближенном представлении вещественное число А` заменяется некоторым числом [А], принадлежащим множеству машинных чисел. Множеству машинных чисел принадлежат только числа, кратные двум, так как любые два попарно соседних машинных числа отличаются друг от друга на величину 2-n, где n - количество разрядов.

Аmin‹ |A| ‹ A max

Если |A| ‹ A min, такое число называют машинным нулем. Числа, большие чем Amax, не могут быть представлены. В этом случае говорят о переполнении разрядной сетки.

Существует три формы представления чисел в ЭВМ: естественная, с фиксированной запятой и нормальная (с плавающей запятой).

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

А= аnan-1 ... a1 a0 a--1 a--2 ... a--k

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

Если место запятой в разрядной сетке машины заранее фиксировано, то такое представление называется представлением с фиксированной запятой (точкой).

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

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

Можно было бы оперировать только малыми числами, так как вероятность переполнения при их сложении мала. Однако это приводит к снижению точности представления чисел и точности вычислений. Поэтому всегда стремятся использовать числа, величины которых близки к максимальному значению. Однако при этом на них накладываются следующие ограничения: 1) абсолютная величина суммы двух чисел должна быть меньше единицы; 2) делитель по абсолютной величине должен быть больше делимого.

В ячейке машины с фиксированной перед старшим разрядом запятой число записывается в разрядную сетку в виде значащей части дроби со своим знаком, т. е. для записи n-значной дроби разрядная сетка должна содержать n + 1 разряд.

Разрядная сетка или формат числа в двоичной системе счисления имеет вид:

Запятая

Знак

2-1

2-2

2-n

n+1

Здесь n разрядов используют для изображения цифровой части числа и 1 – для знака.

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

2-n ≤ |А| ≤ 1-2-n

В этом случае: |А|min=0,...01 = 2-n , а |А|max= 0,1...1= 1-2-n. (Запятая разделяет целую и дробную части).

Начиная с вычислительных машин 2-го поколения, форматы чисел в ЭВМ представляются кратными байту, т. е. n=8, или 16, 32.

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

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

Веса разрядов в формате числа, содержащего n+1 разряд (1 знаковый) представлены на рисунке:

Знак

2n-1

2n -2

21

20

n+1

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

Знак числа обычно кодируется следующим образом: знаку «+» соответствует 0 в знаковом разряде, знаку «-» - 1.

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

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

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

А= pma = pm ∑aipi-m. (i от -k до n),

где a – мантисса, m - порядок.

Формат числа, представленного в форме с плавающей запятой, имеет вид:

Знак пор.

2S-1

2S-2

20

Знак числа

2-1

2-n-1

2-n

 порядок S+1разрядов мантисса n+1 разрядов

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

Представление числа с плавающей запятой можно проиллюстрировать на следующем примере:

987.54 =103* 0.98754,

987.54 =104* 0.098754,

987.54 =105*0.0098754.

В целях однозначного представления любого числа введено понятие “нормализованное число”. Нормализованным считается число А, мантисса которого удовлетворяет неравенству:

2-1 ≤ |а| ≤ 1-2-n

 

Другими словами, нормализованным считается то число, у которого старший разряд равен 1.

Диапазон представления порядка числа лежит в пределах:

2S-1≥ m≥ –(2S-1).

Отсюда следует, что диапазон представления чисел для p = 2:

минимальное число:

и максимальное:

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

D= =

Сопоставляя между собой две основные формы представления чисел в ЭВМ, можно прийти к следующим выводам.

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

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

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

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


 


Информация о работе «Представление численной информации в ЭВМ. Системы счисления»
Раздел: Информатика, программирование
Количество знаков с пробелами: 32294
Количество таблиц: 6
Количество изображений: 4

Похожие работы

Скачать
95849
35
321

... 100 10 1001=(9)10 100 11,1=(3,5)10 00 110 00 100 001 100 000 100 10 0 10 00 Таким образом, выполнение арифметических операций в двоичной системе счисления достаточно просто. Особенно просто выполнять операции сложения, вычитания и умножения. Благодоря этому, применение двоичной системы в вычислительных ...

Скачать
26324
0
1

... посылали гонцов, использовали почтовых голубей. У народов существовали различные способы оповещения о надвигающейся опасности: барабанный бой, дым костров, флаги и т. д. Однако использование такого представления информации требует предварительной договоренности о понимании принимаемого сообщения. Знаменитый немецкий ученый Готфрид Вильгельм Лейбниц предложил еще в XVII веке уникальную и простую ...

Скачать
200947
7
0

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

Скачать
257002
0
22

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

0 комментариев


Наверх