Скачиваний:
95
Добавлен:
15.04.2023
Размер:
29.36 Mб
Скачать

27. Двоичные числа с фиксированной точкой.

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

При представлении чисел с фиксированной запятой положение запятой (точки) закрепляется в определенном месте относительно разрядов числа и сохраняется неизменным для всех чисел [6].

Для кодирования знака двоичных чисел используется знаковый разряд («0» для положительных чисел и «1» - для отрицательных).

На рис. 14 в качестве примера показана разрядная сетка ЭВМ в формате 8-разрядного машинного слова для представления соответственно целого двоичного числа (Х^, = +11000) и дробного числа (= +0,11), представленных с фиксированной запятой.

Если для представления числа со знаком выделено п разрядов, то диапазон представления целых двоичных чисел в этом случае определяется выражением

Диапазон представления в ЭВМ дробных двоичных чисел будет приближенно определяться неравенством 0 < Х%31 < 1.

Рис. 14. Представление в ЭВМ целых (а) и дробных (б) чисел с фиксированной запятой

Кодирование отрицательных чисел в эвм

Наиболее широко распространены три способа представления чисел в зависимости от их знаков или кодирования чисел в ЭВМ: прямой, обратный и дополнительный коды [5].

Прямой код чисел соответствует обычной записи чисел со своим знаком:

А, =+0,0101, [А,]ир = 00101;

А2 = - 0,0101, [А2]пр = 10101.

Для целых чисел в двоичной системе счисления:

А, =+1100, [А1]пр = 01100;

А2 = - 1100, [А2]пр = 11100.

Нуль в прямом коде имеет два изображения:

+ 0 = 000...00 = [0]пр,

-0 = 100...00 = [0]пр

Прямой код используется в ЭВМ для выполнения арифметических операций над положительными числами, для записи положительных и отрицательных чисел в ЗУ, а также в устройствах ввода и вывода.

Для упрощения выполнения арифметических операций в ЭВМ отрицательные числа представляются в обратном и дополнительном кодах.

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

А = -0,1010. [А]обр= 10101.

Примеры обратного кода отрицательных дробного и целого чисел:

А* =-0,11001; [А*]„„ = 111001; [А*].,, = 100110,

А" =-10101; [А’ ]„, = 110101; [АД,,, = Ю1010.

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

Правило перевода отрицательных чисел из прямого кода в дополнительный.

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

Примеры:

LA]J = 1110010; [А]*, =1001110,

[А]; = 1001 ПО; [AL = 1110010,

[А]; = 1001001; [AL =1110111.

Правило перевода отрицательных чисел из обратного кода в дополнительный.

Дополнительный код отрицательного числа может быть получен из обратного путем прибавления к нему единицы младшего разряда.

Примеры:

[A]IIP= 101010; [А]обр = 110101; [А]доп =110110,

[А]пр =111101; [А]обр = 1 000 10; [ А] доп = 1 000 11.

Отрицательный нуль изображается:

  • - в обратном коде [—0]обр = 111111... 11;

  • - в дополнительном коде отрицательный нуль отсутствует, т.е. код нуля в дополнительном коде соответствует коду нуля положительного числа.

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

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

Примеры:

[А!]пр.= 101001, [AJnp.^ 1101001,

[А]]обр. = 1 10110, [А|]ОбР.мод. = 11 10110,

3]доп.= 1 10111, [А3]ДО11.мод.= Н 10111.

Слайды с леций:

Знаковые числа с фиксированной точкой:

Соседние файлы в предмете Основы разработки систем на кристалле