Professional Documents
Culture Documents
MULTIPLICATION
1.TM HIU V PHP NHN MIPS thc hin php nhn da trn php cng v php dch 1.1 mi lin quan gia php dch v php nhn v d: cho chui bit nh phn x3 x2 x1 x0 gi tr thp phn l : A= 2^3.x3+2^2.x2+2^1.x1+2^0.x0 Dch tri 1 bit chui bit tr thnh x3 x2 x1 x0 0 Gi tr thp phn l 2^4.x3+2^3.x2+2^2.x1+2^1.x0+2^0.0 =2.(2^3.x3+2^2.x2+2^1.x1+2^0.x0)=2.A Ta thy khi dch tri 1 bit tng ng vi nhn 2 Tng t khi dch tri n bit tng ng vi nhn 2^n
Qua v d trn ta thy php dch ch cho ta cc php nhn vi 2^n Mun nhn vi s c gi tr khc 2^n ta cn kt hp thm php cng V d :cho chui bit 01010010(=82) Tm gi tr nhn 3 ca chui bit dch tri 1 bit (tng ng vi nhn 2) ri cng vi chui bit ban u Dch tri: 010100100 + 01010010 =011110110 (=246=82x3)
1.2 vn xy dng php nhn trong MIPS MIPS s dng khi ALU v php dch thc hin php nhn Vn :trong MIPS khi ALU gm 32 bits ,cc thanh ghi cng thng c 32 bits nn khi dch v cng s c kh nng b trn. Nn c th s dng mt s cch sau gii quyt vn
2.Xy dng lu thut ton thc hin khi nhn trong MIPS
Multiplier0 = 1
1. Test Multiplier0
Multiplier0 = 0
1a. Add multiplicand to product and place the result in Product register
64-bit ALU
Control test
32nd repetition?
Yes: 32 repetitions
Done
Multiplier0 = 1
1. Test Multiplier0
Multiplier0 = 0
1a. Add multiplicand to the left half of the product and place the result in the left half of the Product register
Multiplicand
2. Shift the Product register right 1 bit
32 bits
3. Shift the Multiplier register right 1 bit
32-bit ALU
Multiplier Shift right 32 bits Product 64 bits Shift right Write Control test
32nd repetition? No: < 32 repetitions
Yes: 32 repetitions
Done
V d 1010 x