Nie obrażaj więc mojej inteligencji poprzez czynione na pokaz zaniżanie własnej.
ONP postać infiksowa na postfiksową 1).Jeśli element jest zmienną, stałą przekaż go natychmiast na wyjście: w przeciwnym przypadku, jeśli priorytet ogranicznika jest wyższy od priorytetu ogranicznika zajmujący szczyt stosu lub jeśli stos jest pusty, dopisz go na stos, jeśli wreszcie na szczycie stosu znajduje się ogranicznik o wyższym lub równym priorytecie – odczytaj go ze stosu i prześlij na wyjście, a ogranicznik z wejścia dopisz na stosie, 2).Jeśli wyrażenie źródłowe zostało wyczerpane, odczytaj wszystkie ograniczniki ze stosu na wyjście. 3).Ogranicznik NEG jako operator zmiany znaku (operator unitarny „-”), 4).Ogranicznik „(”jest dopisywany na stos bez jakiegokolwiek odczytywania stosu. 5).Ogranicznik „ ) ” nie jest dopisywany na stos, pojawienie się jednak tego ogranicznika na wejściu powoduje odczytanie ze stosu i przesłanie na wyjście wszystkich kolejnych ograniczników o priorytecie nie mniejszym niż 1. 6).Ogranicznik „ ( ” ze szczytu stosu zostaje usunięty bez przekazania na wyjście jeśli aktualnym symbolem na wejściu jest „ ) ”. 7).Gdy na wejściu pojawi się ogranicznik „then”, wówczas, oprócz wszystkich ograniczników przepisywanych ze stosu na wyjście ze względu na ich priorytety, zostaje także usunięty ze stosu ogranicznik „if” . Do ONP zostaje wpisana operacja SW( ); „then” zostaje dopisany na stosie wraz z numerem, pod jakim występuje w ONP operacja SW( ). 8).Gdy na wejściu pojawia się ogranicznik „else”, powoduje on „normalne” przepisywanie ze stosu na wejście aż do chwili, gdy na szczycie stosu znajdzie się „then” wraz z zapisanym numerem, pod którym występuje stowarzyszone SW( ).Do ONP zostaje wpisana niekompletna operacja SB( )zostaje uzupełniona w ONP przez wpisanie do nawiasu bieżącego numeru pozycyjnego w produkowanym zapisie ONP. Ogranicznik „else” dopisuje się na stosie wraz z numerem pozycyjnym SB( ) w ONP. W chwili gdy odczytanie ze stosu produkuje „else”, zostaje uzupełniona odpowiadająca operacja SB( ); „else” nie jest przekazane na wyjście.
Metoda porównawcza jest metodą dzielenia w ZM . warunek |A | < |B |, (A – dzielna, B - dzielnik ). Jeżeli dzielnik jest < od przesuniętej rn reszty rn > B to odejmij B od przesuniętej reszty. Bit ilorazu qi=1. Jeżeli dzielnik jest > od przesuniętej rn reszty rn < B to wykonujemy tylko przesunięcie o jedno miejsce w lewo. Bit ilorazu qi=0. Q=PQ+Rn Rn =rn *2 –n / B Bit znakowy – suma modulo 2. Metoda nierestytucyjna jest metodą dzielenia w ZU2 . warunek |A | < |B |, (A – dzielna, B - dzielnik ). Metoda ta polega na badaniu znaku dzielnika i kolejnej reszty częściowej. Jeżeli znaki te są zgodne to odejmujemy dzielnik od przesuniętej w lewo reszty częściowej. Jeżeli znaki ich są różne, to dodajemy dzielnik do przesuniętej w lewo kolejnej reszty częściowej. Jeżeli bity znakowe są równe, to bit ilorazu równa się 1. Jeżeli bity znakowe nie są równe, to bit ilorazu równa się 0. Do otrzymanego wyniku dodajemy poprawkę równą = - 1+2- n, gdzie n – numer ostatniej reszty z dzielenia. Qo- bit znakowy.
Postulat / Twierdzenie Suma Iloczyn Postulat 2. X + 0 = X X * 1 = X Postulat 5. X + X' = 1 X * X' = 0 Twierdzenie 1. X + X = X X * X = X Twierdzenie 2. X + 1 = 1 X * 0 = 0
( X ')' = X
Postulat 3. przemienność X + Y = Y + X X * Y = Y * X Twierdzenie 4. łączność X+(Y+Z)=(X+Y)+Z X*(Y*Z)=(X*Y)*Z Postulat 4. rozdzielność X*(Y+Z)=X*Y+X*Z X+(Y*Z)=(X+Z)*(X+Z) Twierdzenie 5. de Morgana (X + Y)' = X' * Y' (X * Y)' = X' + Y' Twierdzenie 6. absorpcja X + X * Y = X X * (X + Y) = X
|
Menu
|