Programowanie komputera Narzdzia programistyczne Fortran C C Pascal
- Slides: 30
Programowanie komputera Narzędzia programistyczne Fortran C, C++ Pascal Kompilacja Język wysokiego poziomu Assembler Język maszynowy Sprzęt Egzekwowanie programu
Język programowania to usystematyzowany sposób przekazywania komputerowi poleceń do wykonania. Język programowania pozwala programiście na precyzyjne przekazanie maszynie, jakie dane mają ulec obróbce i jakie czynności należy podjąć w określonych warunkach. Języki programowania klasyfikuje się zależnie od tego, do jakiego paradygmatu lub paradygmatów programowania najlepiej się nadają: • Imperatywne - program składa się ze zmiennych oraz modyfikujących je operacji • Obiektowe - definiuje programy za pomocą "obiektów" - elementów łączących stan (czyli dane) i zachowanie (czyli procedury). Obiektowy program komputerowy wyrażony jest jako zbiór takich obiektów, komunikujących się pomiędzy sobą w celu wykonywania zadań. • Funkcyjne – podstawą są funkcje, a nacisk kładzie się na wyznaczenie ich wartości a nie na wykonywanie poleceń • Logiczne - program podawany jest jako pewien zestaw zależności, a obliczenia są dowodem pewnego twierdzenia w oparciu o te zależności.
Języki programowania - poziomy Kod w języku wysokiego poziomu (Pascal): var deklaruję zmienne b : integer; zmienna a – liczba całkowita i : integer; zmienna b – liczba całkowita Begin rozpoczynam program b : = 0; deklaruję na początku b=0 for i : = 0 to 9 do; dla kolejnych wartości od 0 aż do 9 begin b : = b + 1; liczę b jako poprzednią wartość powiększoną o 1 End kończę program Kod maszynowy procesora: Kod w asemblerze: 0101 10001011 10000011 . 386 p 110100110101 11010111 _TEXT segment byte public use 16 111010100101 00011010 'CODE' 11111110 00000000 _TEXT ends 01001101 00010101 11110101 DGroup group _ DATA, BSS 01101111 11100101 10011010 _DATA segment world public use 16 01100111 11000101 10111010 'DATA' 1001 11010101 11100011 d@ label byte 01010111 00011111 10110001 d@w label word
Style programowania: Top-down czyli z góry do dołu; najpierw planuje się całość a potem dochodzi do szczegółów. Bottom-up, czyli z dołu w górę - z elementów składa się całość. A jakiego użyć języka? ? Jest ponad 2000 opublikowanych języków programowania!
Algorytm Postępowania W matematyce oraz informatyce to skończony, uporządkowany zbiór jasno zdefiniowanych czynności, koniecznych do wykonania pewnego zadania. Słowo "algorytm" pochodzi z nazwiska Muhammed ibn Musa Alchwarizmi ( ﺍﻟﺨﻮﺍﺭﺯﻣﻲ ﻣﻮﺳﻰ ﺑﻦ ﻣﺤﻤﺪ ﺍﻟﻠﻪ ﻋﺒﺪ )ﺃﺒﻮ matematyka perskiego z IX wieku i początkowo oznaczało w Europie sposób obliczeń oparty na dziesiętnym systemie liczbowym. Algorytm ma przeprowadzić system z pewnego stanu początkowego do pożądanego stanu końcowego. Badaniem algorytmów zajmuje się algorytmika. Algorytm może zostać zaimplementowany w postaci programu komputerowego lub innego urządzenia. Kiedy podczas tego procesu programiści popełnią błąd (ang. bug), może to doprowadzić do poważnych konsekwencji np. błędy w implementacji algorytmów bezpieczeństwa mogą ułatwić popełnienie przestępstwa komputerowego. Jako przykład stosowanego w życiu codziennym algorytmu podaje się często przepis kulinarny.
Algorytm Postępowania
Narzędzia dla programistów
Narzędzia dla programistów
Narzędzia dla programistów
Oprogramowanie niepożądane
Malware malicious software) to wszelkie aplikacje, skrypty i ingerencje mające szkodliwe, przestępcze lub złośliwe działanie w stosunku do użytkownika komputera Zaliczamy do nich: • niechcianą pocztę elektroniczną - spam • wirusy komputerowe • robaki sieciowe • konie trojańskie (trojany) • wszelkiego rodzaju aplikacje szpiegujące - Spyware • spyboty (małe programy szpiegujące dołączane do niektórych wirusów i robaków) • backdoory (tylne furtki dla crakerów) • keyloggery (urządzenia rejestrujące wprowadzane przez nas sekwencje klawiszy, w tym nasze loginy, hasła, numery kont bankowych)
• fałszywe alarmy dotyczące rzekomo nowych i groźnych wirusów • ataki crackerów • pop-upy (małe okienka pojawiające się w trakcie przeglądania stron internetowych, najczęściej są to reklamy) • tracking cookies (cookies zapisujące wiele informacji o użytkowniku w trakcie przeglądania stron internetowych, bez jego wiedzy i zgody) • Dialery (programy łączące z siecią przez inny numer dostępowy niż wybrany przez użytkownika, najczęściej sa to numery o początku 0 -700 lub numery zagraniczne. Dialery szkodzą tylko posiadaczom modemów - głównie występują na stronach o tematyce erotycznej) • żarty komputerowe (robione najczęściej nieświadomym początkujacym użytkownikom komputerów)
Wirusy Komputerowe
Wirus komputerowy to najczęściej prosty program komputerowy, który w sposób celowy powiela się bez zgody użytkownika. Wirusy wykorzystują słabość zabezpieczeń systemów komputerowych lub właściwości systemów oraz niedoświadczenie i beztroskę użytkowników. Niektóre wirusy mają też inne skutki uboczne: • kasowanie i niszczenie danych • rozsyłanie spamu • dokonywanie ataków na serwery internetowe • kradzież danych (hasła, numery kart płatniczych, dane osobowe) • wyłączenie komputera • wyświetlanie napisów lub rysunków na ekranie • uniemożliwienie pracy na komputerze • umożliwienie przejęcia kontroli nad komputerem osobie nieupoważnionej
Konie Trojańskie i robaki
• Konie trojańskie - wirusy te ukrywają się w na pozór pożytecznym oprogramowaniu. Uruchamiają się gdy użytkownik podejmuje pracę z danym programem. Dają całkowitą władzę atakującego nad komputerem ofiary. Wirus tego typu po jego uruchomieniu oprócz wykonywania swoich "oficjalnych" zadań dokonuje także spustoszenia w systemie. Najpopularniejszym polskim koniem trojańskim jest „Prosiak”. • Bomby logiczne - rodzaj wirusa, który może pozostać w ukryciu przez długi czas. Jego aktywacja następuje w momencie nadejścia określonej daty lub wykonania przez użytkownika określonej czynności. • Robaki - małe, ale bardzo szkodliwe wirusy. Do prawidłowego funkcjonowania nie potrzebują nosiciela. Rozmnażają się samoistnie i w sposób ciągły, powodując w bardzo krótkim czasie wyczerpanie zasobów systemu. Wirusy tego typu są zdolne sparaliżować nawet dość rozległą sieć komputerową.
Programy antywirusowe Dobre antywirusy są wyposażone w dwa niezależnie pracujące moduły skaner (dokładniejszy od monitora skan pewnych grup plików pod kątem istnienia wirusa) i monitor (skanuje pliki na bieżąco, bez wiedzy użytkownika, czy pliki ładowane do systemu są pozbawione wirusów). Obecnie tego typu zabezpieczenia to standard. Antywirus powinien również automatycznie pobierać nowe definicje (szczepionki) odkrytych wirusów – codziennie pojawia się około 30 nowych wirusów.
avast
Nielegalne praktyki komputerowe
Piractwo komputerowe
Piractwo komputerowe
Szerzenie pornografii Szczególnie dziecięcej
Cracker (kraker) to osoba zajmująca się łamaniem zabezpieczeń oprogramowania (cracking). Termin cracking dotyczy dwóch właściwie różnych dziedziń: 1. łamania zabezpieczeń serwerów 2. zabezpieczeń zamkniętego oprogramowania warez Ich działania często powodują straty finansowe wielu firm (destabilizacja serwera, wypuszczenie w internet nielegalnego oprogramowania z crackiem omijającym zabezpieczenia antypirackie, itp. ).
Hakerstwo Haker - termin ten oznacza osobę o bardzo dużych, praktycznych umiejętnościach informatycznych, która identyfikuje się ze społecznością hakerską. Hakerzy odznaczają się bardzo dobrą orientacją w Internecie, znajomością wielu języków programowania, a także świetną znajomością systemów operacyjnych z rodziny Unix.
Ewolucja Homo Sapiens Informaticus
- Fortran interpreter
- Wprowadzenie do informatyki
- Programowanie nieliniowe
- Programowanie vba
- Problem plecakowy algorytm
- Programowanie rozproszone
- Programowanie deklaratywne
- Programowanie mikrokontrolerów avr
- Pascal język programowania
- Programowanie imperatywne
- Schemat żywienia niemowląt 2016 who
- Yagni programowanie
- Programowanie quiz
- 1000 pierwszych dni
- Język drabinkowy symbole
- Vba programowanie obiektowe
- Fldz assembly
- Fortran data types
- Fortran programming examples
- Funciones en fortran
- Fortran programlama dili
- Fortran
- Linguaggio fortran
- The fortran optimizing compiler
- Fortran gt
- Input/output statement in fortran
- Fortran integer division
- Fortran77
- Fortran translator
- Sejarah fortran
- Znak mnozenja