Jazyk symbolických adres
|
|
- Jana Kašparová
- před 9 lety
- Počet zobrazení:
Transkript
1 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. Možnost vytvořit optimalizovaný kód (?). Cvičné důvody programátor se musí důkladně seznámit s daným procesorem. 2
2 Strojový kód Program přeložený do binární podoby. Obsahuje binární kódy instrukcí, Obsahuje absolutní adresy operandů. Jediná forma programu, kterou umí procesor přímo zpracovat. Velmi obtížné úpravy programu. Obtížně srozumitelná pro programátora. 3 Obtížné změny ve strojovém kódu D 6A A A ADD.B R0H,R0L MOV.B D 6A A A ADD.B R0H,R0L MOV.B xx yy zz xx AA yy zz Vložená proměnná 4
3 Symbolická adresa (1) Symbolická adresa nahrazuje ve zdrojovém kódu skutečnou (absolutní) adresu. Převod symbolická adresa absolutní adresa provede překladač + sestavovací program. Programátor nemusí znát skutečné umístění proměnné v paměti. Překlad + sestavení Zdrojový kód Strojový kód VAR1: VAR2: RES1: B8 ADD.B R0H,R0L MOV.B A A B8 6A Symbolická adresa (2) Symbolická adresa má Hodnotu odpovídá adrese, kterou reprezentuje. Obsah odpovídá obsahu paměťového místa (bytu, slova, ) na kterou odkazuje. Typ relativní nebo absolutní. Př: VAR3: VAR4: LAB1: 0F D3 31 B C9 Symbolická adresa VAR3 VAR4 LAB1 Hodnota C9 Obsah 0FD3 31 B8 6
4 Symbolická adresa (3) Symbolická adresa může být Absolutní hodnota je známa při překladu, tj. může ji určit přímo asembler (překladač). hodnotu určí linker (sestavovací program) při sestavování programu. Výrazy se symbolickými adresami 1. operand 2. operand Operace Výsledek Absolutní Absolutní ± Absolutní Absolutní ± + Absolutní* * uvnitř jednoho segmentu 7 Symbolická adresa (4) Použití symbolické adresy Návěští cílová adresa skoku nebo volání procedury. Proměnná adresa pro manipulaci s daty. JMP. #VAR4,ER2 8
5 Překlad a sestavení programu Program je sestaven z jednoho nebo více modulů. Moduly se překládají samostatně. Přeložené (relativní) moduly se spojí sestavovacím programem do výsledného souboru. Zdrojový modul Překlad modul Zdrojový modul Překlad... modul Sestavení (linker) Spustitelný program (binární soubor) Zdrojový modul Překlad modul Knihovní modul 9 a absolutní adresy V relativních modulech jsou adresy počítány od začátku modulu. V sestaveném programu jsou adresy počítány od začátku paměti. Modul A Modul B Modul C Modul A Modul B Adresování v relativních modulech Modul C Adresování v sestaveném programu 10
6 Zápis programu Program se zapisuje do 4 sloupců. Některá pole se mohou podle situace vynechat. Každářádka obsahuje jednu instrukci, direktivu nebo rozvinutí makra. Návěští definuje symbolickou adresu. Operace symbolický název instrukce nebo direktivy. Operandy operandy instrukce nebo parametry direktivy. Komentář je oddělen středníkem. LAB01: ; presun dat NOP ; nedela nic Začátek řádky Návěští (symbolická adresa) Operace Operandy Komentář 11 Instrukční soubor Instrukce lze podle funkce rozdělit do několika skupin: přesuny dat, aritmetické operace, logické operace, posuvy a rotace, bitové operace, nepodmíněné a podmíněné skoky, řídicí instrukce. 12
7 Instrukční soubor H8S (1) 13 Instrukční soubor H8S (2) 14
8 Příklad: Instrukce MOV.W (1) 15 Příklad: Instrukce MOV.W (2) 16
9 Důležité direktivy Direktivy (povely pro překladač): definice sekcí (segmentů), definice dat a symbolů, makra, podmíněný překlad, další: strukturovaný překlad, listing,. 17 Struktura modulu Modul obsahuje jednu nebo více sekcí (segmentů). Každá sekce má nezávislé adresování od svého začátku. Pořadí sekcí ve zdrojovém souboru není podstatné upraví se při sestavení. Kódová sekce Kódová sekce Datová sekce Kódová sekce Datová sekce Zásobníková sekce Modul 18
10 Základní typy sekcí (GNU as as) Datová sekce Obsahuje inicializovaná data ( proměnné ) programu. Kódová sekce Obsahuje kód programu. Další sekce Neinicializovaná data, zásobník, přerušovací vektory, další uživatelem (programátorem) definované sekce. 19 Definice sekce Hlavička sekce (zjednodušeně) Standardní sekce GNU as a ld:.data [subsekce].text [subsekce] začátek datové sekce začátek kódové sekce Libovolné další sekce:.section jméno začátek sekce jméno.text 0 kód programu.data 3 data (proměnné).section MOJE_SEKCE 20
11 Počítadlo adres Každá sekce má (při překladu) samostatné počítadlo adres (PLC Programm Location Counter) Není-li určeno jinak, inicializuje se PLC na 0 na začátku sekce. Možnosti nastavení PLC:.org výraz.align uložení.org = nastaví PLC na hodnotu výraz.align = nastaví PLC na hodnotu MOD(2^uložení) Všechny adresy jsou vztaženy k začátku sekce. Je-li sekce relativní, musí se jiným způsobem zabezpečit potřebné umístění sekce v paměti..text MOV JMP.org JMP.align LAB3 21 Sestavení sekcí a modulů Sestavovací program spojí stejné sekce dohromady. Jsou-li definovány subsekce, spojí dohromady i stejné subsekce.text 0.text 0.text 0.text 1 Modul A Modul B Modul C text 0 text 0.section ST.text 1.data 1.data 1.data 0.section ST.text 1.text 2.text 0.text 1.text 2.data 0.data 1.data 1.section ST.section ST Sestavený program 22
12 Definice dat a symbolů Definice a přiřazení hodnoty symbolu.equ symbol,výraz symbol = výraz symbol symbol, kterému bude přiřazena hodnota výrazu. výraz jeho hodnota bude přiřazena symbolu..equ a = pouze definují symbol a jeho hodnotu. Nevyhrazují místo v paměti. Platnost symbolu je omezena na modul ve kterém je symbol definován. Hodnotu symbolu nelze změnit..equ.equ.equ BASE,0x LIMIT,0x100 NEXT,BASE+LIMIT NIC = 0 23 Definice dat (1) Definice místa pro proměnnou [návěští].space položky návěští symbolická adresa, položky - výrazy definující počet položek VAR1:.space 4.space 1.space 1.space 1 VAR2:.space 4 VAR1: Vyhradí v paměti místo určené délky (počtu bytů). Je-li uvedeno návěští, odpovídá jeho hodnota adrese 1. bytu dat. VAR2:
13 Definice proměnné s počáteční hodnotou [návěští].byte výrazy [návěští].word výrazy [návěští].long výrazy [návěští].ascii řetězec [návěští].asciz řetězec návěští symbolická adresa, výrazy výrazy definující obsah jednotlivých položek, oddělené čárkou. Vyhradí v paměti místo, jehož obsah je dán jednotlivými výrazy. Je-li uvedeno návěští, odpovídá jeho hodnota adresa 1. bytu dat. Definice dat (2) VAR1:.word 0x0FD3 VAR2:.byte 1 VAR3:.byte 0,32,19,68 VAR4:.word 0x1200+0xB8 VAR5:.ascii AHOJ VAR1: 0F D3 VAR2: VAR3: VAR4: B8 VAR5: F 4A Sdílení dat mezi moduly (1) Symboly mají platnost jen v modulu, ve kterém jsou definovány. Rozšíření platnosti (export) symbolů:.global symboly symboly seznam exportovaných symbolů oddělených čárkami. Použití symbolů definovaných v jiném modulu (import):.extern symboly symboly seznam importovaných symbolů oddělených čárkami. Lze použít pouze pro symboly, definované jako návěští (ne EQU). 26
14 Sdílení dat mezi moduly (2) ; A_MODUL VAR_A1:.word.global VAR_A1,LAB_A1.extern VAR_B1,LAB_B1 VAR_A2:.space 2 LAB_A1: MOV.W MOV.W JMP ; B_MODUL.global VAR_B1,LAB_B1.extern VAR_A1,LAB_A1 VAR_B1:.word 0x0FD3 VAR_B2:.space 2 LAB_B1: MOV.W R1,@VAR_A1 27 Sdílení dat mezi moduly (3) moduly obsahují tabulku referovaných externích symbolů (Extern) a tabulku exportovaných symbolů (Global). Sestavovací program hledá externí symboly v tabulkách Global ostatních modulů. modul A modul B modul C Kód a data Kód a data Kód a data Tabulka referovaných externalů ( Extern) Tabulka exportovaných symbolů ( Global) Tabulka referovaných externalů ( Extern) Tabulka exportovaných symbolů ( Global) Tabulka referovaných externalů ( Extern) Tabulka exportovaných symbolů ( Global) 28
15 Makra (definice) Umožňuje definovat část programu, která bude použita na více místech..macro jméno argumenty tělo makra.endm jméno jméno makra. argumenty seznam symbolických argumentů. V těle se referují s \ na začátku. tělo makra jednotlivé instrukce..endm ukončuje rozvoj makra. Rozvinutí makra vloží tělo makra, tj. kopie jednotlivých instrukcí do daného místa programu. 29 Makra (rozvinutí).macro PUSH MOV.W POP.endm SWAP SWAP SWAP REG1,REG2 \REG1 \REG2,\REG1 \REG2 R4,R2 R5,R3 PUSH MOV.W POP PUSH MOV.W POP R4 R2,R4 R2 R5 R3,R5 R3 Zápis v programu Rozvinutí makra 30
16 Makra (lokální symboly) Je-li v makru definován symbol (např. návěští), vznikají při vícenásobném rozvinutí problémy. Symbol se musí definovat jako lokální v makru. LOCAL symboly symboly seznam lokálních symbolů, oddělených čárkami. Překladač vytvoří v každém rozvinutí unikátní jméno symbolu. Před použitím LOCAL se musí použít direktiva.altmacro 31 Makra (lokální symboly).altmacro.macro ONES VAR,RESULT VAR1:.space 2 LOCAL LAB1,LAB2 VAR2:.space 1 VARX:.space 2 MOV.B #16,R0L VARY:.space 1 XOR.B R0H,R0H LAB1: ROTR R1 ONES VAR1,VAR2 BCC LAB2 INC R0H ONES VARX,VARY LAB2: DEC R0L BNE LAB1 MOV.B R0H,@\RESULT.endm.noaltmacro Použití makra Definice makra 32
17 Spojování programů v JSA a vyšších jazycích Typický případ: procedura v JSA volaná z programu ve vyšším jazyku (např. C). Je nutné znát: pravidla pro vytváření jmen (proměnných, segmentů, ), pravidla pro předávání argumentů do procedury, pravidla pro předávání hodnoty funkce do volajícího programu, pravidla pro zacházení se zásobníkem, pravidla pro sestavení programu ve vyšším jazyku (inicializační modul, knihovny, ). Výše uvedené bývá popsáno v příslušném manuálu. 33 Start procesoru (1) Reset 1. V paměti musí být připraven program. První instrukce programu musí být na určité pevně dané adrese (obvykle 0x000). Paměť musí být nevolatilní (ROM). 2. Po připojení napájení se provede RESET. 3. Při resetu nastaví CPU do PC hodnotu 0x000 (nebo jinou pevně danou hodnotu). PC První instrukce Kód programu Volná paměť Kód programu Volná paměť Nevolatilní paměť (Flash, EPROM, ) 34
18 Start procesoru (2) Adresa první instrukce na adrese Jiná možnost (použitá i u H8S): Reset 200ABC 1. Po připojení napájení se provede RESET. PC Volná paměť 2. V paměti musí být připraven program. Adresa první instrukce programu musí být na určité pevně dané adrese (obvykle 0x000). První instrukce Kód programu Paměť musí být nevolatilní (ROM). 3. Při resetu nastaví CPU do PC obsah adresy 0x000. Volná paměť Nevolatilní paměť (Flash, EPROM, ) 35 Operační systém Aplikační program Operační systém První instrukce SYSCALL Spuštění aplikace Volání služeb OS Start aplikace Služba O.S. EXIT Ukončení aplikace 36
19 Správa paměti Začátek segmentu Adresa paměti Fyzická (absolutní) adresa Aplikační program Instrukce PC Operační systém Délka segmentu Komparátor CPU v režimu UŽIVATEL Start aplikace SYSCALL Porušení ochrany paměti CPU v režimu SYSTÉM 37 Správa paměti 38
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
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
Ú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
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
Předmluva 13 Použité konvence 14. KAPITOLA 1 Základní číselné soustavy a pojmy Číselné soustavy a převody 15 1.
7 Předmluva 13 Použité konvence 14 KAPITOLA 1 Základní číselné soustavy a pojmy 15 1.1 Číselné soustavy a převody 15 1.2 Datové typy 18 KAPITOLA 2 Seznámení s mikroprocesory řady x86 21 2.1 Počítač obecně
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í,
ISU Cvičení 3. Marta Čudová
ISU Cvičení 3 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 Program
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
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í
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
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
Koncepce (větších) programů. Základy programování 2 Tomáš Kühr
Koncepce (větších) programů Základy programování 2 Tomáš Kühr Parametry a návratová hodnota main Již víme, že main je funkce A také tušíme, že je trochu jiná než ostatní funkce v programu Funkce main je
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ý"
Akademický rok: 2004/05 Datum: Příjmení: Křestní jméno: Osobní číslo: Obor:
Západočeská univerzita v Plzni Písemná zkouška z předmětu: Zkoušející: Katedra informatiky a výpočetní techniky Počítačová technika KIV/POT Dr. Ing. Karel Dudáček Akademický rok: 2004/05 Datum: Příjmení:
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
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ů
a operačních systémů
NSWI2 2/2 ZS Principy počítačů a operačních systémů INSTRUKCE Kdybych nařídil generálovi, aby létal od květině ke květině a on by rozkaz neprovedl, nebyla by to chyba generálova, ale moje. král asteroidu
zení Koncepce připojení V/V zařízení POT POT ... V/V zařízení jsou připojena na sběrnici pomocí řadičů. Řadiče Připojení periferních zařízení
Připojení periferních zařízen zení 1 Koncepce připojení V/V zařízení V/V zařízení jsou připojena na sběrnici pomocí řadičů. Řadiče specializované (řadič disku) lze k nim připojit jen zařízení určitého
Preprocesor a koncepce (větších) programů. Úvod do programování 2 Tomáš Kühr
Preprocesor a koncepce (větších) programů Úvod do programování 2 Tomáš Kühr Práce s preprocesorem Preprocesor Zpracovává zdrojový kód ještě před překladačem Provádí pouze záměny textů (např. identifikátor
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
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
Sběrnicová architektura POT POT. Jednotlivé subsystémy počítače jsou propojeny sběrnicí, po které se přenáší data oběma směry.
Systémov mová sběrnice 1 Sběrnicová architektura Jednotlivé subsystémy počítače jsou propojeny sběrnicí, po které se přenáší data oběma směry. Single master jeden procesor na sběrnici, Multi master více
Struktura a architektura počítačů (BI-SAP) 7
Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Struktura a architektura počítačů (BI-SAP) 7 doc. Ing. Hana Kubátová, CSc. Katedra číslicového návrhu Fakulta informačních technologii
Operační systémy. Cvičení 3: Programování v C pod Unixem
Operační systémy Cvičení 3: Programování v C pod Unixem 1 Obsah cvičení Editace zdrojového kódu Překlad zdrojového kódu Základní datové typy, struktura, ukazatel, pole Načtení vstupních dat Poznámka: uvedené
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
3. Počítačové systémy
3. Počítačové systémy 3.1. Spolupráce s počítačem a řešení úloh 1. přímý přístup uživatele - neekonomické. Interakce při odlaďování programů (spusť., zastav.,krok, diagnostika) 2. dávkové zpracování (batch
Vyučovací hodina. 1vyučovací hodina: 2vyučovací hodiny: Opakování z minulé hodiny. Procvičení nové látky
Vyučovací hodina 1vyučovací hodina: Opakování z minulé hodiny Nová látka Procvičení nové látky Shrnutí 5 min 20 min 15 min 5 min 2vyučovací hodiny: Opakování z minulé hodiny Nová látka Procvičení nové
Přerušení POT POT. Přerušovací systém. Přerušovací systém. skok do obslužného programu. vykonávaný program. asynchronní událost. obslužný.
1 Přerušení Při výskytu určité události procesor přeruší vykonávání hlavního programu a začne vykonávat obslužnou proceduru pro danou událost. Po dokončení obslužné procedury pokračuje výpočet hlavního
Algoritmizace a programování
Algoritmizace a programování Strukturované proměnné Struktura, union Jazyk C České vysoké učení technické Fakulta elektrotechnická A8B14ADP Jazyk C - Strukturované proměnné Ver.1.10 J. Zděnek 20151 Struktura
Přidělování paměti II Mgr. Josef Horálek
Přidělování paměti II Mgr. Josef Horálek Techniky přidělování paměti = Přidělování jediné souvislé oblasti paměti = Přidělování paměti po sekcích = Dynamické přemisťování sekcí = Stránkování = Stránkování
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
Architektury počítačů a procesorů
Kapitola 3 Architektury počítačů a procesorů 3.1 Von Neumannova (a harvardská) architektura Von Neumann 1. počítač se skládá z funkčních jednotek - paměť, řadič, aritmetická jednotka, vstupní a výstupní
MPASM a IDE pro vývoj aplikací MCU (Microchip)
MPASM a IDE pro vývoj aplikací MCU (Microchip) MPLAB, vývojové prostředí a jeho instalace; Založení nového projektu a jeho základní nastavení; Zásady tvorby a základní úprava formuláře zdrojového kódu;
Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:
Čtvrtek 8 prosince Pascal - opakování základů Struktura programu: 1 hlavička obsahuje název programu, použité programové jednotky (knihovny), definice konstant, deklarace proměnných, všechny použité procedury
Provádění instrukcí. procesorem. Základní model
procesorem 1 Základní model Kód programu (instrukce) a data jsou uloženy ve vnější paměti. Procesor musí nejprve z paměti přečíst instrukci. Při provedení instrukce podle potřeby čte nebo zapisuje data
Kubatova 19.4.2007 Y36SAP 8. Strojový kód Jazyk symbolických instrukcí asembler JSA pro ADOP a AVR. 2007-Kubátová Y36SAP-strojový kód 1
Y36SAP 8 Strojový kód Jazyk symbolických instrukcí asembler JSA pro ADOP a AVR 2007-Kubátová Y36SAP-strojový kód 1 Architektura souboru instrukcí, ISA - Instruction Set Architecture Vysoká Architektura
Programovací jazyk Pascal
Programovací jazyk Pascal Syntaktická pravidla (syntaxe jazyka) přesná pravidla pro zápis příkazů Sémantická pravidla (sémantika jazyka) pravidla, která každému příkazu přiřadí přesný význam Všechny konstrukce
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
Vzorový příklad pro práci v prostředí MPLAB Zadání: Vytvořte program, který v intervalu 200ms točí doleva obsah registru reg, a který při stisku tlačítka RB0 nastaví bit 0 v registru reg na hodnotu 1.
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
Pohled do nitra mikroprocesoru Josef Horálek
Pohled do nitra mikroprocesoru Josef Horálek Z čeho vycházíme = Vycházíme z Von Neumannovy architektury = Celý počítač se tak skládá z pěti koncepčních bloků: = Operační paměť = Programový řadič = Aritmeticko-logická
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
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 - deklarace pomocí funkčního
Počítač jako prostředek řízení. Struktura a organizace počítače
Řídicí počítače - pro řízení technologických procesů. Specielní přídavná zařízení - I/O, přerušovací systém, reálný čas, Č/A a A/Č převodníky a j. s obsluhou - operátorské periferie bez obsluhy - operátorský
ČÁST 1. Základy 32bitového programování ve Windows
Obsah Úvod 13 ČÁST 1 Základy 32bitového programování ve Windows Kapitola 1 Nástroje pro programování ve Windows 19 První program v Assembleru a jeho kompilace 19 Objektové soubory 23 Direktiva INVOKE 25
Úvod do programování. Lekce 1
Úvod do programování Lekce 1 Základní pojmy vytvoření spustitelného kódu editor - psaní zdrojových souborů preprocesor - zpracování zdrojových souborů (vypuštění komentářů atd.) kompilátor (compiler) -
Programovací jazyk C(++) C++ area->vm_mm->locked_vm -= len >> PAGE_SHIFT;
Programovací jazyk C(++) static struct vm_area_struct * unmap_fixup(struct mm_struct *mm, struct vm_area_struct *area, unsigned long addr, size_t len, struct vm_area_struct 5. Preprocesor, *extra) kompilace
Činnost CPU. IMTEE Přednáška č. 2. Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus
Činnost CPU Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus Hodinový cyklus CPU je synchronní obvod nutné hodiny (f CLK ) Instrukční cyklus IF = doba potřebná
OPS Paralelní systémy, seznam pojmů, klasifikace
Moorův zákon (polovina 60. let) : Výpočetní výkon a počet tranzistorů na jeden CPU chip integrovaného obvodu mikroprocesoru se každý jeden až dva roky zdvojnásobí; cena se zmenší na polovinu. Paralelismus
Maturitní 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
ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ 2013 1.3 2/14
ZÁKLADY PROGRAMOVÁNÍ Mgr. Vladislav BEDNÁŘ 2013 1.3 2/14 Co je vhodné vědět, než si vybereme programovací jazyk a začneme programovat roboty. 1 / 14 0:40 1.3. Vliv hardware počítače na programování Vliv
5. STRUKTURA PLC PROGRAMU
5. STRUKTURA PLC PROGRAMU Struktura PLC programu je navržena s ohledem na co jefektivnější návrh programu při přizpůsobení CNC systému na stroj. 5.1 Moduly jazyka TECHNOL Moduly jazyka PLC836 byly vytvořeny
Příkazy preprocesoru - Před překladem kódu překladačem mu předpřipraví kód preprocesor - Preprocesor vypouští nadbytečné (prázdné) mezery a řádky -
Příkazy preprocesoru - Před překladem kódu překladačem mu předpřipraví kód preprocesor - Preprocesor vypouští nadbytečné (prázdné) mezery a řádky - Preprocesor je možné ovládat pomocí příkazů - řádky začínající
Opakování programování
Opakování programování HW návaznost - procesor sběrnice, instrukční sada, optimalizace rychlosti, datové typy, operace (matematické, logické, podmínky, skoky, podprogram ) - paměti a periferie - adresování
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
MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ
MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ 1) PROGRAM, ZDROJOVÝ KÓD, PŘEKLAD PROGRAMU 3 2) HISTORIE TVORBY PROGRAMŮ 3 3) SYNTAXE A SÉMANTIKA 3 4) SPECIFIKACE
Sada 1 - Základy programování
S třední škola stavební Jihlava Sada 1 - Základy programování 06. Proměnné, deklarace proměnných Digitální učební materiál projektu: SŠS Jihlava šablony registrační číslo projektu:cz.1.09/1.5.00/34.0284
Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7
Pascal Katedra aplikované kybernetiky Ing. Miroslav Vavroušek Verze 7 Proměnné Proměnná uchovává nějakou informaci potřebnou pro práci programu. Má ve svém oboru platnosti unikátní jméno. (Připadne, musí
Popis programu EnicomD
Popis programu EnicomD Pomocí programu ENICOM D lze konfigurovat výstup RS 232 přijímačů Rx1 DIN/DATA a Rx1 DATA (přidělovat textové řetězce k jednotlivým vysílačům resp. tlačítkům a nastavovat parametry
int ii char [16] double dd název adresa / proměnná N = nevyužito xxx xxx xxx N xxx xxx N xxx N
Struktura (union) - struktura a union jsou složené typy, které "v sobě" mohou obsahovat více proměnných - struktura obsahuje v každém okamžiku všechny své proměnné, union obsahuje (=je "aktivní") pouze
Výpočet v módu jádro. - přerušení (od zařízení asynchronně) - výjimky - softvérové přerušení. v důsledku událostí
Výpočet v módu jádro v důsledku událostí - přerušení (od zařízení asynchronně) - výjimky - softvérové přerušení řízení se předá na proceduru pro ošetření odpovídající události část stavu přerušeného procesu
Programování v jazyce C a C++
Programování v jazyce C a C++ Richter 1 Petyovský 2 1. března 2015 1 Ing. Richter Miloslav, Ph.D., UAMT FEKT VUT Brno 2 Ing. Petyovský Petr, UAMT FEKT VUT Brno C++ Stručná charakteristika Nesdíĺı normu
Struktura a architektura počítačů (BI-SAP) 9
Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Struktura a architektura počítačů (BI-SAP) 9 doc. Ing. Hana Kubátová, CSc. Katedra číslicového návrhu Fakulta informačních technologii
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é
11. Přehled prog. jazyků
Jiří Vokřínek, 2016 B6B36ZAL - Přednáška 11 1 Základy algoritmizace 11. Přehled prog. jazyků doc. Ing. Jiří Vokřínek, Ph.D. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze
Procesor. Základní prvky procesoru Instrukční sada Metody zvýšení výkonu procesoru
Počítačové systémy Procesor Miroslav Flídr Počítačové systémy LS 2006-1/17- Západočeská univerzita v Plzni Víceúrovňová organizace počítače Digital logic level Microarchitecture level Processor Instruction
Algoritmy I. Cvičení č. 2, 3 ALGI 2018/19
Algoritmy I Cvičení č. 2, 3 1 ALG I, informace Cvičící RNDr. Eliška Ochodková, Ph.D., kancelář EA439 eliska.ochodkova@vsb.cz www.cs.vsb.cz/ochodkova Přednášející doc. Mgr. Jiří Dvorský, Ph.D., kancelář
Profilová část maturitní zkoušky 2014/2015
Střední průmyslová škola, Přerov, Havlíčkova 2 751 52 Přerov Profilová část maturitní zkoušky 2014/2015 TEMATICKÉ OKRUHY A HODNOTÍCÍ KRITÉRIA Studijní obor: 26-41-M/01 Elektrotechnika Zaměření: technika
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í
Ú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í
24. Jazyk PLC836 - referenční slovník
Jazyk PLC836 referenční slovník 24. Jazyk PLC836 - referenční slovník ABS syntax: ABS [DWRD] stránka: 3-21 Bezoperandová instrukce. Instrukce ABS provádí absolutní hodnotu DR registru. AD syntax: AD [TYPE.]adr
Přednáška. Správa paměti I. 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 I. 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
Paměti. Paměť je zařízení, které slouží k ukládání programů a dat, s nimiž počítač pracuje
Paměti Paměť je zařízení, které slouží k ukládání programů a dat, s nimiž počítač pracuje Paměti počítače lze rozdělit do tří základních skupin: registry paměťová místa na čipu procesoru jsou používány
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é
Úvod. Programovací paradigmata
.. Úvod. Programovací paradigmata Programovací techniky doc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@mendelu.cz Cíl: programování efektivně a bezpečně Programovací techniky
Přednáška 2. Systémy souborů OS UNIX. Nástroje pro práci se souborovým systémem. Úvod do Operačních Systémů Přednáška 2
Přednáška 2 Systémy souborů OS UNIX. Nástroje pro práci se souborovým systémem. 1 Systém souborů (FS) I 2 Systém souborů II Logický systém souborů pro běžného uživatele se jeví jako jediná homogenní struktura
Číselné soustavy. Binární číselná soustava
12. Číselné soustavy, binární číselná soustava. Kódování informací, binární váhový kód, kódování záporných čísel. Standardní jednoduché datové typy s pevnou a s pohyblivou řádovou tečkou. Základní strukturované
Pár odpovědí jsem nenašla nikde, a tak jsem je logicky odvodila, a nebo jsem ponechala odpověď z pefky, proto je možné, že někde bude chyba.
Odpovědi jsem hledala v prezentacích a na http://www.nuc.elf.stuba.sk/lit/ldp/index.htm Pár odpovědí jsem nenašla nikde, a tak jsem je logicky odvodila, a nebo jsem ponechala odpověď z pefky, proto je
.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
Programování v jazyce C pro chemiky (C2160) 3. Příkaz switch, příkaz cyklu for, operátory ++ a --, pole
Programování v jazyce C pro chemiky (C2160) 3. Příkaz switch, příkaz cyklu for, operátory ++ a --, pole Příkaz switch Příkaz switch provede příslušnou skupinu příkazů na základě hodnoty proměnné (celočíselné
konstruktory a destruktory (o)
konstruktory a destruktory (o) - slouží k ovlivnění vzniku (inicializace) a zániku (úklid) objektu - základní myšlenkou je, že proměnná by měla být inicializována (nastavena do počátečního stavu) a zároveň
ODBORNÝ VÝCVIK VE 3. TISÍCILETÍ. MEIII Paměti konstant
Projekt: ODBORNÝ VÝCVIK VE 3. TISÍCILETÍ Téma: MEIII - 1.5 Paměti konstant Obor: Mechanik elektronik Ročník: 3. Zpracoval(a): Jiří Kolář Střední průmyslová škola Uherský Brod, 2010 Projekt je spolufinancován
LOGICKÉ ŘÍZENÍ. Matematický základ logického řízení
Měřicí a řídicí technika bakalářské studium - přednášky LS 28/9 LOGICKÉ ŘÍZENÍ matematický základ logického řízení kombinační logické řízení sekvenční logické řízení programovatelné logické automaty Matematický
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é
Ing. 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
Programování v C++ Úplnej úvod. Peta (maj@arcig.cz, SPR AG 2008-9)
Programování v C++ Úplnej úvod Co se naučíte? tak samozřejmě C++, s důrazem na: dynamické datové struktury Objektově Orientované Programování STL (standardní knihovna šablon) vytváření vlastních šablon
Základy informatiky. 2. Přednáška HW. Lenka Carr Motyčková. February 22, 2011 Základy informatiky 2
Základy informatiky 2. Přednáška HW Lenka Carr Motyčková February 22, 2011 Základy informatiky 1 February 22, 2011 Základy informatiky 2 February 22, 2011 Základy informatiky 3 February 22, 2011 Základy
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:
2 Datové typy v jazyce C
1 Procedurální programování a strukturované programování Charakteristické pro procedurální programování je organizace programu, který řeší daný problém, do bloků (procedur, funkcí, subrutin). Původně jednolitý,
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í
Management procesu I Mgr. Josef Horálek
Management procesu I Mgr. Josef Horálek Procesy = Starší počítače umožňovaly spouštět pouze jeden program. Tento program plně využíval OS i všechny systémové zdroje. Současné počítače umožňují běh více
DATABÁZE MS ACCESS 2010
DATABÁZE MS ACCESS 2010 KAPITOLA 5 PRAKTICKÁ ČÁST TABULKY POPIS PROSTŘEDÍ Spuštění MS Access nadefinovat název databáze a cestu k uložení databáze POPIS PROSTŘEDÍ Nahoře záložky: Soubor (k uložení souboru,
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é
IUJCE Přednáška č. 11. další prvky globální proměnné, řízení viditelnosti proměnných, funkcí
Velké projekty v C velký = 100ky a více řádek udržovatelnost, bezpečnost, přehlednost kódu rozdělení programu do více souborů další prvky globální proměnné, řízení viditelnosti proměnných, funkcí Globální
Programování ve Windows Dynamické knihovny. Andrea Číková Martin Osovský
Programování ve Windows Dynamické knihovny Andrea Číková Martin Osovský Agenda K čemu jsou dobré? Jaký mají vztah ke spustitelným souborům a procesům? Jak se sestavují? Jak se načítají? Jak se hledají?
MQL4 COURSE. By Coders guru www.forex-tsd.com. -5 Smyčky & Rozhodnutí Part 1
MQL4 COURSE By Coders guru www.forex-tsd.com -5 Smyčky & Rozhodnutí Part 1 Vítejte v páté lekci mého kurzu MQL4. Předchozí lekci si můžete stáhnout z tohoto odkazu: http://forex-tsd.com /attachment.php?attachmentid=399
VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Čí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
TÉMATICKÝ OKRUH Softwarové inženýrství
TÉMATICKÝ OKRUH Softwarové inženýrství Číslo otázky : 24. Otázka : Implementační fáze. Postupy při specifikaci organizace softwarových komponent pomocí UML. Mapování modelů na struktury programovacího
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