Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Все системы счисления допускают использование как положительных, так и отрицательных чисел, для обозначения которых в вычислительных системах применяют знаковый разряд. В него для изображения положительного числа заносится ноль, для изображения отрицательного числа заносится единица. Знаковый разряд обычно стоит в начале разрядной сетки ЭВМ. Для представления двоичных чисел со знаком применяют специальные коды:
- прямой;
- обратный;
- дополнительный.
Прямым кодом двоичного числа называется n-разрядное число, у которого один или два старших разряда есть знаковые, и записывается это число в следующем виде:
Прямой код определяется следующим выражением:
,
где А - вес знакового разряда.
Для дробных чисел А=1, для целых чисел А=2n-1, где n- число бит разрядной сетки ЭВМ.
Пример.
n = 4
х = -5
[-5]пр = 23 + ï-5ï=13=1101
для n = 5
[5]пр = 24 + ï-5ï=16 +5= 21=10101
Пример.
n = 4
х = -0,5
[-0,5]пр = 1 + ï0,5ï=1,5=1100
В прямом коде 0 имеет два значения. Например, для n=4
+0º0000
-0º1000
Обратным кодом двоичного числа называется n-разрядное число, у которого один или несколько старших разрядов есть знаковые, и записывается оно в следующем виде:
Обратный код положительного числа равен прямому коду этого числа.
Обратный код отрицательного числа определяется выражениями:
- для дробных чисел [X]обр = 2 - 2-(n-1) - |X|;
- для целых чисел [X]обр = 2n -1 - |X|.
Наиболее просто обратный код можно получить следующим образом:
1. Записать исходное число в прямом коде (знаковый разряд равен 1).
2. В цифровых разрядах поменять нули на единицы, а единицы на нули.
Пример.
n = 4
х = -5
[-5]пр = 1101
[-5]обр = 1010
[-5]обр = 24-1-[5] = 16-1-5 = 10 =1010
Пример. Обратный код дробного числа:
n = 4
х = -0,5
[-0,5]обр = 2-2-(4-1)-ï0,5ï=1,375=1011
0,375×2=0,75 0
0,75×2=1,5 1
0,5×2=1,0 1
Пример.
n = 4
х = +5
[5]обр = [5]пр = 0101
Вес знакового разряда отрицательного числа равен - [2n-1 -1].
n=4, [+0]обр=0000, [-0]обр=1111.
Перевод обратного кода в десятичный производится следующим образом:
1. Образуем прямой код инвертированием цифровых разрядов.
2. Значение знакового разряда (1) отбрасываем и считаем, что это '' минус''.
3. Умножаем значение цифровых разрядов на их веса и произведения складываем.
Перевод положительных чисел, записанных в прямом и обратном кодах в десятичные числа, производится сложением произведений значений цифровых разрядов на их веса.
Пример: 1010 = - [23 - 1] + 0×22 + 1×21 + 0×20 = -7 + 0 + 2 +0 = -5
В основном в вычислительных системах используется дополнительный код.
Дополнительным кодом двоичного числа называется n-разрядное число, у которого один или два старших разряда есть знаковые, и записывается это число в следующем виде:
(n-1) нулей
Дополнительный код положительного числа равен прямому коду данного числа.
Дополнительный код отрицательного числа образуется следующим образом:
- для дробных чисел [X]доп = 2 - |X|;
- для целых чисел [X]доп = 2n - |X|.
Дополнительный код отрицательных чисел можно получить по следующему правилу:
1. Записать число в обратном коде.
2. Прибавить к полученному результату 1.
Пример.
n = 4
х = -5
[-5]обр = 1010
[-5]доп = 1011
È весовой знак (-2n-1)
n = 4 [+0]доп = 0000
[-0]доп = 0000
Для перевода двоичного числа, записанного в дополнительном коде, в десятичное необходимо:
1. Определить знак числа. Если число положительное - знаковый разряд равен нулю, то дополнительный код равен прямому и для получения десятичного числа умножаем значения цифровых разрядов на их веса, а потом произведения складываем.
2. Если число отрицательное (в знаковом разряде стоит 1) необходимо проинвертировать цифровые разряды двоичного числа, к полученному результату прибавить единицу, и тем самым получаем представление числа в прямом коде, далее суммируя произведения значений весовых коэффициентов на соответствующие разряды, получаем десятичное число.
Представление двоичного числа в десятичном коде можно получить, используя вес знакового разряда.
Пример:
1011-доп.
1101
-(1×22+0×21+1×20)=-5
1101= 1×(-23) +0×22+1×21+ 1×20 = -5
Дата публикования: 2015-10-09; Прочитано: 335 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!