Šifrování/Dešifrování s použitím hesla
|
|
- Václav Pravec
- před 8 lety
- Počet zobrazení:
Transkript
1 Fakulta elektrotechnická Katedra teoretické elektrotechniky Dokumentace k semestrální práci Šifrování/Dešifrování s použitím hesla 2012/13 Petr Zemek Vyučující: Ing. Petr Kropík, Ph.D Předmět: Základy programování pro elektroniku
2 Obsah 1 Zadání semestrální práce Název Stručné zadání Celé zadání Analýza úlohy (De)Šifrování Dekompozice programu Vyhodnocování vstupu Načítání vstupního řetězce ze souboru Šifrování Dešifrování Výpis výstupu Popis implementace Přenositelnost Datové struktury a správa paměti Popis algoritmů Uživatelská příručka Překlad zdrojových kódů Spuštění a obsluha Ukázky běhu programu Závěr Výkonnost programu Kódování zdrojových souborů Důvod využívání menších datových typů Vysvětlení nestandardních konstrukcí
3 1 Zadání semestrální práce 1.1 Název Šífrování/Dešífrování s použitím hesla 1.2 Stručné zadání Napište program v jazyce C: jednoduché šifrování a dešifrování s využitím heslavytvořte program, který dokáže šifrovat a dešifrovat pomocí jednoduché šifry. Ovládání programu umožněte pomocí jednoduchého menu. Umožněte načtení dat z klávesnice nebo ze souboru. Program musí obsahovat alespoň jednu uživatelskou funkci a musí být ošetřen proti chybným vstupům. Výstup programu umožněte do souboru nebo na obrazovku. Uživatel zvolí, jestli chce použít režim šifrování či dešifrování (dále jen Š/D). Vytvořte v paměti pole znaků (řetězec), který bude Š/D a řetězec do kterého uložíte heslo. Program bude Š/D dle běžné aditivní šifry, která využívá posunu znaků ve znakové ASCII tabulce. a tento hlavolam vyřeší, tj. převede jej posloupností povolených tahů do tzv. základního postavení. 1.3 Celé zadání pkropik/zpe/semestralky_detaily/semestralni_prace_zpe_petr_kropik.pdf 3
4 2 Analýza úlohy 2.1 (De)Šifrování Samotný algoritmus S/D byl víceméně představen v zadání. Pro S/D je pravděpodobně nejvhodnější použít překlad jednotlivých znaků na jejich číselné ASCII hodnoty a ty potom při šifrování s ASCII hodnotou hesla sčítat, při dešifrování odčítat. Po provední potřebných početních operacích se musí číselná hodnota nacházet mezi hodnotou 32 a hodnotou tedy v intervalu tisknutelných znaků. Je tedy nutné implementovat funkce, které zajistí toto sčítání/odčítání hodnot. 2.2 Dekompozice programu 1. Vyhodnocování vstupu a) Zadání v parametru CLI i. Rozparsování vstupu b) Parametr CLI chybí c) Parametrů je moc 2. Výpis menu a) Rozvržení textu a formátování v menu b) Vyžádání vstupu od uživatele 3. Načítání vstupního řetězce ze souboru 4. Načítání vstupního řetězce ze stdin 5. Šifrování 6. Dešifrování 7. Výpis výstupu a) do souboru b) na stdout 4
5 2.3 Vyhodnocování vstupu Nejdříve by se mělo ověřit, jestli uživatel program spustil s perametrem, popřípadě jestli nezadal málo nebo moc parametrů (slov). V případě, že parametrů bude mnoho, program skončí s chybovým hlášením. Pokud bude znaků málo, vypíše menu a vyžádá si vstup. Program by mělo jít spustit přímo s parametry, které by obsahovaly vstup k (de)šifrování, heslo a požadovanou akci. Tím jsou zajištěny všechny důležité informace a může začít samotné (de)šifrování bez zbytečných otázek. 2.4 Načítání vstupního řetězce ze souboru K načítání ze souboru může dojít v případě, že parametrů na příkazové řádce bude málo (žádný.) Nyní je vhodné vypsat menu a uživateli dát na vybranou, zda chce řetězec načíst ze stdin nebo ze souboru. Poté bude uživatel pořádán o heslo a o akci - zda chce řetězec šifrovat nebo dešifrovat. Podle akce se zavolají příslušné funkce. 2.5 Šifrování Z důvodu rozdílné délky šifrovaného řetězce a hesla je nutné řetězec se vstupem a řetězec s heslem zpracovávat od začátku znak po znaku. Při načtění prvního znaku ze vstupu resp. z hesla se získá jejich číselná reprezentace v ASCII tabulce a hodnoty se sečtou. Protože ASCII tabulka obsahuje i netisknutelné znaky (na začátku i na konci), je nutné přičíst hodnotu 32 - protože 31 znaků od začátku je netisknutelná oblast. Když výsledná hodnota přesáhne rozsah tisknutelné oblasti, odečte se od ní 126 a znovu přičte 32 (aby byla výsledná hodnota tisknutelná). Potom se výsledné číslo přeloží na znak, uloží se do výstupního pole zašifrovaných znaků a pokračuje se šifrováním následujícího znaku ze vstupního řetězce. 2.6 Dešifrování Jedná se o jednoduchou inverzní operaci. Vstupní řetězce a heslo se načítají totožně. Místo sčítání jejich ASCII hodnoty se hodnota hesla odčítá od hodnoty dešifrovaného znaku. Potom se odečte 32 a pokud je výsledná hodnota menší než 32, tak se přičte 126 a odečte 32. Získané číslo se převede na znak a ten je tím dešifrován. 2.7 Výpis výstupu Získaný výstup se může vypsat na stdout nebo do souboru. Na stdout se text může vypsat automaticky a o možnost zápisu do souboru je vhodnější uživatele informovat a načíst jeho volbu. 5
6 3 Popis implementace 3.1 Přenositelnost Program byl vyvíjen pod operačním systémem GNU/Linux. Vzhledem k činnosti programu se pro portování na OS Windows nemusí provádět žádné změny ve zdrojovém kódu. Jediná odlišná věc může být soubor makefile - v případě, že používáte jiný kompilátor než GCC. 3.2 Datové struktury a správa paměti Jako hlavní datové struktury jsou zde dva vektory - Pro vstupní řetězec a pro heslo. Většina datových struktur je alokována staticky. Při vstupu ze souboru se "dynamicky"alokuje vektor pro uchovávání vstupního řetězce. Paměť pro tento řetězec se ovšem dealokuje až na konci programu, takže se dynamickou alokací příliš nezíská. Pro logické oprace a jiné rozhodovací procesy se využívají takové datové typy, aby svou kapacitou a možnostmi vyhovovaly situaci a zároveň, aby bylo zřejmé, že při správném běhu programu v dané proměnné nemůže být např. více, než dovoluje daný datový typ. V programu se používají převážně datové typy unsigned short. Tam, kde je zapotřebí znaménko, se používá short a int. Programátorem definované datové typy nejsou potřeba. 3.3 Popis algoritmů Výpis menu Menu je realizováno v souboru print_menu.c. Na řádku 31 se zkontroluje, zda je terminál dostatečně velký na vypsání menu. Když není, fce print_menu() vrátí 1 a program se ukončí. Od řádku 39 se deklarují proměnné, které mají v sobě uložen defaultní statický obsah menu. Od řádku 47 se vypočítává počet mezer, které se musí doplnit před řetězce, které se deklarovaly výše. Skládáním statických řetězců a mezer vznikne formátované menu. (ř. 59+). V jednoduchém menu je uživatel požádám o zadání jména souboru nebo stdin. Výsledek se uloží pomocí fce scanf() do prměnné zdroj_vstupu deklarované na řádku 106 v souboru vstup_ze_souboru.c. Proměnná je staticky alokovaná na počet znaků, které zbývají od promptu do konce řádku. Při načítání řetězce ze souboru je uživatel omezen na znaků. 6
7 Vstup ze souboru V souboru vstup_ze_souboru.c na řádku 106 se vyhodnocuje, zda se vstupní řetězec bude načítat ze souboru ze souboru nebo ze stdin. Na řádku 134 a 213 jsou cykly, které uživatele nutí zadat S nebo D, aby se uvnitř těchto cyklů rozhodlo, zda se bude šifrovat nebo dešifrovat. Funkce pro S/D Pro zjednodušení programu zde existuje pouze jedna funkce pro šifrování a jedna pro dešifrování, ačkoliv je zde na výběr více možností (a formátů) vstupu. Jako parametr tyto funkce přebírají standardní řetězce typu char. Tzn. že se daný vstup musí nejdříve přesunout do polí, které se potom předají těmto funkcím. 7
8 4 Uživatelská příručka 4.1 Překlad zdrojových kódů Pro přeložení je nutné mít nainstalovaný kompilátor GNU GCC. Pokud používáte jiný, změňte proměnnou CC v souboru makefile (makefile.win ve windows). Program se překládá jak pod Windows tak pod GNU/Linux voláním příkazu make v adresáři se zdrojovými kódy. Např.: Stáhnu zdrojové kódy v archivu de_crypt.7z, archiv rozbalím do adresáře de_crypt. Otevřu si příkazovou řádku a příkazem cd <cesta_k_adresari_de_crypt> si změním pracovní adresář. Zadám příkaz make a v pracovním adresáři se vytvoří binární spustitelný soubor de_crypt (de_crypt.exe pod Windows) 4.2 Spuštění a obsluha Vstup z parametru Při volání programu se správným parametrem se ve funkci main zavolá fce vstup_z_parametru, která zajistí rozparsování parametru ze zadání do pole znaků pro vstupní řetězec a pro heslo. Jako poslední znak v parametru musí být akce. Příklad spouštění programu s parametrem: jashin@laptop ~/Dokumenty/Vyvoj/Rozpracovane/semestrálka $./de_crypt 1. Clanky zverejnene na techto strankach se casto tykaji jevu ci veci, heslo S Zadání: 1. Clanky zverejnene na techto strankach se casto tykaji jevu ci veci, Heslo: heslo Činnost: S Zašifrované znaky: [XJm8-:7EJFB1>16:1:1J:-J@1/4@;J?@>-:7-/4J?1J/-?@;J@E7-65J61BAJ/5JB1/5VJ Uložit do souboru? a/*: a Cesta k souboru (max 254 znaků): vystup jashin@laptop ~/Dokumenty/Vyvoj/Rozpracovane/semestrálka $ cat vystup [XJm8-:7EJFB1>16:1:1J:-J@1/4@;J?@>-:7-/4J?1J/-?@;J@E7-65J61BAJ/5JB1/5VJ Vstupní řetězec je vhodné uzavřít do apostrofů, aby shell nevyhodnocoval znaky uvnitř. 8
9 4.3 Ukázky běhu programu Činnost programu spuštěného se zadáním v parametru. V případě, že máte celý řetězec parametrů zadaný, stačí zmáčknout enter a program začne pracovat. 9
10 Toto je výstup programu po jeho volání bez parametrů. Více obrázů najdete v adresáři dokumentace/img/ V případě, že zavoláte program s více než čtyčmi parametry (nesymslné), tak program skončí takto: ERR#1: Příliš mnoho argumentů! Použití: de_crypt "<fráze>" "<heslo>" <S D> Když se stane, že ve vašem PC už nezbývá dostatek volné paměti (používáte příliš novou verzi Windows), vypíše se hláška: ERR#5: Out of memory! 10
11 5 Závěr 5.1 Výkonnost programu Při (de)šifrování delšího řetězce výkonost závisí především na funkcích pro (de)šifrování. Postupně jsem je zjednodušil asi o 80% řádek a myslím, že lépe už to nedokážu. Výkonnostní testy se neprováděly. 5.2 Kódování zdrojových souborů Všechny zdrojové kódy programu i dokumentace jsou uloženy v kódování UTF Důvod využívání menších datových typů Ačkoliv mi učitelé doporučují využívat int, pro přehlednost svý programů využívám takový datový typ, jaký přesně vyhovuje v dané situaci - aby bylo každému, kdo bude číst můj kód jasné, že v proměnné pro řízení na první pohled nekonečného cyklu nebude např. hodnota vyšší než 10. Někdo tvrdí, že využívání datových typů menších než int je pro úsporu paměti zbytečné. Již řadu let vlastním dnes už zastaralý PC IBM T43 a tam char zabírá 1 B v paměti, short 2 B a int 4 B - čili všechny menší datové typy na starších platformách nespotřebovávají velikost intu. A protože mám rád efektivitu, nebudu využívat int tam, kde není potřeba. 5.4 Vysvětlení nestandardních konstrukcí V programu jsem využil nekonečných cyklů. Nekonečné cykly jsou nekonečné proto, že si nemohu být jistý tím, kolikrát se uživatel splete a zadá špatné zadání. V kódu jsem příliš nepoužíval standardní ANSI-C komentáře - při vývoji jsem někdy zakomentovával velké kusy kódu a zakomentovaný komentář ( /* /*komentář */ */ ) se vyhodnotí jako chyba. Proto používám komentáře z C++. 11
Implementace numerických metod v jazyce C a Python
Fakulta elektrotechnická Katedra matematiky Dokumentace k semestrální práci Implementace numerických metod v jazyce C a Python 2013/14 Michal Horáček a Petr Zemek Vyučující: Mgr. Zbyněk Vastl Předmět:
Více1. Uživatelská úprava příkazů I.
1. Uživatelská úprava příkazů I. Studijní cíl Tento blok kurzu vysvětluje, jak zadávat příkazy operačního systému během práce v AutoCADu a jak vytvářet zkratky pro často používané příkazy a dočasně předefinovat
VícePokud nebude na příkazové řádce uveden právě jeden argument, vypište chybové hlášení a stručný
KIV/PC ZS 2015/2016 Zadání ZADÁNÍ SEMESTRÁLNÍ PRÁCE ŘEŠENÍ KOLIZÍ FREKVENCÍ SÍTĚ VYSÍLAČŮ VARIANTA 2 (REx) Naprogramujte v ANSI C přenositelnou 1 konzolovou aplikaci, která jako vstup načte z parametru
VíceLekce 9 IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ JAZYK C
Identifikační údaje školy Číslo projektu Název projektu Číslo a název šablony Autor Tematická oblast Číslo a název materiálu Anotace Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace
VíceSemestrální práce KIV/PC Řešení kolizí frekvencí sítě vysílačů Zdeněk Bečvář A14B0466P 10. ledna 2016
Semestrální práce KIV/PC Řešení kolizí frekvencí sítě vysílačů Zdeněk Bečvář A14B0466P 10. ledna 2016 Obsah 1 Zadání 1 2 Analýza úlohy 2 2.1 Uložení dat ze vstupního souboru................ 2 2.2 Graf
VíceOperační systémy Linux, Mac OS X a jejich srovnání
5 5.1 Operační systémy Linux, Mac OS X a jejich srovnání Popište výhody programů OpenSource, čím se vyznačují OpenSource programy se vyznačují tím, že se dodávají i se zdrojovým kódem. S tímto kódem může
VíceTMU. USB teploměr. Teploměr s rozhraním USB. Měření teplot od -55 C do +125 C. 6. května 2011 w w w. p a p o u c h. c o m 0188.00.
USB teploměr Teploměr s rozhraním USB Měření teplot od -55 C do +125 C 6. května 2011 w w w. p a p o u c h. c o m 0188.00.00 Katalogový list Vytvořen: 30.5.2005 Poslední aktualizace: 6.5.2011 8:59 Počet
VíceAutomatický přenos dat z terminálů BM-Finger
Automatický přenos dat z terminálů BM-Finger Tento program při normálním používání docházky nepotřebujete. V docházce se v menu Firma / Terminály BM-Finger nastavuje automatické stahování dat v položce
VíceOperační systémy 2: Zápočtové úkoly
Operační systémy 2: Zápočtové úkoly 18. listopad 2010 1 Paralelní Mergesort Implementujte paralelní verzi algoritmu Merge sort, který bude řadit celá čísla uložená v textovém souboru. Program bude mít
VíceÚvod do jazyka C. Ing. Jan Fikejz (KST, FEI) Fakulta elektrotechniky a informatiky Katedra softwarových technologií
1 Fakulta elektrotechniky a informatiky Katedra softwarových technologií 12. října 2009 Organizace výuky Přednášky Teoretické základy dle normy jazyka C Cvičení Praktické úlohy odpřednášené látky Prostřední
VíceStřední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace
Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace Předmět: Vývoj aplikací Téma: Datové typy Vyučující: Ing. Milan Káža Třída: EK3 Hodina: 5 Číslo: V/5 Programování v jazyce
Víceint => unsigned int => long => unsigned long => float => double => long double - tj. bude-li:
13.4.2010 Typová konverze - změna jednoho datového typu na jiný - známe dva základní implicitní ("sama od sebe") a explicitní (výslovně vyžádána programátorem) - C je málo přísné na typové kontroly = dokáže
VícePivovar Chmelokvas. KIV/PT Semestrální práce
Pivovar Chmelokvas KIV/PT Semestrální práce student: Petr Neužil studijní číslo: P13B0377P email: syberij@students.zcu.cz datum: 15.12.2014 Standardní zadání semestrální práce pro PT 2014/2015 Zadání je
VíceZáklady jazyka C. Základy programování 1 Martin Kauer (Tomáš Kühr)
Základy jazyka C Základy programování 1 Martin Kauer (Tomáš Kühr) Organizační záležitosti Konzultace Pracovna 5.076 Úterý 15:00 16:30 Emailem martin.kauer@upol.cz Web předmětu http://tux.inf.upol.cz/~kauer/index.php?content=var&class=zp1
VíceZáklady programování (IZP)
Základy programování (IZP) Jedenácté počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Gabriela Nečasová, inecasova@fit.vutbr.cz
VícePointery II. Jan Hnilica Počítačové modelování 17
Pointery II 1 Pointery a pole Dosavadní způsob práce s poli zahrnoval: definici pole jakožto kolekce proměnných (prvků) jednoho typu, umístěných v paměti za sebou int pole[10]; práci s jednotlivými prvky
VíceHP Backup and Recovery Manager
HP Backup and Recovery Manager Příručka uživatele Verze 1.0 Obsah Úvod Instalace Postup při instalaci Jazyková podpora HP Backup and Recovery Manager Připomínky Naplánované zálohy Co je možné naplánovat?
VícePříručka k programu Wkasa Restaurační verze
Příručka k programu Wkasa Restaurační verze Obsah : I. Instalace...3 1. Instalace...3 II. Objednávka ostré verze, licence...7 III. Příručka obsluhy...9 1. Spouštění programu, přihlášení...9 2. Základní
VíceZáklady programování (IZP)
Základy programování (IZP) Páté počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Petr Veigend, iveigend@fit.vutbr.cz 5. týden
VíceZáklady jazyka C. Základy programování 1 Tomáš Kühr
Základy jazyka C Základy programování 1 Tomáš Kühr Organizační záležitosti Konzultace Osobně v pracovně 5.043 Pondělí 15.00 16.00 Úterý 14.00 16.00 Čtvrtek 13.00 15.00 Pátek 9.30 11.30 Něco jde vyřešit
VíceMotivace. Vstup a výstup. Minimální komunikace. Motivace. ÚDPJ - Vstup a výstup. Ing. Lumír Návrat katedra informatiky, A
Motivace Vstup a výstup Ing. Lumír Návrat katedra informatiky, A-1018 59 732 3252 Načtení čísla val :: Int val = 42 function :: Int -> Int function = val + n inputint :: Int inputdiff = inputint - inputint
VíceDatabázový systém Matylda
Databázový systém Matylda Návrh softwarového projektu Vývojový tým Předpokládaný počet řešitelů: 5 Vedoucí: Mgr. Martin Nečaský Ph.D. Motivace V současné době se mnoho nákupů odehrává v internetových obchodech.
VíceZáklady programování (IZP)
Základy programování (IZP) Deváté počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Petr Veigend, iveigend@fit.vutbr.cz 27.11.2017,
VíceElektronická dokumentace - LATEX. Maticové operace
Elektronická dokumentace - LATEX Maticové operace 29.listopadu 2009 Luděk Bordovský (bor0022) Fakulta elektrotechniky a informatiky VŠB-TU Ostrava Uživatelská příručka 1 Obsah 1 Úvod 3 2 Ovládání 3 3 Operace
Vícesoftware Ruční měřicí přístroje Zobrazovače / Regulátory Loggery / EASYBus GDUSB FastView EASYControl net EASYBus Configurator GSOFT 3050 GSOFT 40k
EBS 20M EBS 60M GMH 3xxx a GMH 5xxx EASYBus a EASYLog TLogg GDUSB 1000 GSOFT 3050 operační systémy Windows XP / 7 98 SE / 7 98 SE / 7 98 SE / 7 XP / 7 XP / 7 XP / 7 možnost použití více rozhraní současně
VícePříručka k programu Wkasa Obchodní verze
Příručka k programu Wkasa Obchodní verze Obsah : I. Instalace...3 1. Instalace...3 II. Objednávka ostré verze, licence...7 III. Příručka obsluhy...9 1. Spouštění programu, přihlášení...9 2. Základní prodej...9
VíceUživatelská příručka
Uživatelská příručka PC výkaznictví JASU (program pro zpracování účetního výkaznictví) březen 2012 Dodavatel: MÚZO Praha s.r.o. Politických vězňů 15 P.O.Box 36 111 21 Praha 1 telefon: 224 091 619 fax:
VícePrincipy operačních systémů. Lekce 3: Virtualizace paměti
Principy operačních systémů Lekce 3: Virtualizace paměti Virtuální paměť Adresní prostor paměti je uspořádán logicky jinak, nebo je dokonce větší než je fyzická operační paměť RAM Rozšíření vnitřní paměti
VíceProgramování v Javě I. Leden 2008
Seminář Java Programování v Javě I Radek Kočí Fakulta informačních technologií VUT Leden 2008 Radek Kočí Seminář Java Programování v Javě (1) 1/ 45 Téma přednášky Datové typy Deklarace třídy Modifikátory
VíceTMU. USB teploměr. teploměr s rozhraním USB. měření teplot od -55 C do +125 C. 26. května 2006 w w w. p a p o u c h. c o m 0188.00.
USB teploměr teploměr s rozhraním USB měření teplot od -55 C do +125 C 26. května 2006 w w w. p a p o u c h. c o m 0188.00.00 Katalogový list Vytvořen: 30.5.2005 Poslední aktualizace: 26.5.2006 8:34 Počet
VíceStruktura programu v době běhu
Struktura programu v době běhu Miroslav Beneš Dušan Kolář Struktura programu v době běhu Vztah mezi zdrojovým programem a činností přeloženého programu reprezentace dat správa paměti aktivace podprogramů
VíceVÝUKOVÝ MATERIÁL. Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 Číslo projektu
VÝUKOVÝ MATERIÁL Identifikační údaje školy Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632
VícePrincipy operačních systémů. Lekce 7: Souborový systém
Principy operačních systémů Lekce 7: Souborový systém Souborový systém Souborový systém (anglicky file system) je označení pro způsob organizace dat ve formě souborů (a většinou i adresářů) tak, aby k
Více2 Základní funkce a operátory V této kapitole se seznámíme s použitím funkce printf, probereme základní operátory a uvedeme nejdůležitější funkce.
Vážení zákazníci, dovolujeme si Vás upozornit, že na tuto ukázku knihy se vztahují autorská práva, tzv copyright To znamená, že ukázka má sloužit výhradnì pro osobní potøebu potenciálního kupujícího (aby
VíceOperační systém UNIX
UNIX z pohledu uživatele 1 Operační systém UNIX Nejzákladnější komponenty:! jádro (kernel)! shell! utility Jádro operačního systému! v podstatě představuje vlastní operační systém! fyzicky je to jediný
VíceProgramování v Javě I. Únor 2009
Seminář Java Programování v Javě I Radek Kočí Fakulta informačních technologií VUT Únor 2009 Radek Kočí Seminář Java Programování v Javě (1) 1/ 44 Téma přednášky Datové typy Deklarace třídy Modifikátory
VíceSystémová volání Mgr. Josef Horálek
Systémová volání Mgr. Josef Horálek Systémová volání = Systémová volání = volání jádra = základní komunikace aplikačních programů s jádrem = Tvůrce programu obvykle oddělen vrstvou standardní knihovny
VíceObsah. Část I Začínáme s jazykem AppleScript
Obsah Úvod... 13 Je tato kniha pro vás?...13 Jaká témata kniha pokrývá?...13 Proč je text vytištěný tolika různými druhy písma a k čemu jsou všechny ty podivné značky?...15 Zpětná vazba od čtenářů...16
VíceObsah. Začínáme pracovat v InventorCAMu - frézování. 1995-2009 SolidCAM WWW.INVENTORCAM.CZ. All Rights Reserved.
Obsah Začínáme pracovat v InventorCAMu - frézování WWW.INVENTORCAM.CZ 1995-2009 SolidCAM All Rights Reserved. 1 2 2 Obsah Obsah 1. Přehled modulů InvnetorCAMu... 11 1.1 2.5D Frézování... 12 1.2 Obrábění
VíceMaturitní otázky z předmětu PROGRAMOVÁNÍ
Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu PROGRAMOVÁNÍ 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti
VíceIUJCE 07/08 Přednáška č. 1
Úvod do předmětu Literatura Záznamy přednášek a vaše poznámky Harbison, S. P., Steele, G. L.: Referenční příručka jazyka C Herout, P.: Učebnice jazyka C Kernighan, B. W., Ritchie, D. M.: The C Programming
VíceADT/ADS = abstraktní datové typy / struktury
DT = datové typy obor hodnot, které může proměnná nabývat, s operacemi na tomto oboru určen: obor hodnot + výpočetní operace např. INT = { 2 147 483 648 až +2 147 483 647} + {+,,*,/,} ADT/ADS = abstraktní
VíceSemestrální projekt. Předmět: Programování v jazyce C. Zadání: Operace s maticemi. Uživatelský manuál. ver. 1.0
Semestrální projekt Předmět: Programování v jazyce C Zadání: Operace s maticemi Uživatelský manuál ver. 1.0 Jakub Štrouf Obor: Aplikovaná informatika Semestr: 1. Rok: 2009/2010 Obsah: 1. Úvod 1.1. Technická
VíceManuál administrátora FMS...2
Manuál administrátora Manuál administrátora FMS...2 Úvod... 2 Schéma aplikace Form Management System... 2 Úvod do správy FMS... 3 Správa uživatelů... 3 Práva uživatelů a skupin... 3 Zástupci... 4 Avíza
VíceUživatelská příručka Evidence příchozí a odchozí pošty a elektronický archiv. V prostředí společnosti. Pražská vodohospodářská společnost a.s.
Uživatelská příručka Evidence příchozí a odchozí pošty a elektronický archiv V prostředí společnosti Pražská vodohospodářská společnost a.s. Obsah 1. ÚVOD... 5 2. PROSTŘEDÍ WORKSPACE... 5 2.1 TECHNOLOGIE
VíceUŽIVATELSKÁ PŘÍRUČKA PRO IZR NA PORTÁLU FARMÁŘE - HLÁŠENÍ POHYBŮ A OBJEDNÁVKY UZ
UŽIVATELSKÁ PŘÍRUČKA PRO IZR NA PORTÁLU FARMÁŘE - HLÁŠENÍ POHYBŮ A OBJEDNÁVKY UZ Autor: Aquasoft, spol. s r. o. Projekt: Integrovaný zemědělský registr Poslední aktualizace: 5.12.2014 Jméno souboru: IZR-PFHLAS_142205
VíceZáznamník teploty ZT, ZT1ext Návod k použití
ČERNÁ SKŘÍŇKA Záznamník teploty ZT, ZT1ext Návod k použití Návod na použití záznamníku teploty COMET ZT, ZT1ext Přístroj je určen pro měření a záznam teploty vzduchu, příp. teploty z externí sondy s odporovým
VíceDigitální paměťový osciloskop (DSO)
http://www.coptkm.cz/ Digitální paměťový osciloskop (DSO) Obr. 1 Blokové schéma DSO Konstrukce U digitálního paměťového osciloskopu je obrazovka čistě indikační zařízení. Vlastní měřicí přístroj je rychlý
VíceDalší aspekty architektur CISC a RISC Aktuálnost obsahu registru
Cíl přednášky: Vysvětlit principy práce s registry v architekturách RISC a CISC, upozornit na rozdíly. Vysvětlit možnosti využívání sad registrů. Zabývat se principy využívanými v procesorech Intel. Zabývat
VíceJak v Javě primitivní datové typy a jejich reprezentace. BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické
Jak v Javě primitivní datové typy a jejich reprezentace BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické Obsah Celočíselný datový typ Reálný datový typ Logický datový typ, typ Boolean
VíceJazyk C práce se soubory. Jan Hnilica Počítačové modelování 16
Jazyk C práce se soubory 1 Soubory Použití souborů pro vstup většího množství dat do programu (uživatel nezadává z klávesnice ručně tisíce údajů...) pro uložení většího množství výsledků, např. k pozdějšímu
VíceKlíčové pojmy: Cyklus, řídící proměnná, inicializace, test podmínky, přerušení cyklu, vnořování cyklů.
Příkazy cyklu v C# Kapitola vysvětluje použití tří typů cyklů for, while a -while a plňuje jejich použití řau příkladů programů v jazyku C#. V jazyku C by šlo pouze k záměně funkcí pro vstup a výstup.
Více8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek
8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek 1/41 Základní příkazy Všechny příkazy se píšou malými písmeny! Za většinou příkazů musí být středník (;)! 2/41 Základní příkazy
VíceZdroj: http://www.fit.vutbr.cz
Zdroj: http://www.fit.vutbr.cz Motivace Cílem této úlohy je zopakovat si nebo se naučit vytváření obecných řešení, která na rozdíl od ad hoc řešení umožňují zvládat složitější úlohy bez nadměrného úsilí,
VícePROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 10
UNIVERZITA TOMÁŠE BATI VE ZLÍNĚ FAKULTA APLIKOVANÉ INFORMATIKY PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 10 Využití zásobníku pro předání parametrů podprogramům a lokální proměnné Jan Dolinay Petr Dostálek Zlín
VíceMAPOVÉ OKNO GSWEB. Nápověda. Pohyb v mapovém okně Výběr v mapovém okně. Panel Ovládání Panel Vrstvy. Tisk Přehledová mapa Redlining Přihlásit jako
GSWEB Nápověda 1. Mapové okno Pohyb v mapovém okně Výběr v mapovém okně 2. Ovládací panel a panel vrstev Panel Ovládání Panel Vrstvy 3. GSWeb - roletové menu Tisk Přehledová mapa Redlining Přihlásit jako
VíceNPRG030 Programování I 3/2 Z --- NPRG031 Programování II --- 2/2 Z, Zk
NPRG030 Programování I 3/2 Z --- NPRG031 Programování II --- 2/2 Z, Zk Pavel Töpfer Katedra softwaru a výuky informatiky MFF UK MFF Malostranské nám., 4. patro, pracovna 404 pavel.topfer@mff.cuni.cz http://ksvi.mff.cuni.cz/~topfer
VíceOperační systémy. Cvičení 5: Volání jádra, procesy, vlákna.
Operační systémy Cvičení 5: Volání jádra, procesy, vlákna. 1 Obsah cvičení Systémová volání Knihovní funkce jazyka C Procesy informace o procesech vytváření, ukončování procesů, signály POSIX vlákna vytváření,
VíceBI-PA1 Programování a algoritmizace 1 Katedra teoretické informatiky
Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Vstup, výstup BI-PA1 Programování a algoritmizace 1 Katedra teoretické informatiky Miroslav Balík Fakulta informačních technologií České
VíceE.C.S. řada 900 - nová generace obrat o 360 ( Systém vyvinut ve Florencii v r.2009 )
E.C.S. řada 900 - nová generace obrat o 360 ( Systém vyvinut ve Florencii v r.2009 ) Filozofie vývoje nové řady E.C.S. CNC klade důraz především na vyspělou technologii a nadčasový vzhled. Vývoji nového
Více- jak udělat konstantu long int: L long velka = 78L;
Konstanty (konstatní hodnoty) Např.: - desítkové: 25, 45, 567, 45.678 - osmičkové: 045, 023, 03 vždy začínají 0 - šestnáctkové: 0x12, 0xF2, 0Xcd, 0xff, 0xFF - jak udělat konstantu long int: 245566553L
VíceLekce 25 IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ
Identifikační údaje školy Číslo projektu Název projektu Číslo a název šablony Autor Tematická oblast Číslo a název materiálu Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská
VíceTato tematika je zpracována v Záznamy přednášek: str. 214 235 + materiál: PrikladyZobrazeniCisel.pdf
Obsah 11. přednášky: Kódování dat - terminologie Rozdělení kódů Kódování čísel Kódování znaků Tato tematika je zpracována v Záznamy přednášek: str. 214 235 + materiál: PrikladyZobrazeniCisel.pdf Jak bude
VíceSemestrální práce z KIV/PC. Kolja Matuševský (A14B0310P)
Semestrální práce z KIV/PC Řešení kolizí frekvencí sítě vysílačů Kolja Matuševský (A14B0310P) mkolja@students.zcu.cz 10. ledna 2016 Obsah 1 Zadání 2 2 Analýza úlohy 3 2.1 Vytvoření grafu..........................
VíceMATLAB základy. Roman Stanec 27.9.2007 PEF MZLU
MATLAB základy Roman Stanec 27.9.2007 PEF MZLU Náplň cvičení Matlab představení a motivace Seznámení s prostředím Proměnné a výrazy Řídící struktury Funkce Základní úpravy matic Import dat z tabulkového
VíceMartin Flusser. Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague. December 7, 2016
ZPRO cvičení 8 Martin Flusser Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague December 7, 2016 Outline I 1 Outline 2 Dynamické alokování paměti 3 Dynamická alokace
VícePaměť počítače. alg2 1
Paměť počítače Výpočetní proces je posloupnost akcí nad daty uloženými v paměti počítače Data jsou v paměti reprezentována posloupnostmi bitů (bit = 0 nebo 1) Připomeňme: paměť je tvořena řadou 8-mi bitových
VíceProjektč.3dopředmětuIZP. Maticové operace
Projektč.3dopředmětuIZP Maticové operace 17. prosince 2006 Kamil Dudka, xdudka00@stud.fit.vutbr.cz Fakulta informačních technologií Vysoké Učení Technické v Brně Obsah 1 Úvod 1 2 Analýza problému 1 2.1
VíceDoňar B., Zaplatílek K.: MATLAB - tvorba uživatelských aplikací, BEN - technická literatura, Praha, (ISBN:
http://portal.zcu.cz > Portál ZČU > Courseware (sem lze i přímo: http://courseware.zcu.cz) > Předměty po fakultách > Fakulta elektrotechnická > Katedra teoretické elektrotechniky > PPEL Doňar B., Zaplatílek
VíceInstalace a konfigurace OpenAdmin tool na M$ a Linuxu
Instalace a konfigurace OpenAdmin tool na M$ a Linuxu Tento dokument se snaží postihnout postup instalace a konfigurace Open Admin tool pro IBM IDS verze 11.10, který byl prezentován na semináři CIDUG
Více1280x 720 (HD Resolution, AVI format)
Přenosná BRINNO HomeWatchCam (MAC100) využívá technologii ke snímání jakéhokoliv pohybu v detekční zóně a přeměňuje tisíce fotek do krátkého časosběrného videa. To ušetří spoustu práce s přehráváním těchto
VíceOperační systémy. Přednáška 8: Správa paměti II
Operační systémy Přednáška 8: Správa paměti II 1 Jednoduché stránkování Hlavní paměť rozdělená na malé úseky stejné velikosti (např. 4kB) nazývané rámce (frames). Program rozdělen na malé úseky stejné
VíceZÁKLADY PRÁCE S PROHLÍŽEČEM
ZÁKLADY PRÁCE S PROHLÍŽEČEM 1. Způsoby vyhledávání Hlavní vyhledávací funkce VaDeMecum tvoří tři základní prvky: a) Fulltextové vyhledávání b) Rozšířené vyhledávání c) Postupné procházení strukturou archivního
VíceMLE2 a MLE8. Datalogery událostí
MLE2 a MLE8 Datalogery událostí Zapisovač počtu pulsů a událostí Návod k obsluze modelů MLE2 MLE8 Doporučujeme vytisknout tento soubor, abyste jej mohli používat, když se budete učit zacházet se zapisovačem.
VíceSemestrální projekt z předmětu Testování uživatelského rozhraní. Testování bez uživatele. Testování SmartPhone HTC 7 Trophy
Semestrální projekt z předmětu Testování uživatelského rozhraní Testování bez uživatele Testování SmartPhone HTC 7 Trophy Aleš Fišer 2010/2011 Úvod Ve svém semestrálním projektu budu provádět test bez
VíceZáklady programování (IZP)
Základy programování (IZP) Druhé počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Petr Veigend, iveigend@fit.vutbr.cz Verze
VíceZPRACOVÁNÍ NEURČITÝCH ÚDAJŮ V DATABÁZÍCH
0. Obsah Strana 1 z 12 VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA STROJNÍHO INŽENÝRSTVÍ ÚSTAV AUTOMATIZACE A INFORMATIKY FACULTY OF MECHANICAL ENGINEERING INSTITUTE OF AUTOMATION
VíceProvozní dokumentace. Seznam orgánů veřejné moci. Příručka pro administrátora krizového řízení
Provozní dokumentace Seznam orgánů veřejné moci Příručka pro administrátora krizového řízení Vytvořeno dne: 15. 6. 2011 Aktualizováno: 22. 10. 2014 Verze: 2.2 2014 MVČR Obsah Příručka pro administrátora
VíceGRAFICKÁ PROSTŘEDÍ GNU/LINUXU
GRAFICKÁ PROSTŘEDÍ GNU/LINUXU Název školy Obchodní akademie, Vyšší odborná škola a Jazyková škola s právem státní jazykové zkoušky Uherské Hradiště Název DUMu Grafická prostředí GNU/Linuxu Autor Martin
VíceOperační systémy 2. Přednáška číslo 2. Přidělování paměti
Operační systémy 2 Přednáška číslo 2 Přidělování paměti Základní pojmy Paměť = operační paměť paměť, kterou přímo využívají procesory při zpracování instrukcí a dat Funkce modulu přidělování paměti: Sledování
VíceZáklady programování (IZP)
Základy programování (IZP) Čtvrté počítačové cvičení Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole Petr Veigend, iveigend@fit.vutbr.cz 4.
VícePrůvodce snadnou obsluhou
Průvodce snadnou obsluhou Základní OBSAH Předmluva Rozdělení příruček... Co všechno tento stroj dokáže... Ovládací panel... Kopírovací Kopírování...7 Co všechno tento stroj dokáže (Obrazovka základních
VíceGREEN BUTTON SOFTWARE
UŽIVATELSKÁ PŘÍRUČKA SOFTWARE PRO EXTERNÍ PEVNÉ DISKY FREECOM Rev. 030 Pozor! Všechny práva vyhrazena. V rámci této uživatelské příručky uvedené označování výrobků slouží jenom pro identifikační účely
Více10 Algoritmizace Příklad 2 Word 2007/ VBA
TÉMA: Zápis algoritmu, cyklus se známým počtem opakování Prostředí aplikace Wordu je možné doplnit v rámci využití maker o automatizaci složitějších posloupností příkazů. Vedle záznamu makra je možno makra
VíceVývoj, výroba, prodej a montáž docházkových a identifikačních systémů
BM Software, Němčičky 84, 69107 Němčičky u Břeclavi Vývoj, výroba, prodej a montáž docházkových a identifikačních systémů Tel: 519430765, Mobil: 608447546, e-mail: bmsoft@seznam.cz, web: http://www.dochazka.eu
VíceALFIS 2014 komplexní ekonomický systém verze 2014.5
ALFIS 2014 komplexní ekonomický systém verze 2014.5 Návod na instalaci Fuksa Ladislav Sedlčanská 1327/65 140 00 Praha 4 Tel. 223 010 785, 603 463 137 E-mail alfis@fksoft.cz Web www.alfis.cz, www.fksoft.cz
Více1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:
1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.
Vícesssssssssssssssssssssssssssssssssssssssssssssssssss UŽIVATELSKÁ PŘÍRUČKA ELEKTRONICKÁ PODATELNA - WEBOVÁ ČÁST APLIKACE Verze distribuce: 1.1.29.
řízený dokument sssssssssssssssssssssssssssssssssssssssssssssssssss UŽIVATELSKÁ PŘÍRUČKA VERZE: 4 ELEKTRONICKÁ PODATELNA - WEBOVÁ ČÁST APLIKACE Verze distribuce: 1.1.29.1 Počet stran: 41 Správa dokumentu
VíceMIDAM Verze 1.1. Hlavní okno :
MIDAM Verze 1.1 Podporuje moduly Midam 100, Midam 200, Midam 300, Midam 400, Midam 401, Midam 410, Midam 411, Midam 500, Midam 600, Ghc 2x. Umožňuje nastavení parametrů, sledování výstupních nebo vstupních
VíceAVG_ANTIVIR. Semestrální projekt předmětu Návrh uživatelských rozhraní Julie Partyková, partyjul@fel.cvut.cz Ondřej Mirtes, mirteond@fel.cvut.
AVG_ANTIVIR Semestrální projekt předmětu Návrh uživatelských rozhraní Julie Partyková, partyjul@fel.cvut.cz Ondřej Mirtes, mirteond@fel.cvut.cz Zadání Tento projekt se zabývá zpřístupněním uživatelského
VíceBI-PA1 Programování a algoritmizace 1, ZS Katedra teoretické informatiky
Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Vstup, výstup BI-PA1
VíceJazyk C++, některá rozšíření oproti C
Karel Müller, Josef Vogel (ČVUT FIT) Jazyk C++, některá rozšíření oproti C BI-PA2, 2011, Přednáška 1 1/22 Jazyk C++, některá rozšíření oproti C Ing. Josef Vogel, CSc Katedra softwarového inženýrství Katedra
VíceNÁKUPNÍ SOFTWARE. uživatelská příručka pro dodavatele
Mlaty 8 642 00 Brno tel.: +420 777 575 545 NÁKUPNÍ SOFTWARE uživatelská příručka pro dodavatele určeno pro verzi Nákupní software 3.12 Nákupní software - příručka pro dodavatele Nákupní software () je
VíceZáznamník teploty a relativní vlhkosti Návod k použití
LOGGER R3120 Záznamník teploty a relativní vlhkosti Návod k použití Návod na použití záznamníku teploty a relativní vlhkosti R3120 Přístroj je určen pro měření a záznam okolní teploty a relativní vlhkosti
VíceIng. Igor Kopetschke TUL, NTI
ALGORITMY A DATOVÉ STRUKTURY 1. Organizace dat v paměti, datové typy Ing. Igor Kopetschke TUL, NTI http://www.nti.tul.cz Jednotlivé body Ukládání a a organizace dat Vnitřní paměť Vnější paměť Přístup k
Víceeliška 3.04 Průvodce instalací (verze pro Windows 7) w w w. n e s s. c o m
eliška 3.04 Průvodce instalací (verze pro Windows 7) Příprava Při instalaci elišky doporučujeme nemít spuštěné žádné další programy. Pro instalaci elišky je třeba mít administrátorská práva na daném počítači.
VícePowerSwitch ver. 1.6
uživatelská příručka PowerSwitch ver. 1.6 Program PowerSwitch je určen pro ovládání elektrických stykačů. Ovládání programu je rozděleno do dvou módů uživatelského [kap.2.] a administrátorského [kap.3.].
VíceProgram Montážky manuál uživatele
Program Montážky manuál uživatele -1- v 1.0 Obsah 1. Úvod... 3 2. Technické informace... 3 2.1. Systémové požadavky... 3 2.2. Instalace programu... 3 2.3. Zkušební verze programu... 3 2.4. Přechod na plnou
VíceFormátové specifikace formátovací řetězce
27.2.2007 Formátové specifikace formátovací řetězce - je to posloupnost podle které překladač pozná jaký formát má výstup mít - posloupnosti začínají znakem % a určující formát vstupu/výstupu - pokud chcete
VíceKTE / PPEL Počítačová podpora v elektrotechnice
24. 9. 2014 KTE / PPEL Počítačová podpora v elektrotechnice Ing. Lenka Šroubová, Ph.D. email: lsroubov@kte.zcu.cz ICQ: 361057825 http://home.zcu.cz/~lsroubov tel.: +420 377 634 623 Místnost: EK602 Katedra
Více