Файл: Самохин А.Ф. Эксплуатация цифровых вычислительных машин [учеб. пособие].pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 19.06.2024

Просмотров: 133

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Пример.

А =

0,101

Т5

(A)

s

10mod 3

 

В =

1Д 00

R

(В)

= 00 mod 3

 

А • В =1,010100

 

R

г

01 nod 3

 

 

I

I

 

 

 

теряются

При контроле по тождеству 5.10 веса остающейся части произ­ ведения (А*В)0СТ = 1,010 должны быть взяты 1 ,2 ,1 ,2 и R (А*В)^|Т * 10 -mod3.

R (А-в)ост =

{[га - оПо - га]

+ I

- i)

= - юо 2 ю modз.

При контроле по тождеству 5.11 веса

остающейся части произ­

ведения

берутся в

обычном порядке

-

2 ,1 ,2 ,1

и (А-В)ост =£НтЛз.

£

(а -в) ост =

{га Гю - о][о

- га] + га

- i- io j =

=- гаоо * 01 mod з.

В том случае, если при умножении чисел производится округ­ ление, в тождество для вычисления контрольного кода необходимо добавить член £ ( 2 л ) , учитывающий добавление единицы в ос­ тающуюся часть кода по сигналу округления.

§ 5 .4 . Контроль операции деления чисел в прямом коде

Для операции деления прямого тождества, позволяющего выра­ зить вычет результата через вычеты операндов, нет. Поэтому де­ ление контролируется с помощью тождества, выражавшего вычет де­ лимого (А) через вычеты делителя ( В ) , частного (С) и остатка

( W ) . При принятых обозначениях можно записать:


- 111-

или, перейдя к остаткам для положительных чисел,

£ (A) S [ р ( В ) - й (С) + 1$ ( W )]ттюс1д. .

5 .12

Полученное тождество позволяет проконтролировать операцию деле­ ния чисел без учета знакового разряда. При контроле с учетом знакового разряда тождество (см . контроль умножения) будет иметь вид:

№ ) = [ Ш В ) - 1 п(2п) № е ) - С < , № п) ] +

6 .13

+ (!>n®en)lH 22n)+K (W )}m od(j,.

Таким образом, для контроля правильности выполнения опера­

ции деления необходимо выполнить саму операцию, сформировать вы­

четы частного и остатка, вычислить вычет делимого и сравнить его

с контрольным кодом делимого, поступающим вместе с числом. Од­ нако при этом необходимо иметь в виду,следующие обстоятельства.

 

При

П -разрядной

сетке машины делитель и частное имеют

 

разрядов,

остаток -

2 Л

разрядов

нулями в П старших

разрядах). Следовательно, вычисленный по тождеству 5.12 или

5.13

вычет делимого

будет соответствовать

2п -разрядному дели­

мому

(содержащему в

П

младших разрядах

нули). Контрольный

же код, поступающий вместе с

делимым из ЗУ, определен для Л -

разрядного числа. Таким образом, для т о го ,

чтобы вычисленный

контрольный код совпадал с.поступившим из ЗУ, его необходимо

вычислять для

Л

старших разрядов

(

П

***~т ГТет*' щ у а е ш

разрядов

отбросить).

 

 

 

 

 

 

 

Если количество

разрядов

П

кратдг» Mqmnflff ш птагсД

функции,

т о ,

как следует

из предадужего)

 

шикйг тпцу ■


 

 

 

 

-

H2-

ших П

разрядов монет

быть

вычислен непосредственно по тож­

дествам

5.12

:ш 1 5.13 (

И

младших разрядов в образовании вы­

чета не участвуют, так как они содержат нули).

Если же

п

не кратно

периоду весовой функции, то вычис­

ление контрольного кода следует производить так не, как это де­

лается

при умножении

для аналогичного случая. В частности, при

|

= 3

и

/7 , не

кратном двум, контрольный код вычисляется

по

тождеству

 

 

Ш П г Ш в П п Ъ(2 п) ] Ш - с п т п) ] +

5.14

+ (& п ® Сп ) ^ ( 2 П ) + 2 'R i V l ) } m o d 5

 

Пример.

 

А =

0,101

 

К (а ) = ю mod. з

 

 

 

В = 0 , I I I

 

R (В)

S 01

m o d 3

 

 

 

С =

0,101

 

R (0)

э

Ю

т о d

3

 

 

 

W =

0,000101

R ( W

)

s

ю

mod

3

По тождеству

5.13

К

(Л)

=

{[01

- 0] [10

-

0]

+

О +

10}s 01 mod 3

не

совпадает,

 

 

 

 

{ 10

[01 - 0][10 -

0] +

0 +

10-10} =

по

тождеству

5.14

R (А)

=

= 10 mod 3

совпадает.

С методикой контроля операций умножения и деления в обрат­ ном и дополнительном кодах читатель может познакомиться в Я .5.


-1 4 5 -

§5 .5 . Контроль операций сдвига

Контроль операции сдвига наиболее просто осуществляется о

использованием наименьших вычетов. Как будет показано ниже, в

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

 

Введем обозначения:

 

 

А,

( А )

-

сдвинутое влево (вправо) число,

Т?(А), R (А)

-

контрольный код сдвинутого числа,

R ( A ) ,

R (А)

-

сдвинутый контрольный код,

 

-4-0 О-*-

-

число, сдвинутое с циклическим переносом.

 

А,

А

 

Арифметический сдвиг прямого кода числа на один разряд

влево. Сдвинутое

влево число можно записать в виде:

 

 

 

 

Л = а п -2п+ 2 А ' - а п . 1- 2 п ,

где

вычитание

®-п- 2** учитывает

потерю единицы из старшего

 

 

разряда мантиссы.

 

 

Добавив

и вычтя Qn 2 П, получи:,!

 

 

 

А

= 2 (ап-2 п+ А ) - ( а п +апч)-2 п^ _ _

или,

перейдя к остаткам и учтя, что

2R(A) = К 6 4 ) ,

R (A )= L R (A ) - (a n + a n. f) - X ( 2 n) j t n o d p . .

Заменив вычитание добавлением инверсии второго слагаемого, окон­

чательно получил:

'R(A)s i K ( A ) + ( a n +an, t)'R(2n) ] m o d ^

5 ,1 5