Problemy i ich rozwiązania
1. Narysuj oś liczbową zawierającą liczby całkowite od -10 do +10.
Rozwiązanie:
2. Dodaj następujące liczby binarne w 8-bitowym uzupełnieniu do dwójki: 1010102 i 11112.
Rozwiązanie:
3. Aby odjąć liczbę binarną 11112 od liczby binarnej 1010102, użyj wyłącznie metody uzupełnienia do dwóch w 8 bitach.
Rozwiązanie:
101010 w 8-bitowym uzupełnieniu do dwóch to 00101010.
1111 w 8 bitach to 00001111.
Odwrócenie całego 00001111 na 8 bitach daje 11110000.
Dodanie 1 do 11110000 daje 11110001.
Odejmowanie w uzupełnieniu do dwóch polega na dodaniu liczb dodatnich i ujemnych z uzupełnieniem do dwóch w następujący sposób:
Ostateczne przeniesienie 1 jest odrzucane w wyniku odejmowania uzupełnienia do dwóch.
5. Podziel 36,37510 przez 100010 w systemie dziesiętnym i binarnym i porównaj wyniki.
Rozwiązanie:
Stosowane jest dzielenie przywracające.
Dzielenie dziesiętne przez czwórki:
Odpowiedź brzmi 36 10 reszta 375 10 .
36.375 10 liczbę całkowitą należy przekonwertować na podstawę 2 w następujący sposób:
Czytając resztę od dołu: 36 375 10 = 1000111000010111 2 .
1000 10 liczbę całkowitą należy przekonwertować na podstawę 2 w następujący sposób:
Czytając resztę od dołu: 1000 10 = 1111101000 2 .
Następnie 1011000100110111 2 dzieli 1111101000 2 przez długi podział (podział przywracający) od 36 375 10 = 1011000100110111 2 i 1000 10 = 1111101000 2 (podział binarny na dziesięć bitów):
Dzielenie faktycznie rozpoczyna się od jedenastego bitu dywidendy, ponieważ pierwsze dziesięć bitów dywidendy jest mniejsze niż dzielnik. Odpowiedź brzmi: 100100 2 reszta 101110111 2 .
Dla porównania wyników należy teraz wykazać, że liczby całkowite ilorazów są równe i reszty są równe. Oznacza to, że należy wykazać, że 36 10 = 100100 2 i 375 10 = 101110111 2 .
6. Użyj wybranych 8 bitów do zilustrowania logicznych operacji AND, OR, XOR, Odwróć, Przesuń w prawo, Przesuń w lewo, Obróć w prawo i Obróć w lewo. Każdy bajt powinien zawierać mieszaninę jedynek i zer.
Rozwiązanie:
- a) Wpisz kod numeryczny znaku ASCII zera w formacie szesnastkowym, binarnym i dziesiętnym.
b) Wpisz kod numeryczny znaku ASCII „1” w formacie szesnastkowym, binarnym i dziesiętnym.
c) Wpisz kod numeryczny znaku ASCII „A” w formacie szesnastkowym, binarnym i dziesiętnym.
d) Wpisz kod numeryczny znaku ASCII „a” w formacie szesnastkowym, binarnym i dziesiętnym.
Rozwiązanie:
a) „0”: 30, 00110000, 48
b) „1”: 31, 00110001, 49
c) „A”: 41, 001000001, 65
d) „a”: 61, 001100001, 97
8. Zamień 49,4910 na podstawę dwa. Konwertuj wynik na 32-bitowy format zmiennoprzecinkowy IEEE.
Rozwiązanie:
Formularze 49.4910, 49 i .49 są konwertowane w różny sposób na podstawę 2.
Konwersja 49:
∴ 4910 = 1100012 czytane od dołu ostatniej kolumny.
Konwersja .49:
0,49 x 2 = 0,98 pierwszy bit to 0
0,98 x 2 = 1,96 sekundy to 1
0,96 x 2 = 1,92 Trzeci bit to 1
∴ 0,49 10 = 110 2 czytaj od góry ostatniej kolumny.
Zatem 49,49 10 = 110001.110 2
110001.110 2 = 1,10001110 x 2 +5 w standardowej postaci podstawy dwa
„1.” w 1.10001110 znaczenie nie jest wskazane w wyniku, ale zakłada się, że tam jest.
Dla wykładnika 127 10 reprezentuje zero. Oznacza to, że indeks (potęga) liczby 5 10 z 2 5 dodaje się do 127 10 . To jest:
127 10 + 5 10 = 132 10
132 10 należy przekonwertować na podstawę dwa, a następnie dopasować do pola wykładnika.
Zatem 132 10 = 10000100 2
10000100 2 ma 7 bitów. Wykładnik ma osiem bitów. 10000100 2 ma osiem bitów i to jest w porządku.
49,49 10 jest dodatnia, więc bit znaku wynosi 0. W 32-bitowym formacie zmiennoprzecinkowym 49,49 10 = 110001.110 2 Jest:
0 10000100 10001110000000000000000
- a) Czym 64-bitowy format zmiennoprzecinkowy IEEE różni się od formatu 32-bitowego?
b) Podaj dwa powiązane powody, dla których format 64-bitowy jest opisywany z podwójną lub większą precyzją w porównaniu z formatem 32-bitowym.
Rozwiązanie:
- – Liczbę reprezentują 64 bity, a nie 32.
– Po bicie znaku znajduje się 11 bitów oznaczających liczbę wykładniczą.
– Liczba wykładników indeksu zerowego (2 0 ) wynosi 1023 10 = 01111111111 2 .
– Po jedenastu bitach następują 52 bity dla wyraźnego znaczenia.
– Ma szerszy zakres liczb niż format 32-bitowy. - Powodem, dla którego format 64-bitowy jest opisywany z podwójną lub większą precyzją w porównaniu z formatem 32-bitowym, jest to, że odstęp między dwoma kolejnymi ułamkami mieszanymi, ograniczonymi przez dwie kolejne liczby całkowite dla formatu 64-bitowego, jest mniejszy niż odpowiadający mu 32-bitowy interwał formatu. Ponadto istnieje więcej możliwych ułamków mieszanych między dwiema ograniczonymi liczbami całkowitymi w formacie 64-bitowym niż w formacie 32-bitowym.