Формат с фиксированной точкой

-10,11002

Ячейка опер.памяти, в которой будет храниться число в форме фикс. запятой имеет вид:

0(1) 0,

 

 

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

Поскольку такое представление чисел неудобно, то решили хранение чисел организовывать в виде правильных дробей (числитель<знаменатель).

 

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

Запятая в таких числах фиксируется строго в конце и остается строго фиксированной.

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

Множество целых чисел, представимых в памяти компьютера, ограничено. Диапазон значений зависит от размера ячеек памяти, используемых для их хранения. В n-разрядной ячейке может храниться 2n различных целых чисел.

Формат с фиксированной точкой
Формат Количество разрядов разрядной сетки (n) Диапазон значений
Целые числа без знака 1 байт (n=8) - полуслово 0..255
2 байта (n=16) - слово 0..65536
Целые числа со знаком 2 байта (n=16) - слово -32768..32367
4 байта (n=32) – двойное слово -2147483648..2147483648

Обычно занимают в памяти компьютера один, два или четыре байта. В однобайтовом формате принимают значения от 000000002 до 111111112 (диапазон значений 0..255) В двухбайтовом формате (слово) - от 00000000 000000002 до 11111111 111111112 (диапазон значений 0..65535).

Чтобы получить внутреннее представление целого положительного числа X, хранящегося в n-разрядном машинном слове, необходимо:

1. Перевести число X в двоичную систему счисления;

2. Полученный результат дополнить слева незначащими нулями до n разрядов.

 

Например, представить число 2110 в однобайтовой разрядной сетке.

2110=101012

 

Для внутреннего представления целого отрицательного числа (-X) используются машинные коды: прямой, обратный и дополнительный коды.

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

Прямой код образуется из абсолютного значения числа и кода знака (нуль или единица), например: A10=+10; B10= - 4 ;

A2= +1010; B2= - 100;

Aпр= 0:1010; Bпр=1:100

 

 

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

Обратный код Хобр получается следующим образом:

· для положительных чисел обратный код равен прямому коду, т.е. Xобр = Xпр

· для отрицательных чисел в знаковом разряде числа остается единица, а в цифровых (значащих) разрядах нули заменяются единицами, а единица – нулями, т.е. происходит инверсия.

Напр. - 410= -1002. имеет вид:

 

- прямой код

- обратный код

 

Дополнительный код Хдоп получается следующим образом:

· для положительных чисел дополнительный код равен прямому коду, т.е. Xдоп = Xпр

· для отрицательных чисел дополнительный код получается из обратного кода Хобр путем прибавления единицы к самому правому (т.е. младшему) разряду, т.е. Хдоп= Хобр +1, т.е.

 

Хдоп = 11111002

 

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

 

Например. Получить внутреннее представление числа -2110 в двухбайтовой разрядной сетке.

1. Переведем модуль числа -21 в двоичную систему счисления: 2110=101012

2. Получим внутреннее представление модуля числа:

1000 0000 0001 0101 – прямой код

3. Найдем обратный код числа, заменив в прямом коде 0 на 1 и 1 на 0 (кроме знакового разряда):

1111 1111 1110 1010 – обратный код

4. Найдем дополнительный код числа, прибавив к обратному коду единицу:

+
1111 1111 1110 1010

1

1111 1111 1110 1011 – дополнительный код

5. Впишем дополнительный код в разрядную сетку:








Дата добавления: 2015-10-19; просмотров: 2829;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

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

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.011 сек.