Прямой код

  • docx
  • 18.11.2021
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Л2-002054.docx

Прямой код

Прямой n-разрядный двоичный код состоит из знакового разряда и

n-1 разрядов для записи модуля числа. В качестве знакового разряда используется старший разряд.

 

an-1

an-2

...

a0

знак     модуль числа

Знак “плюс” кодируется как 0, а знак “минус” как 1.

Определим диапазон чисел, представимых в прямом n-разрядном двоичном коде. Введем следующие обозначения: A+max – максимальное положительное число, A-min - минимальное отрицательное число:

A+max = 2n-1 1;    A-min = -(2n-1-1)

Пример: Получить прямой 5-ти разрядный код числа A[10] = - 6.Определить диапазон чисел для этой разрядной сетки.

 

1.| A[10] | = 6 Þ | A[2] | = 0110              (на запись модуля выделено 4 разряда) 2.Знаковый разряд = 1

1	0	1	1	03.(А[2])пр =

 

Определим диапазон чисел:


A+max = 24 1 = 15 A-max = -(24 – 1) = -15

 

Пример: Получить прямой 8-ми разрядный код числа A[16] = 3С. Опре- делить диапазон чисел для этой разрядной сетки.

0	0	1	1	1	1 0	01.| A[16] | = Þ | A[2] | = 0111100     (на запись модуля выделено 7 разрядов) 2.Знаковый разряд = 0

3.(А[2])пр =

 

Определим диапазон чисел:

A+max = 27 1 = 127             A-max = -(27 1) = -127

 

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

Недостатки:

1.       Сложение и вычитание чисел в прямом коде выполняется по прави- лам алгебры:

(С)пр = (А)пр + (В)пр

(С)пр = (А)пр - (В)пр ,

поэтому процессор должен иметь два разных устройства: сумматор и вычитатель.

2.   Знаковый разряд обрабатывается отдельно от остальных по особым правилам.

3.   0	0	0	0	0
1	0	0	0	0

Неоднозначность кодировки нуля:

+0                               при n=5

-0                                при n=5