Файл: Самохин А.Ф. Эксплуатация цифровых вычислительных машин [учеб. пособие].pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 19.06.2024
Просмотров: 134
Скачиваний: 0
- 8 8 -
НО |
2 |
(2 т+ 2 т* / - / j Н ( 2 " <) m o d ( 2 " + , ) |
и£ (А ) s L Rp (A) +dm (2 m- i) l'tn o d (2 т+ ■/).
Следовательно, здесь нельзя ограничиться циклическим |
переносом |
|||
в один младший разряд. Перенос необходимо |
посылать в |
несколько |
||
разрядов. Например, |
при ^ = 5 |
2 m - I - |
3 и, следовательно, |
|
перенос необходимо |
посылать в |
два младших |
разряда. |
|
Аналогично можно показать, что при сдвиге вычета но
■mod (2т+<) вправо перенос из младшего разряда необходимо пере давать в несколько старших разрядов.
Таким образом, для реализации сдвига контрольного кода мож
но использовать регистр с количеством разрядов, равным количест
ву разрядов в контрольном коде, если предусмотреть в нем соот ветствующие цепи циклических переносов.
Из рассмотрения операции сдвига оледует, что для выполне
ния операции умножения вычетов можно использовать сумматор, со держащий сдвигающий регистр с количеством разрядов, равным коли честву разрядов в контрольном коде.
Пример. К М ) = 101m od7, |
В(В) = 011 -mod 7. |
||
R |
(A) |
= |
101 |
X fc |
(B) |
= |
ОН |
I - e частичное произведение |
- |
101 |
|
Сдвиг множимого |
|
- |
1010 |
Циклический перенос |
|
I |
|
1 -е частичное произведение |
- |
101 |
|
Сдвинутое множимое + |
- |
о н |
|
Циклический перенос |
|
1000 |
|
|
L - I |
г (A) + Ш ) = 001
- 8 9 -
Операция умножения контрольных кодов может быть осущест
влена либо с помощью обычной схемы умножения, аналогичной схеме
основного АУ, либо с помощью комбинационной схемы, аналогичной
рассмотренной выше схеме сумматора. Второй вариант предпочти тельнее, так как при этом операция умножения кодов занимает меньшее время. Схема множительного устройства второго типа по
казана |
на рис. |
|
4.4. Булевы |
функции ^ |
и |
Cj,0 |
от входных |
пе |
||||||||||
ременных |
|
, |
7 0 |
и |
состояния триггеров |
T j и |
|
при |
умно |
|||||||||
жении по |
-mod? |
приведены в таблице |
4.3.' |
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
Таблица 4 ,3 .' |
|
|
||||
Л по |
О |
I |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
II |
12 |
13 |
14 |
15 |
||
зиции |
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
О 0 0 0 0 0 0 0 I |
I |
I |
I |
I |
I |
I |
I |
|
|||||||||
|
О 0 0 0 I |
I |
I |
I |
0 0 0 0 I |
I |
I |
I |
|
|||||||||
Ti О 0 I |
I |
0 0 I |
I |
0 0 I |
•I |
0 0 I |
I ■ |
|||||||||||
% |
О I |
0 I |
0 I |
0 I |
0 I |
0 I |
0 I |
0 I |
|
|||||||||
«У |
О 0 I |
ф 0 0 0 Ф 0 0 I |
Ф Ф Ф Ф Ф |
|||||||||||||||
%о О I 0 ф 0 0 0 Ф 0 0 I |
Ф Ф Ф Ф Ф ■ |
|||||||||||||||||
|
к |
2 |
( |
2, |
9. |
10 |
) |
<■Ztpi |
3, |
7, |
I I , |
12 . |
13. |
14, |
15 |
) |
||
|
|
|
|
|
|
|
|
|
|
T, |
|
|
|
|
|
|
||
|
2 0 = 2 |
( |
I , |
9, |
10 |
) |
|
р ( |
3, |
I I , |
12, |
13', |
|
15 |
) |
Факультативные условия отвечают наборам переменных, содержа щим «■ I и Aq = I или Tj *■ I и Tq - Г, которые не могут появиться. После упрощения выражения для ^ будут иметь вид:
Зак.927.
- д о -
+ V o 72
- 4 TZ * * , * 0 Tz
Схема блока умножения, реализующая эти выражения, имеет вид, представленный на рисунке 4 .4 .
Рис. 4.4.
Сомножители подаются поочередно. Работа схемы очевидна из описывающих ее логических выражений.
Из |
рассмотрения методики выполнения операций над вычета |
|
ми четко |
проглядывается преимущество |
контроля по модулю ^=2^-1. |
В связи |
с этим в дальнейшем мы будем |
вести речь только о конт |
- 91-
роле по |
этому модулю. |
|
|
§ 4 .8 . |
Вычисление вычета обратного и дополнительного |
кода |
отрицательного числа по вычету прямого кода этого числа |
|
В связи |
с тем, что операция вычитания в ЦВМ выполняется |
обычно в обратном или в дополнительном коде; а в запоминающих устройствах информация хранится в прямом коде, в процессе кон» троля возникает необходимость преобразования вычетов прямого
кода в вычеты обратного или дополнительного кода и наоборот*.1
На практике применяются две разновидности контроля:
- контролируется только мантисса числа, а знаковый раз ряд в образовании вычета не участвует;
- контролируется весь код числа вместе со знаковым раз рядом.
В первом случае контроль реализуется проще, но контроль
неполный, во втором реализация несколько сложнее, но исключа ются ошибки в знаковом разряде.
Рассмотрим методику преобразования контрольных кодов для обоих случаев.
При контроле без учета знакового разряда вычет обратного ко
да |
ч и с т равен вычету |
инверсии мантиссы прямого кода |
этого |
|||
числа. |
|
|
|
|
|
|
|
Р (А 0^) |
s R ( A r p ) mod fj. , |
|
|||
где |
A -п р .- мантисса |
прямого кода числа. |
|
|||
Но инверсия мантиссы |
П -разрядного чисж |
|
||||
|
А' |
|
= 2 п-1 |
-А ' |
|
|
|
Апр. |
|
1 |
мпр. |
|
|
Следовательно, |
(A0s)~ [Я(2П- 0~P(Anp)^mod^, . |
(4 .1 4 ) |
В случае |
CJ = |
2>п- I контрольны!! код занимает гп разрядов, и |
диверсия |
контрольного кода определяется выражением |
|
|
Ш |
щ ) < 2 m-1~R(Anp)]mod(2m- 1 ) |
или, после исключения из правой части ^,= 2™- I ,
К ( А я р ) н [ - ^ пр)]т т 1о с / ( 2 Г1,- 1 ) . |
(4Л 5) |
Из выражений 4.14 и 4.15 получаем тождество ,для вычисления вычета обратного кода отрицательного числа по вычету прямого кода этого числа без учета знакового разряда:
W o S ) * l № - 0 + M ^ ) U a d ( 2 m- l) . <4 Л 6 >
Таким образом, для получения вычета обратного кода числа доста точно инверсию вычета прямого кода числа сложить с постоянным
числом |
К = R(2n-1) mad (2 т- i ) . |
|
|
|
С помощью аналогичных |
рассуждений можно получить выражение |
|
||
для вычисления вычета |
дополнительного кода числа |
|
|
|
^ |
(Agon)- [R(2n-0 +R(Anp)gon]rrwd(2™- i ) t |
(4 |
.17) |
где %(Anp)[jon - дополнение вычета прямого кода числа.
Переход от вычетов обратного или допелнитального кода чи сел к вычетам прямого кода этих чисел осуществляется по анало гична* формул»*:
R(Anp)s [R(2 - ! ) +^(A0sp)]rmd(2 т- 1)
(4.18)
£ (А лр)- [R (2n-l) + K(Agon)gfon]mod (2m- f )
- 9 3 -
Заметам, что если П выбрать таким, чтобы £ ( 2 П) был
равен единице, процедура преобразования вычетов существенно упрощается, так кап отпадает необходимость добавления постоян
ного числа |
R (2п-1) mod ( 2 т- 1). |
|
|
|
|
|
|
|
||||
Для получения |
формул преобразования вычетов при контроле |
|||||||||||
с учетом знакового разряда запишем выражения прямого кода |
||||||||||||
обратного |
кода А л |
|
и инверсии |
прямого кода |
t |
Л |
пр |
в |
виде |
сум- |
||
|
оор |
|
Оп '2 |
|
|
|
|
|
|
|
||
мы знакового разряда |
и мантиссы A |
|
|
|
|
|
||||||
|
А пр = а п- 2 п + л ' |
н R (A np)modfj. |
|
|
|
|||||||
|
A 0 f y |
|
= Qi , 2 n+A |
|
s R(AoSp)m oct^ |
|
|
|
||||
|
А-пр = a n 2 а+ = R(А пр) m o d . |
|
|
|||||||||
Вычтем почленно из |
второго тождества |
третье, |
тогда |
|
|
|||||||
|
я (А о5р) |
- |
s (а |
« п ) - 2 nmod у |
|
|
|
|||||
или, учтя, что у отрицательного |
|
числа |
Qn= i , и |
# |
п = 0 |
и , |
||||||
перенеся R(Anp) |
|
в правув часть, получим: |
|
|
|
|
|
|||||
И(А,;г1,)ш [!1(2'')*!Н\)1 modlj. . |
|
(«.ISO |
Но инверсию прямого кода Л -разрядного числа можно запи сать в виде _
A n f ~ Z n ' - t - ^ n f
или, перейдя к вычетам,
R ( A n p ) = [ R ( 2 n* - 0 - R (Anp)J Tnodf^. |
( ч , 2 0 ) |
Перепишем тождество 4.19 с учетом выражения 4.20 :
Л(Аа6р ^ [ № nft+ 2 n+ i ) - R(A пр)1 W £ с * . 2 Г .