Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Przesuń dodaj !!!
- 11 x -11
- x = 01011
- y = -11 = ~(01011) + 1 = 10100 + 1 = 10101
- A = 0
- S = 0
- M = Y = 10101
- Q = X = 01011
- S | A | Q | operacja
- --+-----+-----+----------
- 0 |00000|01011| Q0 = 1 -> A = M + A
- 1 |10101|01011| ASR (1)
- 1 |11010|10101| Q0 = 1 -> A = M + A
- 1 |01111|10101| ASR (2)
- 1 |10111|11010| Q0 = 0 -> ASR (3)
- 1 |11011|11101| Q0 = 1 -> A = M + A
- 1 |10000|11101| ASR (4)
- 1 |11000|01110| ASR (5) (OSTATNI ASR, BO JEST GO TYLE CO BITÓW!)
- 1 |11100|00111| KONIEC
- Z = 1110000111
- -z = ~(1110000111) + 1 = 0001111000 + 1 = 0001111001
- 10101
- 11010
- -----
- 01111
- 10101
- 11011
- -----
- 10000
- -6 x 5
- x = 6 = 00110
- y = -5 = -00101 = ~(00101) + 1 = 11010 + 1 = 11011
- A = 0
- S = 0
- M = Y = 11011
- Q = X = 00110
- S | A | Q | operacja
- ---+-----+-----+----------
- 0 |00000|00110| Q0 = 0 ASR (1)
- 0 |00000|00011| Q0 = 1 -> A = A + M
- 1 |11011|00011| ASR (2)
- 1 |11101|10001| Q0 = 1 -> A = A + M
- 1 |11000|10001| ASR (3)
- 1 |11100|01000| Q0 = 0 ASR (4)
- 1 |11110|00100| Q0 = 0 ASR (5)
- 1 |11111|00010| KONIEC
- Z = 1111100010
- ~(1111100010) + 1 = 0000011101 + 1 = 0000011110
- -13 x -14
- x = -13 = 13 = 01101
- y = -14 = 14 = 01110
- A = 0
- S = 0
- M = Y = 01110
- Q = X = 01101
- S | A | Q | operacja
- ---+-----+-----+----------
- 0 |00000|01101| Q0 = 1 -> A = A + M
- 0 |01110|01101| ASR (1)
- 0 |00111|00110| Q0 = 0 ASR (2)
- 0 |00011|10011| Q0 = 1 -> A = A + M
- 0 |10001|10011| ASR (3)
- 0 |01000|11001| Q0 = 1 -> A = A + M
- 0 |10110|11001| ASR (4)
- 0 |01011|01100| ASR (5)
- 0 |00101|10110| KONIEC
- Z = 0010110110
- ALGORYTM BOOTHA !!!
- -5/16 x -7/8
- X = -5/16
- Y = -7/8
- zakładamy format U2 w postaci xx.xxxx dla x,y
- wynik będzie w formacie xxxx.xxxxxxxx (suma cyfr przed i po przecinku)
- zapiszmy liczbę 5/16 na 4 bitach po przecinku
- 5/16 * 2^4 = 5/16 * 16 = 5 -> 0101
- 5/16 = 00.0101
- -5/16 = ~00.0101 + 0.0001 = 11.1011
- 7/8 * 2^4 = 7/8 * 16 = 14 -> 1110
- -00.1110 = ~00.1110 + 1 = 11.0001 + 1 = 11.0010
- Na potrzeby wykonania algorytmu kropkę pominiemy i wstawimy ją na końcu
- A = 0 Q = Y = 11.0010 M = X = 11.1011 Q - 1 = 00
- A | Q |Q-1| Operacja
- --------------------------
- 000000|110010|0 | (Q0,Q-1)=(0,0) więc ASR(1)
- 000000|011001|0 | (Q0,Q-1)=(1,0) więc odejmujemy A = A - M
- 000101|011001|0 | ASR (2)
- 000010|101100|1 | (Q0,Q-1)=(0,1) więc A = A+M
- 111101|101100|1 | ASR (3)
- 111110|110110|0 | (Q0,Q-1)=(0,0) więc ASR(4)
- 111111|011011|0 | (Q0,Q-1)=(1,0) więc odejmujemy A = A - M
- 000100|011011|0 | ASR (5)
- 000010|001101|1 | (Q0,Q-1)=(1,1) więc ASR (6)
- 000001|000110|1 | KONIEC
- powstała liczba to 000001000110 (w formacie xxxx.xxxxxxxx) = 0000.01000110
- 0000.01000110 = 1/4 + 1/64 + 1/128 = 32/128 + 2/128 + 1/128 = 35/128
- 000010
- +111011
- -------
- 111101
- 111111
- -111011
- -------
- 000100
- format xx.xx
- x = 1 1/4 = 1/4 * 2^2 = 01 cała liczba = 01.01
- y = 3/4 = 3/4 * 2^2 = 11 cała liczba = 00.11
- A = 0 , Q = Y = 00.11, M = X = 01.01, Q - 1 = 00
- A | Q |Q-1| Operacja
- --------------------------
- 0000|0011|0 | 10 - > A = A - M
- 1011|0011|0 | ASR (1)
- 1101|1001|1 | 11 - > ASR (2)
- 1110|1100|1 | 01 - > A = A + M
- 0011|1100|1 | ASR (3)
- 0001|1110|0 | 00 - > ASR (4)
- 0000|1111|0 | KONIEC
- 1110
- 0101
- ----
- 0011
- powstała liczba to 00001111 ( w formacie xxxx.xxxx) = 0000.1111
- 0000.1111 = 1/2 + 1/4 + 1/8 + 1/16 = 15/16
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement