Числа в форме с фиксированной точкой
Типы и форматы операндов
Машинные команды оперируют данными, которые принято называть операндами. К наиболее общим (базовым) типам операндов можно отнести:
адреса;
числа;
символы;
логические данные.
Для каждого типа данных в компьютере предусмотрены определенные форматы.
Числовая информация
Среди цифровых данных можно выделить две группы:
- целые типы, используемые для представления целых чисел;
- вещественные типы для представления рациональных чисел.
В рамках первой группы имеется несколько форматов представления численной информации, зависящих от ее характера. Для представления вещественных чисел используется формат с плавающей точкой.
Числа в форме с фиксированной точкой
Представление числа X в форме с фиксированной точкой (ФТ), которую иногда называют также естественной формой, включает в себя знак числа и его модуль в q-ичном коде. Здесь q — основание системы счисления или база. Для современных компьютеров характерна двоичная система (q=2), но существовали также восьмеричная (q=8) или шестнадцатеричная (q=16) системы счисления. Знак положительного числа кодируется двоичной цифрой 0, а знак отрицательного числа — цифрой 1.
Числам с фиксированной точкой соответствует запись вида X = ±an-1…a0a-1a-2…a-r. Отрицательные числа обычно представляются в дополнительном коде. Разряд кода числа, в котором размещается знак, называется знаковым разрядом кода. Разряды, где располагаются значащие цифры числа, называются цифровыми разрядами кода. Знаковый разряд размещается левее старшего цифрового разряда. Положение точки одинаково для всех чисел и в процессе решения задачи не меняется. Хотя точка и фиксируется, в коде числа она никак не выделяется, а только подразумевается.
В общем случае разрядная сетка для размещения чисел в форме с фиксированной точкой имеет вид, представленный на рис. 14.1, где k разрядов используются для записи целой части числа и r разрядов — для дробной части.
Номер разряда | k-1 | k-2 | … | r | r-1 | … | ||
Вес разряда | 2k-1 | 2k-2 | … | 20 | 2-1… | 2-2 | 2-r | |
Целая часть | Дробная часть |
Рис. 14.1. Формат представления чисел с фиксированной точкой
Если число является смешанным (содержит целую и дробную части), оно обрабатываются как целое, хотя и не является таковым (в этом случае применяют термин масштабируемое целое). Обработка смешанных чисел в компьютерах встречается крайне редко. Как правило, используются компьютеры с дробной (n = 0) либо целочисленной (r=0) арифметикой.
При фиксации точки перед старшим цифровым разрядом (рис. 14.2) могут быть представлены только правильные дроби. Для ненулевых чисел возможны два варианта представления (нулевому значению соответствуют нули во всех разрядах): знаковое и беззнаковое. Фиксация точки перед старшим разрядом в настоящее время практически не встречается.
При фиксации точки после младшего разряда представимы лишь целые числа. Это наиболее распространенный способ, поэтому в дальнейшем понятие чисел в формате с фиксированной точкой будет связываться исключительно с целыми числами, а операции с числами в формате с фиксированной точкой будут характеризоваться как целочисленные. Форматы целых чисел со знаком и без знака представлены на рис. 14.2 и 14.3.
Номер разряда | n-1 | n-2 | n-3 | … | … | |||
Вес разряда | 2n-1 | 2n-2 | 2n-3 | … | … | 22 | 21 | 20 |
Диапазон значений | 0<=Х<=2n - 1 |
Рис. 14.2. Представление целых чисел без знака в формате с фиксированной точкой
Номер разряда | n-1 | n-2 | n-3 | … | … | |||
Вес разряда | знак | 2n-2 | 2n-3 | … | … | 22 | 21 | 20 |
Диапазон значений | -2n-1<=Х<=+2n-1 - 1 |
Рис. 14.3. Представление целых чисел со знаком в формате с фиксированной точкой
Целые числа применяются также для работы с адресами. Адреса обрабатываются как целые числа без знака.
Диапазон представления 32-разрядных целых чисел со знаком составляет все целые числа от -231 до 231 – 1, то есть всего 232 различных чисел.
Представление чисел в формате с фиксированной точкой упрощает аппаратную реализацию процессора и сокращает время выполнения машинных операций, однако при решении задач необходимо постоянно следить за тем, чтобы все исходные данные, промежуточные и окончательные результаты не выходили за допустимый диапазон формата, иначе возможно переполнение разрядной сетки и результат вычислений будет неверным.
Дата добавления: 2015-09-28; просмотров: 1087;