PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 10

Rozměr: px
Začít zobrazení ze stránky:

Download "PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 10"

Transkript

1 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 2013 Tento studijní materiál vznikl za finanční podpory Evropského sociálního fondu (ESF) a rozpočtu České republiky v rámci řešení projektu: MODERNIZACE VÝUKOVÝCH MATERIÁLŮ A DIDAKTICKÝCH METOD

2 2 Cvičení 10 Využití zásobníku pro předání parametrů podprogramům a lokální proměnné STRUČNÝ OBSAH CVIČENÍ: Ukázkový program s podprogramem na vyplnění pole Vysvětlení ukázkového programu Úkoly k procvičení VSTUPNÍ ZNALOSTI: Toto cvičení předpokládá znalosti o využití zásobníku získané na přednáškách a znalosti programování mikropočítače HCS08 z předchozích cvičení. CÍL: Na tomto cvičení si ukážeme, jak lze využít zásobník pro předávání parametrů do podprogramů a pro vytvoření lokálních proměnných v podprogramech. Tyto znalosti nám umožní efektivnější tvorbu programů a také lepší porozumění kódu generovaného překladačem jazyka C. Cvičení se vztahuje k těmto otázkám Funkce a ovládání zásobníkové paměti, instrukce pro práci se zásobníkem u mikropočítače HC08

3 3 Řešené příklady Příklad 1 Podprogram pro vyplnění pole konstantou Úkol: Napište podprogram, který vyplní předané pole libovolným číslem v rozsahu 0 až 255. Vstupními parametry podprogramu budou v registrech H:X adresa začátku pole, v registru A počet prvků pole a na zásobníku číslo, kterým se má pole vyplnit jako jednobajtový parametr. Napište také program, který tento podprogram využije a naplní pole o 5-ti prvcích konstantou 3. Řešení Podprogram bude pracovat s polem pomocí indexového adresování. Tento princip byl vysvětlen v kapitole 2, na příkladu nulování pole. Byla zde zmíněna i varianta předání adresy do podprogramu v registru H:X. Náš podprogram bude pro počitadlo průchodů cyklem (počtu již zpracovaných prvků) a pro uložení předaného počtu prvků pole používat lokální proměnné na zásobníku. Bude také přistupovat k parametru předanému na zásobníku, což je konstanta, kterou se má pole vyplnit. Hlavní program pouze připraví parametry na zásobník a do registrů a zavolá podprogram. Zdrojový kód podprogramu a hlavního programu je na následujících výpisech. Vysvětlení programu Podívejme se nejprve na hlavní program. Instrukcemi LDHX a TXS se nastaví ukazatel zásobníku na adresu $98. Vlastně tím umísťujeme zásobník na námi požqadované místo. Toto obvykle provádí CodeWarrior při vytváření nového projektu a nastavuje zásobník na pozici definovanou nastavením projektu. Většinou konkrétní adresa umístění zásobníku pro nás není podstatná a můžeme jej ponechat na výchozí hodnotě určené vývojovým prostředím. V tomto případě jsme ale zásobník přemístili na adresu $98 a to z čistě studijních důvodů takto bude obsah zásobníku při krokování programu snadno vidět spolu s proměnnými v okně Memory simulátoru, aniž bychom v tomto okně museli skrolovat. Dále už pokračuje kód programu, který řeší zadání. Hlavní program má za úkol připravit vstupní parametry pro podrpogram Podp a pak jej zavolat. Nejprve na zásobník vkládáme

4 4 parametr určující, jakým číslem má podprogram vylnit pole. Zde to má být číslo 3, proto se na zásobník ukládá číslo 3. Provede se to přes registr A, tj. nejprve nahrajeme číslo 3 jako přímý operand do registru A a potom registr A vložíme na zásobník instrukcí PSHA. Dalším parametrem podprogramu je adresa pole. Na výpisu to není uvedeno, ale jistě dokážete sami definovat pole s názvem Pole, obsahující pět jednobajtových prvků. Adresu tohoto pole pak nahrajeme do registru H:X (LDHX #Pole). Do registru A poté nahrajeme počet prvků pole, což je 5 (LDA #5). Tím máme všechny vstupní parametry pro podprogram připraveny a můžeme jej zavolat instrukcí JSR Podp. Po volání podprogramu následuje instrukce PULA, která ze zásobníku odstraňuje parametr, který jsme tam před chvíli vložili (číslo 3). Toto je nutné aby se zásobník vrátil do původního stavu, tak jak byl předtím, než jsme začali připravovat parametry pro volání podprogramu Podp.* mainloop: ; Insert your code here NOP LDHX #$98 TXS ; Aby byl videt zasobnik v simulatoru LDA #3 ; param. Na zasobniku = vyplnim trojkami PSHA LDHX #Pole ; adresa pole LDA #5 ; pocet prvku pole JSR Podp ; volam podprogram s parametry 5 a 3: Podp(3,5); PULA ; odstraneni parametru ze zasobniku Obr. 1 Kód hlavní programu dle zadání Nyní, když už máme napsán kód, který podprogram Podp využívá, podívejme se dovnitř samotného podprogramu, viz následující výpis. Podprogram využívá 2 lokální proměnné, jednu pro počitadlo cyklu a druhou pro počet prvků pole. Vzpomeňte si, že podprogram dostává počet prvků pole v registru A. Tento údaj potřebuje po celou dobu opakování cyklu, aby s ním mohl porovnávat počet již zpracovaných prvků pole a věděl, kdy cyklus ukončit. Nemůže jej ovšem ponechat v registru A, protože ten bude využíván uvnitř cyklu. Elegantním řešením je tedy uložení počtu prvků pole do lokální proměnné. Vytvoření lokálních proměnných (jejich alokace) je vlastně operace rezervování (zabrání) místa na zásobníku. To lze provést např. instrukcí PSHA (uložení A na zásobník). Tím vložíme na zásobník nějakou hodnotu, která nemusí být podstatná pokud nechceme lokální proměnno zároveň inicializovat. Hlavně ale způsobíme posun ukazatele zásobníku, tj. na zásobníku vznikne prostor 1 bajtu, alokuje se lokální proměnná.

5 5 Náš podprogram provádí alokaci právě tímto způsobem, instrukcí PSHA. Navíc chytře využíváme faktu, že registr A obsahuje při vstupu do podprogramu počet prvků pole (vstupní argument z volajícího programu). A počet prvků pole chceme uložit do jedné z lokálních proměnných podprogramu. První instrukcí PSHA se tak nejen rezervuje místo pro lokální proměnnou uchovávající v podprogramu počet prvků pole, ale zároveň se tento počet do ní i uloží. Druhá lokální proměnná je počitadlo průchodů cyklem. Počitadlo musí mít na začátku nulovou hodnotu, proto před alokací a inicializací této proměnné nulujeme registr A instrukcí CLRA a potom ukládáme tuto nulu na zásobník. ; Podprogram pro naplneni pole konstantou ; H:X - adresa pole; A - pocet prvku pole; Zasobnik: konstanta kterou vyplnit Podp: ; alokace lokalnich promennych PSHA ; lokalni promenna 1 = pocet prvku pole CLRA ; nuluj budouci pocitadlo PSHA ; lokalni promenna 2 = pocitadlo cyklu opak: LDA 5, SP ; parametr podprogramu = konstanta kterou vyplnit pole STA,X ; se ulozi do aktualniho prvku pole AIX #1 INC 1,SP ; inkrementuj pocitadlo LDA 1,SP ; pocitadlo do A CMP 2,SP ; porovnej pocitadlo s poctem prvku pole BLO opak PULA ; uvolneni zasobniku PULA RTS Obr. 2 Kód podprogramu pro vyplnění pole konstantou dle zadání Kód za návěštím opak se opakuje tolikrát, kolik je prvků pole. To je zajištěno pomocí podmíněného skoku BLO (skoč jestliže je menší), který se provede po porovnání počitadla a celkového počtu prvků pole. Jak počitadlo tak i počet prvků jsou lokální proměnné a jak je vidět na výpisu, nejprve nahrajeme počitadlo do registru A (LDA 1,SP) a potom porovnáme registr A s počtem prvků (CMP 2,SP). Jestliže je počitadlo menší než počet prvků, provede se skok na návěští opak a zpracuje se pak další prvek pole. Jak se nastavuje zadané číslo do jednotlivých prvků pole uvnitř cyklu? Do registru A se nahraje konstanta, kterou se má pole vyplnit (LDA 5,SP) a následující instrukcí se z registru A uloží do aktuálního prvku pole (STA,X) viz indexové adresování při práci s polem. Jak jsme věděli, že u instrukce LDA 5,SP má být před SP právě číslo 5? Do každého prvku pole máme uložit konstantu předanou do našeho podprogramu jako parametr z volajícího programu. Konstanta se předává na zásobníku (viz zadání úkolu). Vzhledem k tomu, že na zásobník je nejprve uložena právě tato konstanta (parametr našeho

6 6 podprogramu), pak návratová adresa (uložená automaticky při volání podprogramu) a pak ještě 2 lokální proměnné, nachází se konstanta na offsetu 5 od ukazatele zásobníku SP. Pro lepší představu o umístění lokálních proměnných a vstupního parametru na zásobníku se podívejte na následující obrázek. Obr. 3 Stav zásobníku v podprogramu Podp po alokaci lokálních proměnných Pomocí takového obrázku snadno zjistíme, jak přistupovat ke kterékoliv proměnné nebo argumentu na zásobníku (jaké číslo použít před SP v instrukcích jako LDA??,SP nebo STA??,SP apod..). Jestliže např. potřebujeme nahrát do registru A počitadlo cyklů (lokální proměnnou), podle obrázku vidíme, že tato proměnná je na adrese SP + 1 a tedy v instrukci LDA bude: LDA 1,SP. Při psaní vlastních programů si můžete podobný obrázek nakreslit. I u poměrně jednoduchého kódu se vám čas strávený jeho kreslením bohatě vrátí při psaní programu i hledání chyb. Na konci podprogramu se pomocí instrukcí PULA odstraní lokální proměnné ze zásobníku. Instrukcí RTS se pak vracíme do volajícího programu. Vraťte se i vy k výpisu kódu hlavního programu výše a všimněte si, že za instrukcí JSR Podp, která volá náš podprogram je také instrukce PULA. Tato uvolňuje ze zásobníku argument, který hlavní program předával podprogramu konstantu, kterou má podprogram vyplnit pole. Poznámka: Principiálně může vstupní parametry ze zásobníku odstranit buď volající (tj. hlavní program), tak jak to děláme v našem příkladě, nebo může odstranění parametrů provést samotný podprogram. Tato dohoda o tom, kdo odstraní vstupní parametry ze zásobníku, spolu s

7 7 dalšími dohodami se označuje jako volací konvence (rozumějte dohoda pro volání podprogramů). Testování programu Tento program je zbytečné nahrávat do mikropočítače, pro jeho otestování nám bohatě postačí simulátor. Pokud jste při vytváření projektu v CodeWarrior zvolili typ připojení Monitor, změňte je nyní na Simulation výběrem v rozbalovacím seznamu v levé části okna CodeWarrior. Po překladu a odstranění případných chyb spusťte program v simulátoru obvyklým způsobem. Sledujte v okně Memory obsah paměti vyhrazené pro zásobník. Adresu aktuálního vrcholu zásobníku vždy najdete v registru SP v okně Registers. Po spuštění programu by to mělo být $98. Pak po vložení parametru (číslo 3) by se měl obsah SP snížit na $97 a na adrese $98 v okně Memory byste měli vidět vloženo číslo 3. Použijte příkaz Step Into pro krokování dovnitř podprogramu. Po provedení instrukce JSR uvidíte, že SP bude obsahovat hodnotu $95 (vložili se 2 bajty návratové adresy). Tyto dvě hodnoty vložené v zásobníku nejsou pro nás teď podstatné, bude se jednat o 16-ti bitovou adresu instrukce následující za instrukcí JSR Podp. Po alokaci lokálních proměnných by měla být v SP hodnota $93 a měli byste vidět, že bajt paměti nejblíže SP (adresa $94) bude na začátku podprogramu vynulován (jedná se o počitadlo cyklu). Bajt na adrese $95 bude obsahovat číslo 5, což je počet prvků pole (předaný do podprogramu v registru A, ale podprogram si jej uložil do lokální proměnné na zásobníku). Krokujte cyklus plnění pole a sledujte, jak se v počitadle cyklů na zásobníku inkrementuje počet průchodů cyklem. Příklady k procvičení 1. Vytvořte podprogram, který spočítá lichá čísla v předaném poli. Adresa pole se předá na zásobníku, počet prvků pole se předá v registru A. Podprogram vrátí v registru A zjištěný počet lichých čísel. Napište program, který pomocí zadaného podprogramu určí počet lichých čísel v poli data s pěti prvky. Pole můžete inicializovat na libovolné hodnoty.

8 8 2. Vytvořte knihovnu podprogramů pro základní matematické operace: sčítání, odčítání, násobení a dělení. Napište pak program, který bude knihovnu využívat pro výpočet výrazu: vysledek = ((c1 + c2) * c3) / (c3-c1). Podprogramy budou mít následující názvy: soucet, rozdil, nasobeni, deleni, modulo. Vstupní hodnoty budou mít vždy velikost 8 bitů a budou se předávat na zásobníku ve vámi zvoleném pořadí. Výsledek (návratová hodnota) se bude u všech podprogramů předávat v registru A. Knihovna nesmí používat žádné globální proměnné. V případě potřeby použijte lokální proměnné na zásobníku. Podprogramy nesmí změnit hodnoty registrů s výjimkou A, který je použit pro vrácení výsledku. Knihovnu umístěte do samostatného souboru s názvem math.asm a vytvořte k ní hlavičkový soubor math.inc. Doplňující zdroje [1] Freescale: Firemní dokumentace pro mikropočítače HCS08, dostupné online: EDD5

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 3

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 3 UNIVERZITA TOMÁŠE BATI VE ZLÍNĚ FAKULTA APLIKOVANÉ INFORMATIKY PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 3 Podprogramy a práce se zásobníkem Jan Dolinay Petr Dostálek Zlín 2013 Tento studijní materiál vznikl

Více

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 2

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 2 UNIVERZITA TOMÁŠE BATI VE ZLÍNĚ FAKULTA APLIKOVANÉ INFORMATIKY PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 2 Větvení programu, pole a cyklus v jazyce symbolických adres Jan Dolinay Petr Dostálek Zlín 2013 Tento

Více

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 8

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 8 UNIVERZITA TOMÁŠE BATI VE ZLÍNĚ FAKULTA APLIKOVANÉ INFORMATIKY PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 8 Využití sériové komunikace Jan Dolinay Petr Dostálek Zlín 2013 Tento studijní materiál vznikl za finanční

Více

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 7

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 7 UNIVERZITA TOMÁŠE BATI VE ZLÍNĚ FAKULTA APLIKOVANÉ INFORMATIKY PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 7 Využití knihoven podprogramů, displej Jan Dolinay Petr Dostálek Zlín 2013 Tento studijní materiál vznikl

Více

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 6

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 6 UNIVERZITA TOMÁŠE BATI VE ZLÍNĚ FAKULTA APLIKOVANÉ INFORMATIKY PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 6 Práce s analogově digitálním převodníkem Jan Dolinay Petr Dostálek Zlín 2013 Tento studijní materiál

Více

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 11

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 11 UNIVERZITA TOMÁŠE BATI VE ZLÍNĚ FAKULTA APLIKOVANÉ INFORMATIKY PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 11 Programování mikropočítačů v jazyce C Jan Dolinay Petr Dostálek Zlín 2013 Tento studijní materiál vznikl

Více

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 5

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 5 UNIVERZITA TOMÁŠE BATI VE ZLÍNĚ FAKULTA APLIKOVANÉ INFORMATIKY PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 5 Práce s přerušením, zpracování stisku tlačítka Jan Dolinay Petr Dostálek Zlín 2013 Tento studijní materiál

Více

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 1

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 1 UNIVERZITA TOMÁŠE BATI VE ZLÍNĚ FAKULTA APLIKOVANÉ INFORMATIKY PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 1 První program v jazyce symbolických adres Jan Dolinay Petr Dostálek Zlín 2013 Tento studijní materiál

Více

8. Laboratoř: Aritmetika a řídicí struktury programu

8. Laboratoř: Aritmetika a řídicí struktury programu 8. Laboratoř: Aritmetika a řídicí struktury programu Programy v JSA aritmetika, posuvy, využití příznaků Navrhněte a simulujte v AVR studiu prográmky pro 24 bitovou (32 bitovou) aritmetiku: sčítání, odčítání,

Více

ISU Cvičení 7. Marta Čudová

ISU Cvičení 7. Marta Čudová ISU Cvičení 7 Marta Čudová Supercomputing Technologies Research Group Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole icudova@fit.vutbr.cz Osnova

Více

Adresní mody procesoru

Adresní mody procesoru Adresní mody procesoru K.D. - přednášky 1 Obecně o adresování Různé typy procesorů mohou mít v instrukci 1, 2 nebo více adres. Operandy mohou ležet v registrech nebo v paměti. Adresní mechanismus procesoru

Více

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

Více

LED_007.c Strana: 1/5 C:\Michal\AVR\Výukové programy\archiv\ Poslední změna: 4.10.2011 8:01:48

LED_007.c Strana: 1/5 C:\Michal\AVR\Výukové programy\archiv\ Poslední změna: 4.10.2011 8:01:48 LED_007.c Strana: 1/5 Nyní již umíme používat příkazy k větvení programu (podmínky) "if" a "switch". Umíme také rozložit program na jednoduché funkce a používat cyklus "for". Co se týče cyklů, zbývá nám

Více

Operač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 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íce

Strojový kód. Instrukce počítače

Strojový kód. Instrukce počítače Strojový kód Strojový kód (Machine code) je program vyjádřený v počítači jako posloupnost instrukcí procesoru (posloupnost bajtů, resp. bitů). Z hlediska uživatele je strojový kód nesrozumitelný, z hlediska

Více

1. Programování PLC. Programovatelné automaty II - 1 -

1. Programování PLC. Programovatelné automaty II - 1 - Programovatelné automaty II - 1-1. Programování PLC Centrální jednotka Poskytuje programovatelnému automatu inteligenci. Realizuje soubor instrukcí a systémových služeb, zajišťuje i základní komunikační

Více

Vysoká škola chemicko-technologická v Praze Fakulta chemicko-inženýrská Ústav počítačové a řídicí techniky. Aplikace mikroprocesorů.

Vysoká škola chemicko-technologická v Praze Fakulta chemicko-inženýrská Ústav počítačové a řídicí techniky. Aplikace mikroprocesorů. Vysoká škola chemicko-technologická v Praze Fakulta chemicko-inženýrská Ústav počítačové a řídicí techniky Aplikace mikroprocesorů Deska Evb IO Návod k použití Lukáš Lahoda 2010 Obsah 1 DESKA EVB IO...

Více

V 70. letech výzkumy četnosti výskytu instrukcí ukázaly, že programátoři a

V 70. letech výzkumy četnosti výskytu instrukcí ukázaly, že programátoři a 1 Počítače CISC a RISC V dnešní době se ustálilo dělení počítačů do dvou základních kategorií podle typu použitého procesoru: CISC - počítač se složitým souborem instrukcí (Complex Instruction Set Computer)

Více

Kolekce ArrayList. Deklarace proměnných. Import. Vytvoření prázdné kolekce. napsal Pajclín

Kolekce ArrayList. Deklarace proměnných. Import. Vytvoření prázdné kolekce. napsal Pajclín Kolekce ArrayList napsal Pajclín Tento článek jsem se rozhodl věnovat kolekci ArrayList, protože je to jedna z nejpoužívanějších. Tento článek není kompletním popisem třídy ArrayList, ale budu se snažit

Více

Assembler - 5.část. poslední změna této stránky: Zpět

Assembler - 5.část. poslední změna této stránky: Zpět 1 z 5 19.2.2007 7:52 Assembler - 5.část poslední změna této stránky: 9.2.2007 1. Pseudoinstrukce a direktivy Zpět Kromě instrukcí můžete v Assembleru psát také další konstrukce, které se obšem nepřekládají

Více

Kubatova 19.4.2007 Y36SAP - 13. procesor - control unit obvodový a mikroprogramový řadič RISC. 19.4.2007 Y36SAP-control unit 1

Kubatova 19.4.2007 Y36SAP - 13. procesor - control unit obvodový a mikroprogramový řadič RISC. 19.4.2007 Y36SAP-control unit 1 Y36SAP - 13 procesor - control unit obvodový a mikroprogramový řadič RISC 19.4.2007 Y36SAP-control unit 1 Von Neumannova architektura (UPS1) Instrukce a data jsou uloženy v téže paměti. Paměť je organizována

Více

Klíčové pojmy: Cyklus, řídící proměnná, inicializace, test podmínky, přerušení cyklu, vnořování cyklů.

Klíč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íce

for (i = 0, j = 5; i < 10; i++) { // tělo cyklu }

for (i = 0, j = 5; i < 10; i++) { // tělo cyklu } 5. Operátor čárka, - slouží k jistému určení pořadí vykonání dvou příkazů - oddělím-li čárkou dva příkazy, je jisté, že ten první bude vykonán dříve než příkaz druhý. Např.: i = 5; j = 8; - po překladu

Více

Jako pomůcka jsou v pravém dolním rohu vypsány binární kódy čísel od 0 do 15 a binární kódy příkazů, které máme dispozici (obr.21). Obr.

Jako pomůcka jsou v pravém dolním rohu vypsány binární kódy čísel od 0 do 15 a binární kódy příkazů, které máme dispozici (obr.21). Obr. Model procesoru Jedná se o blokové schéma složené z registrů, paměti RAM, programového čítače, instrukčního registru, sčítačky a řídicí jednotky, které jsou propojeny sběrnicemi. Tento model má dva stavy:

Více

Strojový kód k d a asembler procesoru MIPS SPIM. MIPS - prostředí NMS NMS. 32 ks 32bitových registrů ( adresa registru = 5 bitů).

Strojový kód k d a asembler procesoru MIPS SPIM. MIPS - prostředí NMS NMS. 32 ks 32bitových registrů ( adresa registru = 5 bitů). Strojový kód k d a asembler procesoru MIPS Použit ití simulátoru SPIM K.D. - cvičení ÚPA 1 MIPS - prostředí 32 ks 32bitových registrů ( adresa registru = 5 bitů). Registr $0 je zero čte se jako 0x0, zápis

Více

Seznámení s mikropočítačem. Architektura mikropočítače. Instrukce. Paměť. Čítače. Porovnání s AT89C2051

Seznámení s mikropočítačem. Architektura mikropočítače. Instrukce. Paměť. Čítače. Porovnání s AT89C2051 051 Seznámení s mikropočítačem Architektura mikropočítače Instrukce Paměť Čítače Porovnání s AT89C2051 Seznámení s mikropočítačem řady 8051 Mikroprocesor řady 8051 pochází z roku 1980 a je vytvořené firmou

Více

Assembler RISC RISC MIPS. T.Mainzer, kiv.zcu.cz

Assembler RISC RISC MIPS. T.Mainzer, kiv.zcu.cz Assembler RISC T.Mainzer, kiv.zcu.cz RISC RISC, neboli Reduced Instruction Set Computer - koncepce procesorů s redukovaným souborem instrukcí (vs. CISC, neboli Complex Instruction Set Computer, "bohatý"

Více

Pokročilé programování v jazyce C pro chemiky (C3220) Třídy v C++

Pokročilé programování v jazyce C pro chemiky (C3220) Třídy v C++ Pokročilé programování v jazyce C pro chemiky (C3220) Třídy v C++ Třídy v C++ Třídy jsou uživatelsky definované typy podobné strukturám v C, kromě datových položek (proměnných) však mohou obsahovat i funkce

Více

Paměti a jejich organizace

Paměti a jejich organizace Kapitola 5 Paměti a jejich organizace 5.1 Vnitřní a vnější paměti, vlastnosti jednotlivých typů Vnější paměti Jsou umístěny mimo základní jednotku. Lze je zařadit mezi periferní zařízení. Zápis a čtení

Více

Šifrování/Dešifrování s použitím hesla

Šifrování/Dešifrování s použitím hesla 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

Více

Teoretické minimum z PJV

Teoretické minimum z PJV Teoretické minimum z PJV Pozn.: následující text popisuje vlastnosti jazyka Java zjednodušeně pouze pro potřeby výuky. Třída Zavádí se v programu deklarací třídy což je část programu od klíčových slov

Více

přetížení operátorů (o)

přetížení operátorů (o) přetížení operátorů (o) - pro vlastní typy je možné přetížit i operátory (tj. definovat vlastní) - pro definici slouží klíčové slovo operator následované typem/znakem operátoru - operátor je speciální

Více

Jazyk C# a platforma.net

Jazyk C# a platforma.net Jazyk C# a platforma.net Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Pavel Štěpán, 2011 Syntaxe jazyka C# - 1. část BI-DNP Evropský sociální fond

Více

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague Assembler pro Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague Zápis instrukcí umíme už zapisovat instrukce v binárním tvaru to je silně nešikovné pro snazší vývoj

Více

Architektury CISC a RISC, uplatnění v personálních počítačích

Architektury CISC a RISC, uplatnění v personálních počítačích Architektury CISC a RISC, uplatnění v personálních počítačích 1 Cíl přednášky Vysvětlit, jak pracují architektury CISC a RISC, upozornit na rozdíly. Zdůraznit, jak se typické rysy obou typů architektur

Více

Další aspekty architektur CISC a RISC Aktuálnost obsahu registru

Další 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íce

Semestrá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 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íce

Obsah. 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í. 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íce

Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody

Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody Pokročilé programování v jazyce C pro chemiky (C3220) Operátory new a delete, virtuální metody Dynamická alokace paměti Jazyky C a C++ poskytují programu možnost vyžádat si část volné operační paměti pro

Více

Návod na práci s přípravkem a programy uscope a FLIP na cvičeních

Návod na práci s přípravkem a programy uscope a FLIP na cvičeních Návod na práci s přípravkem a programy uscope a FLIP na cvičeních Ing. Tomáš Martinec Ph.D. TECHNICKÁ UNIVERZITA V LIBERCI Fakulta mechatroniky, informatiky a mezioborových studií Tento materiál vznikl

Více

Správné vytvoření a otevření textového souboru pro čtení a zápis představuje

Správné vytvoření a otevření textového souboru pro čtení a zápis představuje f1(&pole[4]); funkci f1 předáváme hodnotu 4. prvku adresu 4. prvku adresu 5. prvku hodnotu 5. prvku symbolická konstanta pro konec souboru je eof EOF FEOF feof Správné vytvoření a otevření textového souboru

Více

4-1 4. Přednáška. Strojový kód a data. 4. Přednáška ISA. 2004-2007 J. Buček, R. Lórencz

4-1 4. Přednáška. Strojový kód a data. 4. Přednáška ISA. 2004-2007 J. Buček, R. Lórencz 4-4. Přednáška 4. Přednáška ISA J. Buček, R. Lórencz 24-27 J. Buček, R. Lórencz 4-2 4. Přednáška Obsah přednášky Násobení a dělení v počítači Základní cyklus počítače Charakteristika třech základní typů

Více

Operační systémy. Jednoduché stránkování. Virtuální paměť. Příklad: jednoduché stránkování. Virtuální paměť se stránkování. Memory Management Unit

Operační systémy. Jednoduché stránkování. Virtuální paměť. Příklad: jednoduché stránkování. Virtuální paměť se stránkování. Memory Management Unit Jednoduché stránkování Operační systémy Přednáška 8: Správa paměti II Hlavní paměť rozdělená na malé úseky stejné velikosti (např. 4kB) nazývané rámce (frames). Program rozdělen na malé úseky stejné velikosti

Více

Ovladač Fiery Driver pro systém Mac OS

Ovladač Fiery Driver pro systém Mac OS 2016 Electronics For Imaging, Inc. Informace obsažené v této publikaci jsou zahrnuty v Právní oznámení pro tento produkt. 30. května 2016 Obsah Ovladač Fiery Driver pro systém Mac OS Obsah 3...5 Fiery

Více

Modul řízení otáček stejnosměrného motorku

Modul řízení otáček stejnosměrného motorku Modul řízení otáček stejnosměrného motorku Výukový modul pro předmět mikropočítače Popis modulu úvod Jedná se o rozšiřující modul pro kit GB60. Modul obsahuje stejnosměrný motorek osazený zařízením pro

Více

.include "m32def.inc" // Konstanty.equ N = 5 // Počet prvků v poli.equ PRVNI = 3 // První číslo v poli

.include m32def.inc // Konstanty.equ N = 5 // Počet prvků v poli.equ PRVNI = 3 // První číslo v poli Příklad č. 1 Vytvořte v paměti RAM pole, umístěte jen v paměti SRAM od začátku, jeho velikost bude dána konstantou N. Pole naplňte, přičemž hodnota prvního prvku bude dána konstantou PRVNI, a další prvky

Více

Procesor z pohledu programátora

Procesor z pohledu programátora Procesor z pohledu programátora Terminologie Procesor (CPU) = řadič + ALU. Mikroprocesor = procesor vyrobený monolitickou technologií na čipu. Mikropočítač = počítač postavený na bázi mikroprocesoru. Mikrokontrolér

Více

Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě

Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě Metody přidělování paměti Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě Důležitá hlediska jazykových konstrukcí: Dynamické typy Dynamické

Více

Katedra informatiky a výpočetní techniky. 10. prosince Ing. Tomáš Zahradnický doc. Ing. Róbert Lórencz, CSc.

Katedra informatiky a výpočetní techniky. 10. prosince Ing. Tomáš Zahradnický doc. Ing. Róbert Lórencz, CSc. Katedra informatiky a výpočetní techniky České vysoké učení technické, fakulta elektrotechnická Ing. Tomáš Zahradnický doc. Ing. Róbert Lórencz, CSc. 10. prosince 2007 Pamět ové banky S výhodou používáme

Více

HypEd4 Uživatelská příručka 2004 HYPEL

HypEd4 Uživatelská příručka 2004 HYPEL HypEd4 Uživatelská příručka I HypEd4 - Uživatelská příručka Obsah Kapitola I Vítejte 6 1 Použití nápovědy... 6 2 Co je nového... v programu HypEd 4 6 3 Získání další odborné... pomoci 6 Kapitola II Instalace,

Více

Princip funkce počítače

Princip funkce počítače Princip funkce počítače Princip funkce počítače prvotní úlohou počítačů bylo zrychlit provádění matematických výpočtů první počítače kopírovaly obvyklý postup manuálního provádění výpočtů pokyny pro zpracování

Více

POLYMERTEST Tř.T.Bati 299, 764 22 Zlín. ZÁKRUTOMĚR Dle ČSN EN ISO 2061

POLYMERTEST Tř.T.Bati 299, 764 22 Zlín. ZÁKRUTOMĚR Dle ČSN EN ISO 2061 TECHNICKÉ PODMÍNKY A NÁVOD K OBSLUZE ZÁKRUTOMĚR Dle ČSN EN ISO 2061 č.v. 1302 1. Účel použití Definice zákrutu Zákrut je počet otáček, které vloží zakrucovací stroj do rovnoběžných vláken na délku 1m.

Více

MAPOVÉ 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

MAPOVÉ 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íce

setup() { I = 0; } loop() { I = I + 1; }

setup() { I = 0; } loop() { I = I + 1; } PŘERUŠENÍ Procesor pracuje tak, že načítá z paměti jednotlivé instrukce a ty následně zpracovává. Instrukce se zpracovávají v pořadí v jakém jsou uloženy v paměti. Vezměme jednoduchý program, který v nekonečném

Více

Operační systémy a programování

Operační systémy a programování Vysoká škola báňská Technická univerzita Ostrava Operační systémy a programování učební text David Fojtík Ostrava 2007 Recenze: Jiří Kulhánek Miroslav Liška Název: Operační systémy a programování Autor:

Více

Obsah. Začínáme Viditelné součásti programu Simulace. WOP Menu CNC řízení. CNC Programy. Exec. Grafické okno. Strojní panel. 3D Model.

Obsah. Začínáme Viditelné součásti programu Simulace. WOP Menu CNC řízení. CNC Programy. Exec. Grafické okno. Strojní panel. 3D Model. F2000 WOP - Page 1 of 51 Začínáme Viditelné součásti programu Simulace Strojní panel 3D Model WOP CNC řízení CNC Programy Přípravné funkce Pomocné funkce Pevný formát CNC programu Volný formát Parametrické

Více

09. Memory management. ZOS 2006, L.Pešička

09. Memory management. ZOS 2006, L.Pešička 09. Memory management ZOS 2006, L.Pešička Správa paměti paměťová pyramida absolutní adresa relativní adresa počet bytů od absolutní adresy fyzický prostor adres fyzicky k dispozici výpočetnímu systému

Více

PROCESOR. Typy procesorů

PROCESOR. Typy procesorů PROCESOR Procesor je ústřední výkonnou jednotkou počítače, která čte z paměti instrukce a na jejich základě vykonává program. Primárním úkolem procesoru je řídit činnost ostatních částí počítače včetně

Více

int => unsigned int => long => unsigned long => float => double => long double - tj. bude-li:

int => 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íce

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague Tomáš Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague Zjednodušené schéma systému z základ hardware pro mainframe tvoří: operační pamět - MAIN / REAL STORAGE jeden

Více

Přerušovací systém s prioritním řetězem

Přerušovací systém s prioritním řetězem Přerušovací systém s prioritním řetězem Doplňující text pro přednášky z POT Úvod Přerušovací systém mikropočítače může být koncipován několika způsoby. Jednou z možností je přerušovací systém s prioritním

Více

Simulace v Quartus II 13.0sp1

Simulace v Quartus II 13.0sp1 Simulace v Quartus II 13.0sp1 Richard Šusta, Katedra řídicí techniky ČVUT-FEL v Praze V Quartus II 13.0sp1 postup simulace mnohem jednodušší než v předchozích verzích. Předpokládejme, že máte vytvořený

Více

Universita Pardubice Fakulta elektrotechniky a informatiky. Mikroprocesorová technika. Semestrální práce

Universita Pardubice Fakulta elektrotechniky a informatiky. Mikroprocesorová technika. Semestrální práce Universita Pardubice Fakulta elektrotechniky a informatiky Mikroprocesorová technika Semestrální práce Jméno: Chmelař Pavel Datum: 14. 5. 2008 Úkol: Příklad č. 1 V paměti dat je uložen blok 8 b čísel se

Více

Technické vývojové prostředky

Technické vývojové prostředky Technické vývojové prostředky Budeme-li realizovat mikroový systém včetně programového vybave-ní, budeme v závěrečné fázi stát před problémem oživení jak obvodového zapojení (hadrware), tak jeho programového

Více

ÚLOHA 6. Úloha 6: Stěžejní body tohoto příkladu:

ÚLOHA 6. Úloha 6: Stěžejní body tohoto příkladu: Úloha 6: Stěžejní body tohoto příkladu: - Definování tabule plechu - Manuální nesting - vkládání - Expert-parametry pro nastavení automatického zpracování - Provedení automatického Expert zpracování -

Více

Návod na použití programu 8051 IDE

Návod na použití programu 8051 IDE Návod na použití programu 8051 IDE Ing. Tomáš Martinec Ph.D. TECHNICKÁ UNIVERZITA V LIBERCI Fakulta mechatroniky, informatiky a mezioborových studií Tento materiál vznikl v rámci projektu ESF CZ.1.07/2.2.00/07.0247,

Více

dovolují dělení velkých úloh na menší = dekompozice

dovolují dělení velkých úloh na menší = dekompozice Podprogramy dovolují dělení velkých úloh na menší = dekompozice Příklad: Vytiskněte tabulku malé násobilky ve tvaru XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X X 1 2 3 4 5 6 7 8 9 10 X XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Více

Úvod. Instrukce musí obsahovat: typ operace adresu operandu (operandů) typ operandů modifikátory adresy modifikátory operace POT POT

Úvod. Instrukce musí obsahovat: typ operace adresu operandu (operandů) typ operandů modifikátory adresy modifikátory operace POT POT Úvod Instrukce musí obsahovat: typ operace adresu operandu (operandů) typ operandů modifikátory adresy modifikátory operace K.D. - přednášky 2 Pevná a proměnná délka instrukce (1) Pevná délka instrukce

Více

Pointery II. Jan Hnilica Počítačové modelování 17

Pointery 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íce

ZAČÍNÁME. špičkové technologie. SolidCAM + SolidWorks ÚSPORA ČASU. nová revoluční technologie frézování. Plně integrované v ýrobní ře šení

ZAČÍNÁME. špičkové technologie. SolidCAM + SolidWorks ÚSPORA ČASU. nová revoluční technologie frézování. Plně integrované v ýrobní ře šení SolidCAM + SolidWorks Plně integrované v ýrobní ře šení špičkové technologie nová revoluční technologie frézování AŽ ÚSPORA ČASU nová revoluční technologie frézování ZAČÍNÁME The Leaders in Integrated

Více

ŘEŠENÉ PRAKTICKÉ PŘÍKLADY V CAM SYSTÉMU MASTERCAM

ŘEŠENÉ PRAKTICKÉ PŘÍKLADY V CAM SYSTÉMU MASTERCAM Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní ŘEŠENÉ PRAKTICKÉ PŘÍKLADY V CAM SYSTÉMU MASTERCAM Učební text předmětu CAD/CAM systémy v obrábění a CAD/CAM systémy v obrábění II Marek

Více

Systémová volání Mgr. Josef Horálek

Systé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íce

Přednáška. Správa paměti II. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Přednáška. Správa paměti II. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012 Přednáška Správa paměti II. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012 Příprava studijního programu Informatika je podporována projektem financovaným z Evropského

Více

IUJCE 07/08 Přednáška č. 6

IUJCE 07/08 Přednáška č. 6 Správa paměti Motivace a úvod v C (skoro vždy) ručně statické proměnné o datový typ, počet znám v době překladu o zabírají paměť po celou dobu běhu programu problém velikosti definovaných proměnných jak

Více

Registry 32 bitové pro všeobecné použití: EAX, EBX, ECX, EDX, ESI, EDI, EBP, ESP.

Registry 32 bitové pro všeobecné použití: EAX, EBX, ECX, EDX, ESI, EDI, EBP, ESP. 1 Procesor i486 a vyšší - úvodní seznámení Procesory i486 a vyšší jsou v technické literatuře dobře dokumentovány, ale dokumentace je rozsáhlá a obsahuje pro začínajícího i zkušeného programátora mnoho

Více

Uživatelská příručka pro Příkazce / Správce zdrojů financování. Projekt DMS modul Faktury

Uživatelská příručka pro Příkazce / Správce zdrojů financování. Projekt DMS modul Faktury S Y C O N I X, a. s. Freyova 12 Telefon: +420 2 83 10 90 10 190 00 Praha 9 Fax: +420 2 83 10 90 11 Česká republika w w w. s y c o n i x. c z pro Příkazce / Správce zdrojů financování Projekt DMS modul

Více

Mikrořadiče řady 8051.

Mikrořadiče řady 8051. Mikrořadiče řady 8051 Řada obvodů 8051 obsahuje typy 8051AH, 8031AH, 8751H, 80C51, 80C31, 8052 a 8032 Jednotlivé obvody se od sebe liší technologií výroby a svojí konstrukcí Způsob programování je však

Více

Čísla, reprezentace, zjednodušené výpočty

Čísla, reprezentace, zjednodušené výpočty Čísla, reprezentace, zjednodušené výpočty Přednáška 4 A3B38MMP kat. měření, ČVUT - FEL, Praha J. Fischer A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 1 Čísla 4 bitová dec bin. hex. 0 0000 0 1 0001

Více

Jazyk symbolických adres

Jazyk symbolických adres Jazyk symbolických adres 1 Proč programovat v JSA Pro některé procesory resp. MCU jsou překladače JSA dostupnější. Některé překladače vyšších jazyků neumí využít určité speciální vlastnosti procesoru.

Více

Implementace seznamů do prostředí DELPHI pomocí lineárního seznamu

Implementace seznamů do prostředí DELPHI pomocí lineárního seznamu Implementace seznamů do prostředí DELPHI pomocí lineárního seznamu Ukazatel a dynamické datové struktury v prostředí DELPHI Důležitým termínem a konstrukčním programovým prvkem je typ UKAZATEL. Je to vlastně

Více

Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě

Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě Metody přidělování paměti Základní způsoby: -Statické (přidělění paměti v čase překladu) -Dynamické (přiděleno v run time) v zásobníku na haldě Důležitá hlediska jazykových konstrukcí: Dynamické typy Dynamické

Více

Rámcový manuál pro práci s programem TopoL pro Windows

Rámcový manuál pro práci s programem TopoL pro Windows Rámcový manuál pro práci s programem TopoL pro Windows Příkazy v nabídce Předmět Volba rastru rychlá klávesa F4 Příkaz otevře vybraný rastr; tj. zobrazí ho v předmětu zájmu. Po vyvolání příkazu se objeví

Více

Implementace numerických metod v jazyce C a Python

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íce

Střední průmyslová škola a Vyšší odborná škola, Hrabákova 271, Příbram. III / 2 = Inovace a zkvalitnění výuky prostřednictvím ICT

Střední průmyslová škola a Vyšší odborná škola, Hrabákova 271, Příbram. III / 2 = Inovace a zkvalitnění výuky prostřednictvím ICT Škola Číslo projektu Číslo a název šablony klíčové aktivity Tematická oblast Název sady Téma Anotace Autor Střední průmyslová škola a Vyšší odborná škola, Hrabákova 271, Příbram CZ.1.07/1.5.00/34.0556

Více

PROGRAMOVÁNÍ V C++ CVIČENÍ. Michal Brabec

PROGRAMOVÁNÍ V C++ CVIČENÍ. Michal Brabec PROGRAMOVÁNÍ V C++ CVIČENÍ Michal Brabec ARCHITECTURE Input 2 / 15 TASK Vytvořte základní data pro filesystem (zatím v main) Jednu autorizační autoritu Jeden registr souborů Cyklus který zpracovává vstup

Více

Systém adresace paměti

Systém adresace paměti Systém adresace paměti Základní pojmy Adresa fyzická - adresa, která je přenesena na adresní sběrnici a fyzicky adresuje hlavní paměť logická - adresa, kterou má k dispozici proces k adresaci přiděleného

Více

Programování. Debugging a testování. Martin Urza

Programování. Debugging a testování. Martin Urza Programování Debugging a testování Martin Urza Co je debugging? V počítačích nulté generace byly důvodem některých chyb zkraty, které způsoboval mimo jiné hmyz, jenž do těchto strojů zalézal. Odstraňování

Více

Procesor. Procesor FPU ALU. Řadič mikrokód

Procesor. Procesor FPU ALU. Řadič mikrokód Procesor Procesor Integrovaný obvod zajišťující funkce CPU Tvoří srdce a mozek celého počítače a do značné míry ovlivňuje výkon celého počítače (čím rychlejší procesor, tím rychlejší počítač) Provádí jednotlivé

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Výrazy Operátory Výrazy Verze pro akademický rok 2012/2013 1 Operace, operátory Unární jeden operand, operátor se zapisuje ve většině případů před operand, v některých případech

Více

Chronis RTS / RTS L Programovatelné spínací hodiny s bezdrátovým přenosem povelů

Chronis RTS / RTS L Programovatelné spínací hodiny s bezdrátovým přenosem povelů Abyste mohli optimálně využít všech výhod programovatelných spínacích hodin s bezdrátovým Chronis RTS/RTS L, přečtěte si pozorně následující návod k obsluze a provozu. Chronis RTS / RTS L jsou programovatelné

Více

Strojový kód, assembler, emulátor počítača

Strojový kód, assembler, emulátor počítača Strojový kód, assembler, emulátor počítača Návrh architektúry hypotetického procesora Strojový kód Assemblerový jazyk Programovanie v assemblerovom jazyku: Lineárny program Vetvenie Cyklus Emulátor počítača

Více

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2014 5, 5.1 a 5.2 8/14

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2014 5, 5.1 a 5.2 8/14 ZÁKLADY PROGRAMOVÁNÍ Mgr. Vladislav BEDNÁŘ 2014 5, 5.1 a 5.2 8/14 Co je vhodné vědět, než si vybereme programovací jazyk a začneme programovat roboty. 1 / 18 0:40 Algoritmus Algoritmem by se dal nazvat

Více

Zpracování deklarací a přidělování paměti

Zpracování deklarací a přidělování paměti Zpracování deklarací a přidělování paměti Účel deklarací -pojmenování objektů -umístění objektů v paměti Tabulka symbolů -uchovává informace o objektech -umožňuje kontextové kontroly -umožňuje operace

Více

Struktura programu v době běhu

Struktura 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íce

Přednáška. Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Přednáška. Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012 Přednáška Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012 Příprava studijního programu Informatika je podporována projektem financovaným z Evropského

Více

Přidělování paměti I Mgr. Josef Horálek

Přidělování paměti I Mgr. Josef Horálek Přidělování paměti I Mgr. Josef Horálek = Paměť = operační paměť je paměť, kterou přímo využívají procesory při zpracováni instrukci a dat; Paměť Funkce modulu přidělování paměti = Sledování stavu každého

Více

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15 Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15 KAPITOLA 1 Úvod do programo vání v jazyce C++ 17 Základní pojmy 17 Proměnné a konstanty 18 Typy příkazů 18 IDE integrované vývojové

Více

Laboratorní zdroj - 6. část

Laboratorní zdroj - 6. část Laboratorní zdroj - 6. část Publikované: 20.05.2016, Kategória: Silové časti www.svetelektro.com V tomto článku popíšu způsob, jak dojít k rovnicím (regresní funkce), které budou přepočítávat milivolty

Více

Registry 8*32bit ERn (=16*16bit En+Rn, 8*16bit+16*8bit En+RnH+RnL)

Registry 8*32bit ERn (=16*16bit En+Rn, 8*16bit+16*8bit En+RnH+RnL) POT (T.Mainzer) Přehled: CPU - pamět CU-ALU-Registers Memory (Address bus, data bus, control bus) Externí pamět pomalá registry, cache Procesor H8S Registry 8*32bit ERn (=16*16bit En+Rn, 8*16bit+16*8bit

Více

Operač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 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íce