Policz różne zmienne: tablica prawdy ma 2ⁿ wierszy, a zaczyna się od samych jedynek.
Każdej podformule daj osobną kolumnę i wypełniaj kolumny od wewnątrz na zewnątrz.
Stosuj regułę każdego spójnika: → jest 0 tylko dla 1 → 0, ↔ jest 1, gdy obie strony się zgadzają.
Przy równoważnościach porównaj końcowe kolumny wiersz po wierszu; przy wnioskowaniu patrz tylko na wiersze, w których każda przesłanka jest równa 1.
Aby zaprzeczyć zdaniu z kwantyfikatorem, przesuń ¬ do środka, zamień ∀ i ∃ oraz zaprzecz formule wewnętrznej.
Logika cyfrowa: bramki, mapy Karnaugha i przerzutniki
Podstawowe bramki
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
Reguły algebry Boole’a
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
Prawa de Morgana
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Kolejność na mapie Karnaugha
00, 01, 11, 10 (Gray code)
Grupa 2ᵏ komórek
traci k zmiennych
Multiplekser 4-do-1
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
Przerzutniki
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
Liczniki
n-bitowy: 2ⁿ stanów; mod-N: najmniejsze n z 2ⁿ ≥ N; fout = fclk/N
Licznik asynchroniczny (ripple)
fmax = 1/(n·tpd)
Liczniki pierścieniowy i Johnsona
n i 2n stanów
Metoda
Dla układu przechodź od wejść do wyjścia bramka po bramce i zapisuj wartość na każdym przewodzie albo zapisz jego wyrażenie i wypełnij tablicę prawdy.
Przy upraszczaniu wpisz jedynki (a stany nieokreślone jako X) na mapę Karnaugha z wierszami i kolumnami w kodzie Graya: 00, 01, 11, 10.
Pokryj jedynki jak najmniejszą liczbą jak największych grup po 1, 2, 4, 8 lub 16 komórek, zawijając przez brzegi; każda grupa to jeden iloczyn ze zmiennych, które pozostają stałe. Dla postaci POS grupuj zera.
Przy przerzutnikach i licznikach odczytuj wejścia przy każdym aktywnym zboczu zegara, zapisuj stan po każdym zboczu i pamiętaj, że n-bitowy licznik zawija się po 2ⁿ stanach.
Teoria liczb i arytmetyka modularna
Dzielenie z resztą
a = q·n + r, 0 ≤ r < n
Euklides
gcd(a, b) = gcd(b, a mod b)
Najmniejsza wspólna wielokrotność
lcm(a, b) = a·b/gcd(a, b)
Odwrotność
a·a⁻¹ ≡ 1 (mod n), gcd(a, n) = 1
Kongruencja liniowa
a·x ≡ b → x ≡ a⁻¹·b (mod n)
Funkcja φ Eulera
φ(n) = n·∏(1 − 1/p), φ(pᵏ) = pᵏ − pᵏ⁻¹
Fermat
aᵖ⁻¹ ≡ 1 (mod p)
RSA
n = pq, φ = (p − 1)(q − 1), d = e⁻¹ mod φ, c = mᵉ mod n, m = cᵈ mod n
Metoda
Najpierw zredukuj każdą liczbę modulo n; reszty leżą między 0 a n − 1.
Aby znaleźć NWD, dziel wielokrotnie algorytmem Euklidesa; ostatnia niezerowa reszta jest NWD.
Aby znaleźć element odwrotny, uruchom rozszerzony algorytm i zachowaj współczynnik przy a; dodaj n, jeśli jest ujemny.
Rozwiąż a·x ≡ b, mnożąc przez a⁻¹; dwie kongruencje połącz, zapisując x = r₁ + m₁k.
Przy potęgach zapisz wykładnik binarnie i wielokrotnie podnoś do kwadratu; w RSA d = e⁻¹ mod φ(n), gdzie φ(n) = (p − 1)(q − 1).
Teoria grafów
Lemat o uściskach dłoni
Σ deg(v) = 2|E|
Grafy pełne
|E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
Graf regularny
|E| = n·k/2
Drzewo i las
|E| = n − 1, |E| = n − c
Liście drzewa
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
Euler
cykl: wszystkie stopnie parzyste; ścieżka: dokładnie 2 stopnie nieparzyste
Cykle Hamiltona w Kn
(n − 1)!/2
Aktualizacja w algorytmie Dijkstry
d(v) = min(d(v), d(u) + w(u, v))
Marsze o długości L
(Mᴸ)ij
Metoda
Zapisz stopień każdego wierzchołka; suma stopni jest równa dwukrotności liczby krawędzi.
W zadaniach o grafach eulerowskich sprawdź, czy graf jest spójny, i policz wierzchołki o nieparzystym stopniu.
Dla drzew użyj n − 1 krawędzi i lematu o uściskach dłoni.
W algorytmie Dijkstry prowadź tabelę tymczasowych odległości i w każdej rundzie zatwierdzaj niezatwierdzony wierzchołek o najmniejszej odległości.
Dla minimalnego drzewa rozpinającego posortuj krawędzie według wagi i pomijaj każdą krawędź zamykającą cykl (Kruskal) albo rozbudowuj jedno drzewo od wierzchołka startowego (Prim).
Podsieci IPv4
Hosty na podsieć
2(32 − prefix) − 2 (/31: 2, /32: 1)
Rozmiar bloku
256 − (mask octet)
Adres sieci
IP AND maska
Adres rozgłoszeniowy
IP OR (NOT maska): wszystkie bity hosta równe 1
Podsieci z n pożyczonych bitów
2n
2Zadania do ćwiczenia
1.Systemy liczboweŚredni
Ustaw bity tak, aby zapisywały −18 w 8-bitowym kodzie uzupełnień do dwóch. Jaka jest wartość wzorca U odczytanego jako liczba bez znaku?
N = −188 bit
U =
2.Systemy liczboweTrudny
Ustaw bity na 8-bitowy wynik działania 0101 0001 << 2. Jaka jest wartość wyniku R w zapisie dziesiętnym?
0101 0001<< 2
R =
3.Rachunek zdań i dowodyŚredni
Która formuła jest logicznie równoważna b ∧ (c ∨ a)? Kliknij ją.
b ∧ (c ∨ a)
1(b ∧ c) ∨ a
2(b ∧ c) ∨ (b ∧ a)
3(b ∨ c) ∧ (b ∨ a)
4b ∨ (c ∧ a)
4.Rachunek zdań i dowodyTrudny
Które zdanie jest równoważne ¬∀x ∃y R(x, y), gdy negację przesunięto całkiem do środka? Kliknij je.
¬∀x ∃y R(x, y)
1∃x ∀y ¬R(x, y)
2∀x ∃y ¬R(x, y)
3∃y ∀x ¬R(x, y)
4∀x ∀y ¬R(x, y)
5.Logika cyfrowa: bramki, mapy Karnaugha i przerzutnikiŚredni
Multiplekser 4-do-1 ma wejścia wyboru S₁ = A i S₀ = B, a wejścia danych podłączone do I₀ = C, I₁ = C, I₂ = C′, I₃ = C. Dla ilu z 8 kombinacji A, B i C wyjście F = 1? Znajdź N.
I₀ = CI₁ = CI₂ = C′I₃ = C
N =
6.Logika cyfrowa: bramki, mapy Karnaugha i przerzutnikiTrudny
Synchroniczny układ (licznik mod-6) zlicza 0, 1, …, 5, a potem wraca do 0. Startuje od 2. Jaki stan Q (dziesiętnie) pokaże po 21 impulsach zegara?
Q0 = 221N = 6
Q =
7.Teoria liczb i arytmetyka modularnaŚredni
Znajdź element odwrotny do 24 modulo 89: liczbę x, dla której 0 < x < 89 oraz 24·x ≡ 1 (mod 89).
a = 24n = 89
24−1 mod 89 =
8.Teoria liczb i arytmetyka modularnaTrudny
Ile rozwiązań N ma 16x ≡ 4 (mod 68) w zbiorze {0, 1, …, 67}?
16x ≡ 4 (mod 68)
N =
9.Algorytmy i złożonośćŚredni
Ile pamięci stosu zużywa prosta rekurencyjna funkcja silni fact(n) = n × fact(n − 1)?
AO(log n)
BO(1)
CO(n)
DO(n²)
10.Algorytmy i złożonośćTrudny
Które ograniczenie jest poprawne dla log(n!)?
AΘ(n log n)
BΘ(n²)
CΘ(log n)
DΘ(n)
11.Struktury danychŚredni
Ile pamięci zajmuje macierz sąsiedztwa grafu o V wierzchołkach?
AO(V²)
BO(E)
CO(log V)
DO(V + E)
12.Struktury danychTrudny
Wstawienie klucza do drzewa AVL sprawia, że lewe poddrzewo pewnego węzła staje się zbyt wysokie, a nowy klucz trafił do lewego poddrzewa jego lewego dziecka (przypadek lewo-lewo). Jaką naprawę się stosuje?
APojedynczą rotację w lewo w niezrównoważonym węźle
BPrzekolorowanie węzła i jego dziecka
CPojedynczą rotację w prawo w niezrównoważonym węźle
DRotację w lewo w dziecku, a potem rotację w prawo w węźle
13.Teoria grafówŚredni
Czy graf spójny ma cykl Eulera, ścieżkę Eulera, która nie jest cyklem, czy żadne z nich? Kliknij odpowiedź.
|V| = 6|E| = 9
1Cykl Eulera
2Ścieżka Eulera, bez cyklu
3ani jedno, ani drugie
14.Teoria grafówTrudny
Algorytm Dijkstry rusza z A. Kliknij wierzchołek zatwierdzony (uczyniony stałym) w rundzie 3; sam A to runda 1.
start: Arunda 3
1A
2B
3C
4D
5E
6F
15.Bazy danych i SQLŚredni
Widok (view) w SQL to:
AEkran w kliencie bazy danych służący do przeglądania tabel
BKopia tabeli na dysku
CZapisane zapytanie, które działa jak wirtualna tabela
DRodzaj indeksu
16.Bazy danych i SQLTrudny
Tabela ma milion wierszy i kolumnę logiczną is_active, która jest TRUE dla 95% z nich. Dlaczego optymalizator może zignorować indeks na is_active dla WHERE is_active = TRUE?
APasuje większość wierszy, więc pełne skanowanie tabeli jest tańsze niż wiele wyszukiwań w indeksie
BIndeksów nie można tworzyć na kolumnach logicznych
COptymalizator nigdy nie używa indeksów w klauzulach WHERE
DIndeks traktuje TRUE jak NULL
17.Sieci komputeroweŚredni
Do czego służy cykliczna kontrola nadmiarowa (CRC) w ramkach Ethernet?
ADo wyboru najlepszej trasy
BDo wykrywania błędów transmisji
CDo szyfrowania ramki
DDo automatycznej korekcji każdego błędu bitowego
18.Sieci komputeroweTrudny
Jaki zasób atakujący próbuje wyczerpać w ataku SYN flood?
AMiejsce na dysku serwera
BPamięć podręczną DNS klienta
CTablicę adresów MAC przełącznika
DTablicę półotwartych połączeń serwera
19.Podsieci IPv4Średni
Sieć 10.60.0.0/20 podzielono na równe podsieci z prefiksem /28. Ile jest podsieci N?
10.60.0.0/20/28
N =
20.Podsieci IPv4Trudny
Host ma adres 172.20.54.69/23. Jaki jest trzeci oktet x adresu rozgłoszeniowego jego podsieci?
172.20.54.69/23
x =
3Roztwory
1.Systemy liczbowe
Odpowiedź: U = 238
Ustawianie bitów: każdy bit ma wartość będącą potęgą dwójki (128, 64, …, 1). Jedna cyfra szesnastkowa to dokładnie cztery bity, a w 8-bitowym kodzie uzupełnień do dwóch skrajny lewy bit ma wartość −128. Operacje bitowe działają osobno na każdej pozycji bitu.
Odwróć i dodaj jeden
18 = 0001 0010
odwrócone: 1110 1101
+1 → 1110 1110
Odczytaj bez znaku
1110 1110₂ = 256 − 18 = 238
Odpowiedź
U = 238
2.Systemy liczbowe
Odpowiedź: R = 68
Ustawianie bitów: każdy bit ma wartość będącą potęgą dwójki (128, 64, …, 1). Jedna cyfra szesnastkowa to dokładnie cztery bity, a w 8-bitowym kodzie uzupełnień do dwóch skrajny lewy bit ma wartość −128. Operacje bitowe działają osobno na każdej pozycji bitu.
Bit po bicie
Przesunięcie w lewo o 2 przesuwa każdy bit o 2 pozycji w lewo; bity, które wypadną z lewego końca, są tracone, a z prawej wchodzą zera.
0101 0001 << 2
= 0100 0100
Wartość wyniku
0100 0100₂ = 68
Odpowiedź
R = 68
3.Rachunek zdań i dowody
Odpowiedź: (b ∧ c) ∨ (b ∧ a)
Równoważność logiczna: dwie formuły są równoważne (≡), gdy mają tę samą wartość w każdym wierszu tablicy prawdy. Tautologia jest równa 1 w każdym wierszu, kontradykcja 0 w każdym wierszu, a formuła kontyngentna nie jest ani jednym, ani drugim. Przydatne prawa: prawa de Morgana, ¬(a ∧ b) ≡ ¬a ∨ ¬b oraz ¬(a ∨ b) ≡ ¬a ∧ ¬b; a → b ≡ ¬a ∨ b ≡ ¬b → ¬a (kontrapozycja); ¬(a → b) ≡ a ∧ ¬b; oraz prawa rozdzielności, a ∨ (b ∧ c) ≡ (a ∨ b) ∧ (a ∨ c).
Prawo
∧ jest rozdzielne względem ∨: a ∧ (b ∨ c) ≡ (a ∧ b) ∨ (a ∧ c).
b ∧ (c ∨ a) ≡ (b ∧ c) ∨ (b ∧ a)
Sprawdź tablicą prawdy
a = 1, b = 1, c = 1: 1 | 1 1 1 1
a = 1, b = 1, c = 0: 1 | 1 1 1 1
a = 1, b = 0, c = 1: 0 | 1 0 1 1
a = 1, b = 0, c = 0: 0 | 1 0 0 0
a = 0, b = 1, c = 1: 1 | 1 1 1 1
a = 0, b = 1, c = 0: 0 | 0 0 1 1
a = 0, b = 0, c = 1: 0 | 0 0 0 0
a = 0, b = 0, c = 0: 0 | 0 0 0 0
Odpowiedź
(b ∧ c) ∨ (b ∧ a)
Kolumny po kresce to opcje w pokazanej kolejności.
4.Rachunek zdań i dowody
Odpowiedź: ∃x ∀y ¬R(x, y)
Kwantyfikatory i wnioskowania: ¬∀x P(x) ≡ ∃x ¬P(x) oraz ¬∃x P(x) ≡ ∀x ¬P(x). Przesuń negację do środka, zamień każdy kwantyfikator, który mija, i zaneguj formułę wewnętrzną prawami rachunku zdań, takimi jak ¬(a → b) ≡ a ∧ ¬b. Wnioskowanie jest poprawne, gdy wniosek jest równy 1 w każdym wierszu, w którym wszystkie przesłanki są równe 1. Pojedynczy wiersz z prawdziwymi przesłankami i fałszywym wnioskiem jest kontrprzykładem i pokazuje, że wnioskowanie jest niepoprawne.
Przesuń negację do środka
¬∀x ∃y R(x, y) ≡ ∃x ∀y ¬R(x, y)
Odpowiedź
∃x ∀y ¬R(x, y)
Pozostałe opcje albo zostawiają kwantyfikator bez zmian, albo zmieniają kolejność kwantyfikatorów, albo błędnie negują formułę wewnętrzną.
5.Logika cyfrowa: bramki, mapy Karnaugha i przerzutniki
Odpowiedź: N = 4
Multiplekser: multiplekser 2ⁿ-do-1 przekazuje na wyjście jedno ze swoich wejść danych; linie wyboru, odczytane jako liczba binarna, wskazują które. Dla multipleksera 4-do-1 z wejściami wyboru S₁S₀ = AB: F = A′B′·I₀ + A′B·I₁ + AB′·I₂ + AB·I₃. Podłączenie wejść danych do 0, 1, C lub C′ sprawia, że multiplekser realizuje dowolną funkcję A, B i C, co jest częstym sposobem budowania logiki w jednym układzie scalonym.
Wyrażenie wyjścia
F = A′B′C + A′BC + AB′C′ + ABC
Wiersze z F = 1
ABC = 001, 011, 100, 111
N = 4
Odpowiedź
N = 4
6.Logika cyfrowa: bramki, mapy Karnaugha i przerzutniki
Odpowiedź: Q = 5
Przerzutniki i liczniki: przerzutnik zmienia stan tylko przy aktywnym zboczu zegara. D kopiuje swoje wejście (Q⁺ = D); T zmienia stan na przeciwny, gdy T = 1; JK utrzymuje stan dla 00, zeruje dla 01, ustawia dla 10 i zmienia stan na przeciwny dla 11. N-bitowy licznik binarny ma 2ⁿ stanów i liczy modulo 2ⁿ; licznik mod-N liczy 0, 1, …, N − 1 i wraca do 0, a potrzebuje tylu przerzutników, ile wynosi najmniejsze n z 2ⁿ ≥ N. Każdy stopień licznika asynchronicznego dzieli częstotliwość przez dwa, więc ostatnie wyjście licznika mod-N pracuje z częstotliwością fclk/N. Licznik Johnsona z n przerzutników ma 2n stanów, licznik pierścieniowy n.
Pełne cykle
Co 6 impulsów licznik wraca do tego samego stanu.
21 = 3·6 + 3
Stan po pozostałych impulsach
Q = (2 + 3) mod 6 = 5
Q = 101₂
Odpowiedź
Q = 5
7.Teoria liczb i arytmetyka modularna
Odpowiedź: 24−1 mod 89 = 26
Elementy odwrotne i kongruencje: a ma element odwrotny modulo n dokładnie wtedy, gdy NWD(a, n) = 1. Rozszerzony algorytm Euklidesa zapisuje 1 = s·n + t·a, a wtedy a⁻¹ ≡ t (mod n). Kongruencja a·x ≡ b (mod n) przy NWD(a, n) = 1 ma rozwiązanie x ≡ a⁻¹·b. Dwie kongruencje x ≡ r₁ (mod m₁) i x ≡ r₂ (mod m₂) o względnie pierwszych modułach mają jedno rozwiązanie modulo m₁·m₂ (chińskie twierdzenie o resztach). Funkcja φ(n) Eulera zlicza liczby od 1 do n względnie pierwsze z n: φ(n) = n·∏(1 − 1/p).
Rozszerzony algorytm Euklidesa
Każdą resztę r zapisujemy jako r ≡ t·24 (mod 89).
r = 89, t = 0
r = 24, q = 3, t = 1
r = 17, q = 1, t = −3
r = 7, q = 2, t = 4
r = 3, q = 2, t = −11
r = 1, q = 3, t = 26
Odwrotność
1 ≡ 26·24 (mod 89)
x = 26
sprawdzenie: 24·26 = 624 = 7·89 + 1
Odpowiedź
24−1 mod 89 = 26
8.Teoria liczb i arytmetyka modularna
Odpowiedź: N = 4
Elementy odwrotne i kongruencje: a ma element odwrotny modulo n dokładnie wtedy, gdy NWD(a, n) = 1. Rozszerzony algorytm Euklidesa zapisuje 1 = s·n + t·a, a wtedy a⁻¹ ≡ t (mod n). Kongruencja a·x ≡ b (mod n) przy NWD(a, n) = 1 ma rozwiązanie x ≡ a⁻¹·b. Dwie kongruencje x ≡ r₁ (mod m₁) i x ≡ r₂ (mod m₂) o względnie pierwszych modułach mają jedno rozwiązanie modulo m₁·m₂ (chińskie twierdzenie o resztach). Funkcja φ(n) Eulera zlicza liczby od 1 do n względnie pierwsze z n: φ(n) = n·∏(1 − 1/p).
Podziel przez NWD
gcd(16, 68) = 4
4x ≡ 1 (mod 17)
Rozwiąż skróconą kongruencję
4−1 ≡ 13 (mod 17) → x ≡ 13 (mod 17)
Rozwiązania modulo 68
x ∈ {13, 30, 47, 64}
N = 4
Odpowiedź
N = 4
9.Algorytmy i złożoność
Odpowiedź: C · O(n)
Dlaczego to jest odpowiedź
Rekurencja ma głębokość n wywołań, zanim którekolwiek wróci, a każde wywołanie potrzebuje ramki stosu, więc zużywa O(n) pamięci.
Odpowiedź
C · O(n)
10.Algorytmy i złożoność
Odpowiedź: A · Θ(n log n)
Dlaczego to jest odpowiedź
log(n!) ≤ n log n, a n / 2 największych czynników daje log(n!) ≥ (n / 2) log(n / 2); dlatego sortowanie przez porównania wymaga Ω(n log n).
Odpowiedź
A · Θ(n log n)
11.Struktury danych
Odpowiedź: A · O(V²)
Dlaczego to jest odpowiedź
Macierz sąsiedztwa przechowuje V × V wpisów, co jest wydajne dla grafów gęstych; listy sąsiedztwa zajmują O(V + E) i lepiej sprawdzają się dla grafów rzadkich.
Odpowiedź
A · O(V²)
12.Struktury danych
Odpowiedź: C · Pojedynczą rotację w prawo w niezrównoważonym węźle
Dlaczego to jest odpowiedź
W przypadku lewo-lewo jedna rotacja w prawo podnosi lewe dziecko i przywraca zrównoważenie; przypadki zygzakowate wymagają podwójnej rotacji.
Odpowiedź
C · Pojedynczą rotację w prawo w niezrównoważonym węźle
13.Teoria grafów
Odpowiedź: Ścieżka Eulera, bez cyklu
Euler, Hamilton i drzewa: graf spójny ma cykl Eulera (każda krawędź raz, powrót do startu), gdy każdy wierzchołek ma stopień parzysty, oraz ścieżkę Eulera, która nie jest cyklem, gdy dokładnie dwa wierzchołki mają stopień nieparzysty; ścieżka biegnie wtedy od jednego wierzchołka nieparzystego do drugiego. Cykl Hamiltona odwiedza każdy wierzchołek raz; Kn ma ich (n − 1)!/2. Drzewo o n wierzchołkach ma n − 1 krawędzi, a graf spójny o m krawędziach zachowuje drzewo rozpinające po usunięciu m − n + 1 krawędzi.
Ścieżka Eulera zaczyna się w jednym wierzchołku nieparzystym i kończy w drugim.
14.Teoria grafów
Odpowiedź: E
Najkrótsze ścieżki i drzewa rozpinające: algorytm Dijkstry zatwierdza jeden wierzchołek na rundę: niezatwierdzony wierzchołek o najmniejszej tymczasowej odległości. Jego odległość jest wtedy ostateczna, a każdy sąsiad v dostaje d(v) = min(d(v), d(u) + w(u, v)). Algorytm Kruskala buduje minimalne drzewo rozpinające, biorąc krawędzie od lekkich do ciężkich i pomijając każdą, która zamknęłaby cykl; algorytm Prima rozbudowuje jedno drzewo od wierzchołka startowego, zawsze dodając najlżejszą krawędź wychodzącą z niego. Drzewo rozpinające o n wierzchołkach ma n − 1 krawędzi.
Algorytm Dijkstry runda po rundzie
1. A (0): B: 15, C: 8
2. C (8): E: 9
3. E (9): D: 14, F: 20
4. D (14)
5. B (15)
6. F (20)
runda 3
E
Odpowiedź
E
15.Bazy danych i SQL
Odpowiedź: C · Zapisane zapytanie, które działa jak wirtualna tabela
Dlaczego to jest odpowiedź
Widok przechowuje instrukcję SELECT; odpytanie go wykonuje zapytanie bazowe (widoki zmaterializowane przechowują wynik).
Odpowiedź
C · Zapisane zapytanie, które działa jak wirtualna tabela
16.Bazy danych i SQL
Odpowiedź: A · Pasuje większość wierszy, więc pełne skanowanie tabeli jest tańsze niż wiele wyszukiwań w indeksie
Dlaczego to jest odpowiedź
Indeks pomaga, gdy zawęża wyszukiwanie do niewielu wierszy; gdy kwalifikuje się większość wierszy, losowe wyszukiwania w indeksie kosztują więcej niż sekwencyjny odczyt tabeli.
Odpowiedź
A · Pasuje większość wierszy, więc pełne skanowanie tabeli jest tańsze niż wiele wyszukiwań w indeksie
17.Sieci komputerowe
Odpowiedź: B · Do wykrywania błędów transmisji
Dlaczego to jest odpowiedź
Nadawca oblicza CRC dla ramki; odbiorca oblicza ją ponownie i odrzuca ramkę, jeśli wartości się różnią. CRC wykrywa błędy, ale ich nie koryguje.
Odpowiedź
B · Do wykrywania błędów transmisji
18.Sieci komputerowe
Odpowiedź: D · Tablicę półotwartych połączeń serwera
Dlaczego to jest odpowiedź
Każdy SYN sprawia, że serwer rezerwuje stan i czeka na ACK, które nigdy nie nadchodzi. SYN cookies pozwalają nie przechowywać stanu, dopóki uzgadnianie się nie zakończy.
Odpowiedź
D · Tablicę półotwartych połączeń serwera
19.Podsieci IPv4
Odpowiedź: N = 256
IPv4 subnetting: an address has 32 bits. The prefix /p says how many leading bits identify the network; the remaining 32 − p bits number the hosts. A subnet has 2³²⁻ᵖ addresses, but the first (network address) and last (broadcast address) cannot be given to hosts, so 2³²⁻ᵖ − 2 hosts fit. Exceptions: a /31 (point-to-point link, RFC 3021) uses both of its 2 addresses for hosts, and a /32 is one single address (a single host or a loopback).
Pożyczone bity
28 − 20 = 8
Liczba podsieci
N = 28 = 256
Odpowiedź
N = 256
Każda podsieć /28 ma 24 − 2 = 14 użytecznych hostów.
20.Podsieci IPv4
Odpowiedź: x = 55
IPv4 subnetting: an address has 32 bits. The prefix /p says how many leading bits identify the network; the remaining 32 − p bits number the hosts. A subnet has 2³²⁻ᵖ addresses, but the first (network address) and last (broadcast address) cannot be given to hosts, so 2³²⁻ᵖ − 2 hosts fit. Exceptions: a /31 (point-to-point link, RFC 3021) uses both of its 2 addresses for hosts, and a /32 is one single address (a single host or a loopback).