Файл: Сарингулян, Э. В. Арифметические и логические основы цифровых машин учеб. пособие.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 31.10.2024
Просмотров: 57
Скачиваний: 0
Знак результата определяется по состоянию старшего (вто рого) знакового разряда и фиксируется сигналом соПри со = 1 результат на сумматоре отрицательный, при со = 0 сумма имеет положительный знак.
Примеры на выполнение операции сложения
1- [с\'1jnp = 0,00111,1 КОдЫ чисел в запоминающем устрой- [/V,]„p =0,01001 J-тае
Сложение чисел в модифицированном прямом коде в сумматоре арифметического устройства
[ ^ 1 ^ = 0 0 ,0 0 1 1 1
+
[/У 3]"„ = 0 0 ,0 1 0 0 1 _____________________
МЙр + I'V2]“p = 00,10000 = [N, + /V2]“p
= 0 результат положительный
I —> ® = 0 -> переполнения пет
2. [jVJnp— 0,01101 (коды чисел в запоминающем устрой- [/V,]np =0,11001 )стве
Сложение чисел в модифицированном прямом коде в сумматоре арифметического устройства
[ yV iln P ~ 0 0 ,0 1 101 _
[ ^ ] ц"р = 00,11001 1
[;V,l“p + [jV,]”p = 01,00110 -> результат искажен
ш = 0
*w= 1-> переполнение
3.[jV,]nP= 0,10111 (коды кисел в запоминающем устрой- [yV2]Iip= 1,01001 Jстве
Сложение чисел в модифицированном дополнительном коде в сумматоре арифметического устройства
В Д оп = 0 0 , 10111
[ « |
оп = |
11,10111 |
: |
[/V, ]“оп + 1^ |
= |
100,01110= 00,01110= [N, + л /2]" |
|
|
|
|
пр |
не учитываетсяI |
J ^ I » = 0 |
||
|
|
|
ср = 0 |
28
[-'V,]np — 1,И 001 |
|Коды чисел в запоминающем устрой- |
[ЛЧпр = 0,01101 |
(стае |
Сложение чисел в модифицированном дополнительном коде в сумматоре арифметического устройства
l'V|Ji‘on= 11.00111
[Л ^ оп = |
00,01101 ^ |
[ ^ t n + [ ^ ] , MOn= |
n >10100 = [^ 1+ ^ i!]“ep; [N, 4-,Vs)np= l ,01100. |
|
•О) =1 |
’ср : о
5.[Лд|„р — 1,00011 ] коды чисел в запоминающем устрой- [/V,]np = 1,10001 |стве
Сложение чисел |
в модифицированном дополнительном коде в сумматоре |
|
|
|
арифметического устройства |
[Л^]д0П= 11,11101 |
||
[/V2]“ „ =11,01111 |
||
*■ |
* i j l ОП |
} |
№„ + [л/2];‘оп= 1п ,01100= 11,011О С И Л И Л '* ,
— 1 |
! - > « ) = ] |
[A',+-/V2]ao |
1, 10100. |
не учитывается |
I |
|
|
|
U ?==0 |
|
|
6- [^ ,]Пр — 1,10011 | коды |
чисел в |
запоминающем |
устрой- |
[/V2]np = 1,10001 )стве |
|
|
|
Сложение чисел в модифицированном дополнительном коде |
в сумматоре |
|
|
арифметического устройства |
|
М Йо |
11,01101 |
|
+ |
|
|
|
|
|
|
11,01111 |
|
[^ilnon + [Л/,1”оп = 110, 11100= 10,11100 -^результат |
искажен |
]д:>ш=1 не учитывается I
-> <Р= 1-> переполнение
7- [/V.]np =0,10111 ) коды чисел в запоминающем устрой- [W2]np = 1,01001 (стае
Сложение чисел в модифицированном обратном коде в сумматоре арифметического устройства
№ |
Р = |
о о ,ю 1и , |
|
[^ 21“6Р= |
11,10110 |
|
|
№ „ + [N,]- |
= |
100,01101 = |
00,01110 = [7V, + л у -р |
|
|
Циклический |
_ > СО : ■о |
|
|
перенос |
29 |
!“►СО; о
8 - [ А |
1 , 1 1 0 0 1 | |
к о д ы ч и с е л в з а п о м и н а ю щ е м |
[ Л У п ? = |
0 , 0 1 101 ( с т а е |
Сложение чисел и модифпциропанном обратном коде п сумматоре арифметического устройства
ид и ю
f
f/V2]0“6p = 00,01101
+ № Ъ = 11,К)011=|М 1- М К ; [iV14-/V,]np = l J01100
; > (I) - 1
^о
[^'iliip -- 1,00011 | коды чисел в запоминающем устрой- (.'V,|,ip = 1,10001 Iстае
Сложение чисел в модифицированном обратном коде в сумматоре арифметического устройства
[-У,];:бр- 11.11100
I -У' I =•• 11,01110
1Л?. 1обр-Ь ['Уг^'бр--- ] 11 , ° 1 0 1 0 = - 11.01011 — [.v, + Л ',) * 6р;
1--------1 |
о~ 1 |
моюо. |
Циклический |
|
|
перенос |
^■> ^ = 0 |
|
|
|
|
Ю. [AMnp— 1, 100111КОд Ы чисел в запоминающем |
устрой- |
|
[ ] „ р 1,100011стве |
|
|
Сложение 1чисел в модифицированном обратном коде в сумматоре арифметического устройства
[ ^ 1 ^ р = 1 ! '01100 +
1Л я ] о в р = П ' 0 1 1 Ю
[ЛМобр + 1Д2Jо б р ■110,11010 = |
10,11011 |
> результат искажен |
Jобр |
|
|
I |
0) |
1 |
Циклический |
||
перенос |
->- ® = |
1-v переполнение |
|
Для передачи суммы при ср=0 из арифметического устрой ства для запоминания в кодовые шины числа поступает пря мой код результата независимо от знака. Если сумма положи тельная (сигнал со = 0), то полученное значение результата со ответствует его прямому коду, и преобразование выполнять не надо. При со = 1 необходимо сформировать в АУ из модифици-
рованного дополнительного пли обратного кода суммы прямой код, и уже затем отослать результат в запоминающее устрой ство.
Вычитание в машинах с фиксированной запятой
При выполнении операции вычитания необходимость преоб разования прямого кода уменьшаемого определяется тем зна ком, с которым первое число поступает из запоминающего устройства. Знак же у второго числа необходимо предвари тельно изменить. Для этого следует предусмотреть установку знаковой ячейки АУ в положение «1» перед подачей вычитае мого на суматор. Тогда, если код знака второго числа 0, на знаковой ячейке, выполняющей суммирование по модулю два (например, триггер со счетным входом), останется код 1, при подаче кода знака 1 установится положение «О». В результате получается 0 © 1= 1 или 1© 1=0 (символ © означает сло жение по модулю два, при котором единица переноса теряет ся). Таким образом обеспечивается изменение знака вычитае мого. В соответствии с этим формируется в АУ дополнитель ный или обратный код второго числа либо вычитаемое остает ся в прямом коде. И уже затем второе число поступает на сум матор. В остальном же эта операция ничем не отличается от
сложения, поскольку вычитание Ni—N2 можно |
реализовать |
как суммирование Л 0+ (—N2). В конце операции |
вычитания |
анализируется значение сигналов <р и со, сформированных в за висимости от состояния знаковых разрядов результата в сум маторе.
Примеры на выполнение операции вычитания
[A;i]np = 0,00101 (коды чисел в запоминающем устрой-
[ /V ,] np = 0 , 0 0 0 1 1 1'с т в е
Изменение знака вычитаемого в знаковой ячейке, предвари тельно установленной в 1, перед подачей N2 на сумматор
/ <3 О =/.-
Вычитание чисел в модифицированном дополнительном коде
W o n = 0 0 ,0 0 1 0 1 |
|
|
|
|
[ Л Ц " , „ = |
1 1 , 1 1 1 0 1 |
+ |
____________________________ |
|
[л'.1доп+ [^ ]д „п = |
100,00010 + |
00,00010 = М - Л А ] “р |
||
Нс учнтыоается |
|
__- *■ со = |
0 |
|
|
|
|
||
|
|
|
• е? = |
0 |
31
Вычитание чисел d модифицированном обратном коде
[ ^ ,1^ = |
00,00101 , |
|
|
[•^[рбр = |
1Ь 11ЮР |
|
|
т * 06Р 1- [лм;'бР= ? 00'00001 - |
00,00010=--- I Л\ — /Val“p. |
||
|
I |
f |
Jj > о>=0 |
|
Цпкличсс кин |
перенос |
I >? = о |
|
2- [A^lup = 0,01011 1КОдЫ чисел в запоминающем устрой- [/V2]np -- 0,10 11 (стве
Изменение знака вычитаемого в знаковой ячейке, предва рительно установленной в 1, перед подачей N2 на сумматор
1 ® О = / .
Вычитанне чисел в модифицированном дополнительном коде
[Л''.1л..п = 00.01011_1_ |
|
|
|
||
[В Д 0П= |
11,01001 ' |
|
|
|
|
lAMVon -Ь [-V2l-0„= 11лоюо =: [yVl— TV2j-on; |
[А', —Л'2]пр |
,01100. |
|||
J |
, |
1 - |
> |
О |
) |
|
э ~ |
о |
|
|
|
Вычитание чисел в модифицированном обратном коде
№Р= оо-ою) i +
I АА]рбр = 11,01000 __
М ] “6р+ W 6 P = Ч-ЮОП - [ Л ^ - Л ^ бр; [Л '-Л 0]пр= 1,01100
а) = 1
[ са — 0
3- [А')]пр = 1,0011 1 |коды чисел в запоминающем устрой-
1;\/,]пр = 0,00010 /стве
Изменение знака вычитаемого в знаковой ячейке, предва рительно установленной в 1, перед передачей Nz на сумматор
у