Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Sławomir Nowak Podstawy informatyki Logika, algebra Boola Arytmetyka cyfrowa.

Podobne prezentacje


Prezentacja na temat: "Sławomir Nowak Podstawy informatyki Logika, algebra Boola Arytmetyka cyfrowa."— Zapis prezentacji:

1 Sławomir Nowak Podstawy informatyki Logika, algebra Boola Arytmetyka cyfrowa

2 Podstawy… Informatyka nie jest (tylko) nauką o komputerach !!!!!!!!!!!!

3 Logika Jedna z podstawowych dyscyplin filozofii, ukształtowana jeszcze przez Pitagorasa, Sokratesa, Arystotelesa. Nauka o wiedzy ogólnej, oddzielonej od metafizyki. Teoria pojęć i posługiwania się pojęciami. Podstawą pojęć są definicje, a wnioskowanie opiera się na dowodach. Głównymi elementami logiki stały się więc definicja i dowód.

4 Logika W średniowieczu była to dziedzina bardzo trudna. Oparta jest na tzw. sylogizmach. Sylogizm jest działaniem, w którym na podstawie dwóch zdań przesłanek wyprowadza się trzecie, będące wnioskiem. Każdy człowiek jest śmiertelny Sokrates jest człowiekiem Sokrates jest śmiertelny.

5 Logika Ludzki sposób rozumowania, oparty na doświadczeniu opiera się na tworzeniu uproszczonych (często fałszywych) zbiorów sylogizmów – schematów rozumowania, którymi się posługujemy w życiu.

6 Logika Logika matematyczna Algebra Boola Sieci logiczne Arytmetyka systemów cyfrowych XIX w XX w

7 Logika matematyczna Rachunek zdań – badanie związków logicznych pomiędzy zdaniami. Aby stosować logikę matematyczną, zdania muszą być albo prawdziwe, albo fałszywe (nie musimy jednak znać wartości logicznej zdania). Zdania mogą odnosić się do rzeczywistości. Nie wszystkie zdania są jednak zdaniami w logice matematycznej!

8 Logika matematyczna Przykłady zdań: Księżyc krąży wokół Ziemi zdanie prawdziwe Każdy pies ma osiem łap zdanie nie prawdziwe Jutro będzie padał deszcz zdanie ma niewiadomą wartość logiczną (hipoteza) Informatyka jest zabawna zdanie niejednoznaczne, nie jest to więc zdanie logiczne, gdyż nie jest ani prawdziwe, ani fałszywe

9 Logika matematyczna Zdania proste można łączyć w bardziej złożone. Można to osiągnąć za pomocą spójników logicznych, np. i czy też lub. Lista podstawowych spójników: Źródło:

10 Logika matematyczna Które z poniższych zdań może być prawdziwe? Księżyc krąży wokół Ziemi i pies ma osiem łap. Księżyc krąży wokół Ziemi lub pies ma osiem łap. Ziemia krąży wokół Księżyca wtedy i tylko wtedy, gdy pies ma osiem łap Jeśli pies ma osiem łap, to Księżyc krąży wokół Ziemi. ??????

11 Logika matematyczna Spójniki logiczne Koniunkcja Byłem w księgarni i kupiłem książkę. Oznaczmy to zdanie jako r. Zdanie to można podzielić na dwa zdania proste: Byłem w księgarni, które oznaczymy przez p Kupiłem książkę, które oznaczymy przez q

12 Logika matematyczna Spójniki logiczne Alternatywa Dziś rano posprzątam w pokoju lub pooglądam telewizję Zdanie r możemy podzielić na dwa zdania proste: zdanie p: Dziś rano posprzątam w pokoju zdanie q: Dziś rano pooglądam telewizję

13 Logika matematyczna Spójniki logiczne Negacja Nieprawda, że byłem dzisiaj w kinie oznaczmy jako zdanie r

14 Logika matematyczna Spójniki logiczne Implikacja Jeżeli będziesz grzeczny, to dostaniesz czekoladę. Zdanie to składa się z dwóch zdań prostych: zdania p: Będziesz grzeczny zdania q: Dostaniesz czekoladę Bo mama nie sprecyzowała, co się stanie, jak będzie niegrzeczny…! A więc Jeśli pies ma osiem łap, to Księżyc krąży wokół Ziemi jest prawdziwe!

15 Logika matematyczna Spójniki logiczne Równoważność Gdyby mama wypowiedziała tak: Dostaniesz czekoladę jedynie wtedy, jeśli będziesz grzeczny to okazałoby się, że gdyby synek był niegrzeczny, a mama i tak by mu dała czekoladę, to mama by skłamała. A więc Ziemia krąży wokół Księżyca wtedy i tylko wtedy, gdy pies ma osiem łap jest prawdziwe!

16 Logika matematyczna …i tak dalej: Prawa rachunku zdań. Metody dowodzenia. Analiza rozumowań Polecana pozycja:

17 Algebra Boola George Boole ur roku Przyszedł na świat jako syn szewca. Nauczył się greki, francuskiego, niemieckiego i włoskiego. Postanowił zostać duchownym… najpierw jednak założył prywatną szkołę. Zaczął też pracować jako nauczyciel matematyki. Opublikował wiele książek i artykułów z matematyki i logiki. W wieku 35 lat poznał osiemastoletnią Mary Everest zaopiekował się nią i… poślubił. 24 listopada 1864 Boole jak zwykle przebył pieszo trzy kilometry na uczelnię. Tego dnia padał jednak ulewny deszcz, więc cały dzień spędził w mokrym ubraniu, co sprawiło że się przeziębił. Mary Boole wierzyła, że najlepszym sposobem walki z chorobą jest wystawienie chorego na jej przyczynę, regularnie polewała więc łóżko męża wodą. George Boole nie przeżył kuracji, zmarł po dwóch tygodniach… Najważniejszym wynalazkiem Boole'a było opracowanie zasad wykonywania operacji logicznych. W ten sposób powstała tzw. Algebra Boole'a.

18 Algebra Boola George Boole odkrył, że funkcja logiczna może być wyrażona w postaci algebraicznej. Konjunkcja jest bardzo podobna do mnożenia zmiennych. Alternatywa odpowiada dodawaniu, z tym, że reguła 1+1=2 w zwykłej algebrze musi być zastąpiona regułą 1 +1=1. Negację wprowadza się jako oddzielną operację.

19 Algebra Boola Formalnie… Źródło: Wikipedia

20 Algebra Boola …pomijając ścisła definicję matematyczną algebra Boole'a ma tylko dwa elementy (zmienne boolowskie): "0" i "1", a operacje tej algebry są zdefiniowane w oparciu o zbiór 3 podstawowych działań: W oparciu o te działania tworzy się funkcje boolowskie są funkcjami, w których argumenty są zmiennymi boolowskimi.

21 Algebra Boola Podstawowe twierdzenia algebry Boola:

22 Algebra Boola Mimo wyraźnych analogii nie należy mylić matematycznego rachunku zdań logicznych z algebrą Boole`a, w której w istocie mamy do czynienia z liczbami. Terminy jak wartość logiczna,,,prawda,,,fałsz, nie i, lub itd. są ogólnie przyjęte w informatyce i technice cyfrowej, nie są jednak ścisłe z matematycznego punktu widzenia.

23 Algebra Boola Początkowo algebra Boole`a służyła do analizy zdań logicznych i procesów myślowych. Obecnie stała się ona podstawą analizy i projektowania binarnych układów cyfrowych. Źródło: układy_cyfrowe_artur_swaczyna.ppt

24 Bramki logiczne

25 Bramki logiczne sieci logiczne, układy scalone Układ logiczny: Źródło: układy_cyfrowe_artur_swaczyna.ppt

26 Bramki logiczne sieci logiczne Źródło: F = ~x * ~y * z + ~x * y * z + x * y F = (x + y + ~z)*(X+ ~y + ~z)*(~x + Z)

27 Obraz z: Podstawy techniki cyfrowej Budowa komputerów Podstawy automatyki cyfrowej …i na pozostałych wykładach z PI INFORMATYKA

28 Algebra Boola Arytmetyka układów cyfrowych Realizację podstawowych działań arytmetycznych na liczbach można sprowadzić do operacji boolowskich na ciągach binarnych. Różnica w stosunku do arytmetyki klasycznej rozumianej są ograniczone zbiory liczb oraz ograniczona dokładność (na kalkulatorze też nie możemy np. mnożyć do w nieskończoność)

29 Przykład arytmetyki Kod U2: Reprezentacja ujemna liczb binarnych Aby zapisać liczby ujemne w systemie binarnym w komputerze stosuje się kod uzupełnień do dwóch U2. W celu wyodrębnienia liczb ujemnych pierwszy bit liczby binarnej stanowi o jej znaku: 0 oznacza +, 1 oznacza –. Ważne jest przy tym ustalenie ilości bitów przeznaczonych na zapis liczby.

30 ZAMIANA LICZB ZAPISANYCH W SYSTEMIE DZIESIĘTNYM NA KOD UZUPEŁNIEŃ DO DWÓCH Dla dodatniej liczby X zamiana na kod uzupełnień do dwóch jest identyczna jak zamiana tej liczby na system binarny. Dla ujemnej liczby X zamiana na kod uzupełnień do dwóch wygląda następująco: X (10) = 2 N – | X (10) | = Y (10), Y (10) -> A (U2), (N jest liczbą bitów przeznaczonych na zapis liczby) Przykład arytmetyki Kod U2: Reprezentacja ujemna liczb binarnych

31 ZAMIANA LICZB ZAPISANYCH W SYSTEMIE DZIESIĘTNYM NA KOD UZUPEŁNIEŃ DO DWÓCH Przykład: Mając do dyspozycji 8 bitów zamień wartość –25 (10) na kod uzupełnień do 2: -25 (10) = 2 8 – 25 = 256 – 25 = (10) = (2) Więc: -25 (10) = (U2) Przykład arytmetyki Kod U2: Reprezentacja ujemna liczb binarnych

32 Metoda liczby przeciwnej Można łatwiej. Bierzemy liczbę |-25| (moduł) 25 (10) = (2) Inwersja (zamieniamy 0 z 1 i odwrotnie) (2) =(inwersja)> Dodajemy = I mamy taki sam wynik: -25 (10) = (U2) Zamieniając z (10) -> (U2) dodajemy 1 Zamieniając z (U2) -> (10) odejmujemy 1 Przykład arytmetyki Kod U2: Reprezentacja ujemna liczb binarnych

33 Po co to jest potrzebne? W systemie binarnym bardzo trudno jest wykonać pewne operacje. Na przykład nie wiadomo jak wprost zrobić operację odejmowania. Zastosowanie U2 pozwala zamienić odejmowania na dodawanie liczby przeciwnej. Zamiast 100 – 50, realizujemy (-50). Oczywiście w sposób binarny. 100 (10) = (U2) 50 (10) = (U2) -50 (10) = = (U2) 100 – 50 = (-50) = (U2) (U2) => 50 (10)

34 Przykład arytmetyki Kod U2: Reprezentacja ujemna liczb binarnych Z jeszcze innej strony – podglądnijmy niektóre liczby w kodzie U2 (na 8 bitach): u2 – … u2 – u2 – u2 – (-1) u2 – (-2) u2 – (-3) u2 – (-4) 10 … u2 – (-128) 10

35 Reprezentacja stałopozycyjna: z góry określamy, ile bitów przeznaczamy na część całkowitą, a ile na ułamkową. Liczby zapisywane są zawsze z określoną dokładnością! Reprezentacja liczb rzeczywistych ułamki dodatnie w notacji naturalnej stałopozycyjnej

36 xxxxx xxx Przykładowo 8 bitów na liczbę: Wartości całkowiteWartości ułamkowe

37 Przykład 1: Zapis liczby 36,75 Sposób wykonania: Część całkowitą zamieniamy tradycyjnie = XX Część ułamkową mnożymy przez dwa i zapisujemy otrzymaną liczbę całkowitą: DziałanieWynikCzęść ułamkowaCzęść całkowita 0,75 * 21,50,51 0,5 * 2101 Część ułamkowa to XXXXXX 11 Mamy więc: Reprezentacja liczb rzeczywistych ułamki dodatnie w notacji naturalnej stałopozycyjnej

38 Przykład 2: Zapis liczby 0,1875 Tym razem dla reprezentacji: XX XXXXXX (6 bitów na ułamek) Sposób wykonania: Część całkowita wynosi 00 XXXXXX Część ułamkowa: DziałanieWynikCzęść ułamkowaCzęść całkowita 0,1875 * 20,3750,3750 0,375 * 20,750,750 0,75 * 21,50,51 0,5 * 2101 Część ułamkowa to XX 0011 Mamy więc: Reprezentacja liczb rzeczywistych ułamki dodatnie w notacji naturalnej stałopozycyjnej

39 Warto zauważyć, że liczby po przecinku w notacji binarnej także są związane z potęgami liczby 2: Reprezentacja liczb rzeczywistych ułamki dodatnie w notacji naturalnej stałopozycyjnej xxxxx xxx ,5 0,25 0,125 itd… bo: 2 -1, 2 -2, 2 -3 … Przykładowo 8 bitów na liczbę: Wniosek: w tej reprezentacji możemy zapisać liczbę z dokładnością do kolejnych potęg liczby 2. Ale np. liczba 0,3 będzie reprezentowane niedokładnie: … itd. Są także inne reprezentacje liczb: zmiennopozycyjne, ułamkowe ze znakiem itp

40 Obraz z: Arytmetyka systemów cyfrowych (stało i zmiennopozycyjna reprezentacja liczb, mnożenie, dzielenie i inne operacje arytmetyczne) INFORMATYKA

41 Dziękuję za uwagę…


Pobierz ppt "Sławomir Nowak Podstawy informatyki Logika, algebra Boola Arytmetyka cyfrowa."

Podobne prezentacje


Reklamy Google