计算机组成与设计第五版答案_CH03_Solution
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.19. In these solutions a 1 or a 0 was added to the Quotient if the remainder was
greater than or equal to 0. However, an equally valid solution is to shift in a 1 or 0,
Chapter 3 Solutions
S-5
3.18 74/21 ? 3 remainder 9
Step
Action
Quotient
Divisor
Remainder
0
Initial Vals –
Rem=Rem Div
1
Rem<0,R+D,Q<<
Rshift Div –
Rem=Rem Div
2
Rem<0,R+D,Q<<
000 110 010 000 001 100 100 000 001 100 100 000 001 100 100 000
011 001 000 000 011 001 000 000 110 010 000 000
110 010 000 000 110 010 000 000
Product
000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 000 001 100 100
000 001 000 100 000 001 000 100 000 001 000 100 000 000 100 010 000 000 100 010
000 000 100 010 000 000 010 001 000 000 010 001 000 000 010 001 000 000 001 000
Multiplicand
110 010 110 010 110 010
110 010 110 010 110 010 110 010 110 010 110 010 110 010 110 010 110 010 110 010
Product/Multiplier
000 000 001 010 000 000 001 010 000 000 000 101
3.17 0x33? 0x55? 0x10EF. 0x33? 51, and 51? 32? 16? 2? 1. We can shift0x55 left 5 places (0xAA0), then add 0x55 shift ed left 4 places (0x550), then add 0x55 shifted left once (0xAA), then add 0x55. 0xAA0 ? 0x550? 0xAA ? 0x55 ? 0x10EF. 3 shifts, 3 adds.
(3? 8)? 4tu ? 96 time units for hardware
(5? 8)? 4tu ? 160 time units for soft ware
3.15 It takes B time units to get through an adder, and there will be A ? 1 adders. Word is 8 bits wide, requiring 7 adders. 7 ? 4tu ? 28 time units.
000 001 000 001 000 001 000 011 000 011
010 001 000 000 010 001 000 000
010 001 000 000 001 000 100 000 001 000 100 000 001 000 100 000 000 100 010 000
000 100 010 000 000 100 010 000 000 010 001 000 000 010 001 000 000 010 001 000
Lshift Mcand Rshift Mplier Prod=Prod+Mcand Lshift Mcand Rshift Mplier lsb=0, no op
Lshift Mcand Rshift Mplier lsb=0, no op
Lshift Mcand Rshift Mplier
Multiplier
000 000 111 100 111 111 111 000 000 000 111 100 000 000 111 100 000 000 011 010
000 000 011 010 000 000 011 010 000 000 001 001 000 000 001 001 000 000 001 001
000 000 111 100 101 111 111 100
000 000 111 100 000 000 111 100 111 000 011 100 000 000 111 100 000 000 111 100
111 100 101 100 000 000 111 100 000 000 111 100 111 110 110 100 000 000 111 100
Solutions
Chapter 3 Solutions
S-3
3.1 5730 3.2 5730
3.3 0101111011010100
The attraction is that each hex digit contains one of 16 diff
erent characters
diff (0 – 9, A – E). Since with 4 binary bits you can represent 16 erent patterns,
For a software implementation, it takes 1 cycle to decide what to add, 1 cycle to do the add, 1 cycle to do each shift, and 1 cycle to decide if we are done. So the loop takes (5 ? A) cycles, with each cycle being B time units long.
Rshift Div
–
Rem=Rem Div
3
Rem<0,R+D,Q<<
Rshift Div
–
Rem=Rem Div
4
Rem<0,R+D,Q<<
Rshift Div –
Rem=Rem Div
5
Rem<0,R+D,Q<<
Rshift Div
–
Rem=Rem Div
6
Rem>0,Q<<1
Rshift Div
but if you do this you must do a compensating right shift
of the remainder (only
3.16 It takes B time units to get through an adder, and the adders are arranged in a tree structure. It will require log2(A) levels. 8 bit wide word requires 7 adders in 3 levels. 3? 4tu ? 12 time units.
110 010 000 101 011 001 000 010 011 001 000 010 001 100 100 001 111 110 100 001 011 111 010 000 011 111 010 000 001 111 101 000 001 111 101 000 000 111 110 100
in hex each digit requires exactly 4 binary bits. And bytes are by defi nition 8
bits long, so two hex digits are all that are required to represent the contents
, 3.14 For hardware, it takes 1 cycle to do the add, 1 cycle to do the shiftand 1 cycle
to decide if we are done. So the loop takes (3 ? A) cycles, with each cycle being B time units long.
3.10 ? 105? 42 ? ? 63
3.11 151? 214? 255 (365)
3.12 62? 12
Step 0 1 2 3 4 5 6
Action
Initial Vals lsb=0, no op Lshift Mcand Rshift Mplier Prod=Prod+Mcand
Lshift Mcand Rshift Mplier lsb=0, no op
000 001 100 100 000 001 100 100 000 001 100 100
000 001 100 100 000 001 100 100
000 111 110 100 000 111 110 100 000 111 110 100 000 111 110 100
000 111 110 100 000 111 110 100 000 111 110 100
000 111 110 100 000 111 110 100
S-4 Chapter
3 Solutions
3.13 62? 12
Βιβλιοθήκη Baidu
Step 0 1 2 3 4 5 6
Action
Initial Vals lsb=0, no op Rshift Product
Prod=Prod+Mcand Rshift Mplier lsb=0, no op Rshift Mplier Prod=Prod+Mcand Rshift Mplier lsb=0, no op Rshift Mplier lsb=0, no op Rshift Mplier
–
Rem=Rem Div
7
Rem>0,Q<<1
Rshift Div
000 000 000 000
000 000 000 000 000 000 000 000 000 000
000 000 000 000 000 000 000 000 000 000
000 000 000 000 000 000 000 000 000 000
of 1 byte.
3.4 753
3.5 7777 (? 3777)
3.6 Neither (63)
3.7 Neither (65)
3.8 Overflow (result ? ? 179, which does not fit into an SM 8-bit format)
3.9 ? 105? 42? ? 128 (? 147)
(Could also use 0x55, which is 64? 16? 4? 1, and shift 0x33 left 6 times, add to it 0x33 shift ed left 4 times, add to that 0x33 shifted left 2 times, and add to that 0x33. Same number of shifts and adds.)
000 000 110 010 000 000 110 010 000 001 100 100 000 001 100 100 000 001 100 100
000 011 001 000 000 011 001 000 000 011 001 000
000 110 010 000 000 110 010 000
001 010 001 010 001 010 000 101 000 101
000 101 000 010 000 010
000 010 000 001
000 001 000 001 000 000 000 000
000 000 000 000 000 000
000 000 000 000
Multiplicand