Architektura počítačů. Instrukce a návrh instrukční sady. Lubomír Bulej KDSS MFF UK
|
|
- Radka Čechová
- před 6 lety
- Počet zobrazení:
Transkript
1 Architektura počítačů Instrukce a návrh instrukční sady Lubomír Bulej KDSS MFF UK
2 Pro připomenutí: počítač je (jen) stroj Vykonává program Posloupnost instrukcí uložených v paměti. Vykoná instrukci a posune se na následující. Neví co dělá, nechápe smysl programu. Instrukce jsou velmi jednoduché Vesměs operace s čísly. Vše je zakódováno do čísel Nejen vstupní a výstupní data... Text, obrázky, hudba, 3D scéna,... ale také vykonávaný program! 2
3 Jaké instrukce potřebujeme? It is easy to see by formal-logical methods that there exist certain [instruction sets] that are in abstract adequate to control and cause the execution of any sequence of operations The really decisive considerations from the present point of view, in electing an [instruction set], are more of a practical nature: simplicity of the equipment demanded by the [instruction set], and the clarity of its application to the actually important problems together with the speed of its handling of those problems. Burks, Goldstine, and von Neumann,
4 Aritmetické operace Sčítání (dvou proměnných ) Nejzákladnější ze základních operací. add a, b, c # a = b + c Sečte proměnné b a c a uloží výsledek do a. Pracuje se vždy se třemi operandy. Pravidelnost (regularita) zjednodušuje návrh! Sčítání tří (čtyř) proměnných Vyžaduje dvě (tři) operace add a, b, c add a, a, d add a, a, e # a = b + c # a = b + c + d # a = b + c + d + e 4
5 Přiřazovací příkazy (1) Jednoduché výrazy a := b + c; d := a - e; Překlad do assembleru add a, b, c sub d, a, e # a = b + c # d = a - e 5
6 Přiřazovací příkazy (2) Složitější výrazy f := (g + h) - (i + j); Překladač musí příkaz rozložit na více operací. Překlad do assembleru add t0, g, h # t0 = g + h add t1, i, j # t1 = i + k sub f, t0, t1 # f = t0 - t1 Programátor pracuje pouze s proměnnými. Překladač určuje kam uložit mezivýsledky. 6
7 Operandy Instrukce pracují pouze s registry Omezený počet paměťových míst v hardware dostupných programátorovi. 32 v případě architektury MIPS. Více než není nutně lepší. Proč? Menší často znamená rychlejší! Velikost registru je rovněž omezená. 32 bitů (slovo) v případě 32-bitové architektury MIPS. Výkon závisí na efektivním využití registrů Překladač určuje, v jakých registrech budou uloženy hodnoty používané v různých fázích běhu programu. 7
8 Označení registrů architektury MIPS Číslo v instrukčním kódu 5 bitů pro označení registrů Symbolická jména v assembleru Odráží typický způsob použití registru. $r0 ($zero) a $r31 ($ra) jsou speciální. Jméno Číslo Použití Jméno Číslo Použití $zero 0 Konstantní hodnota 0. $t8 $t Další mezivýsledky. $at 1 Rezervováno pro assembler. $k0 $k Rezervováno pro jádro OS. $v0 $v1 2 3 Hodnoty výsledků v výrazů. $gp 28 Global pointer. $a0 $a3 4 7 Argumenty funkcí. $sp 29 Stack pointer. $t0 $t Registry pro mezivýsledky. $fp / $s8 30 Frame pointer. $s0 $s Uschovávané registry. $ra 31 Návratová adresa. 8
9 Použití registrů při překladu Složitější výraz f := (g + h) - (i + j); Kód v assembleru MIPS Překladač přiřadil hodnoty f, g, h, i a j do registrů $s0, $s1, $s2, $s3 a $s4. add $t0, $s1, $s2 # $t0 = g + h add $t1, $s3, $s4 # $t1 = i + k sub $s0, $t0, $t1 # f = $t0 - $t1 9
10 Paměťové operandy Všechno je uloženo v paměti Proměnné a datové struktury obsahují typicky více prvků než je k dispozici registrů. V registrech může být jen malé množství dat. Aritmetické operace pracují pouze s registry Pro přesuny dat mezi pamětí a registry jsou potřeba instrukce přenos dat. Instrukce musí poskytnout adresu v paměti. Paměť je 1-rozměrné pole bajtů. Adresa slouží jako index (s počátkem v 0). 32-bitové adresy slov musí být zarovnané na 4 bajty. 10
11 Instrukce pro přenos dat Load/store word lw $rd, imm16 ($rs) R[rd] = M[R[rs] + signext32 (imm16)] sw $rt, imm16 ($rs) M[R[rs] + signext32 (imm16)] = R[rt] Load/store byte lb $rd, imm16 ($rs) R[rd] = signext32 (M[R[rs] + signext32 (imm16)][7:0]) lbu $rd, imm16 ($rs) R[rd] = zeroext32 (M[R[rs] + signext32 (imm16)][7:0]) sb $rt, imm16 ($rs) M[R[rs] + signext32 (imm16)][7:0] = R[rt][7:0] 1 adresovací režim: Bázová adrese v registru, celočíselný offset v instrukci. 11
12 Použití paměťových operandů Fragment programu var A : array [0.. 99] of Integer; g := h + A[8]; Kód v assembleru MIPS Proměnné g a h přiřazeny do $s1 a $s2. Bázová (počáteční) adrese pole A je v $s3. Offset prvku A[8] je 8 SizeOf(Integer) lw $t0, 32 ($s3) add $s1, $s2, $t0 # $t0 = A[8] # g = h + A[8] 12
13 Použití instrukcí load a store Fragment programu Jednoduché přiřazení, dva paměťové operandy. var A : array [0.. 99] of Integer; A[12] := h + A[8]; Kód v assemleru MIPS Proměnná h přiřazena do $s2. Bázová adresa pole A je v $s3. lw $t0, 32 ($s3) add $t0, $s2, $t0 sw $t0, 48 ($s3) # $t0 = A[8] # $t0 = h + A[8] # A[12] = h + A[8] 13
14 Konstanty a přímé operandy Cíl: vyhnout se čtení běžných konstant z paměti Zvyšování/snižování řídící proměnné cyklu nebo indexu, inicializace součtů a součinů Běžné hodnoty: 0, 1, -1, 2, (velikosti struktur) Časté operace musí být rychlé! Přímé operandy addi $rd, $rs, imm16 add immediate, R[rd] = R[rs] + signext32 (imm16) li $rd, imm32 load immediate, R[rd] = imm32 Nula je speciální, zadrátovaná v $r0 move $rd, $rs = add $rd, $rs, $r0 R[rd] = R[rs] 14
15 Logické operace Operace s bity a bitovými poli v rámci slov Izolace, nastavování a nulování bitů. Bitové operace and/or/xor/nor $rd, $rs, $rt not $rd, $rs = nor $rd, $rs, $rs/$r0 andi/ori/xori $rd, $rs, imm16 R[rd] = R[rs] and/or/xor zeroext32 (imm16) Operace posunu sll/slr $rd, $rs, shamt shift logical left/right, R[rd] = R[rs] << / >> shamt sra $rd, $rs, shamt shift arithmetic right, R[rd] = R[rs] >>> shamt 15
16 Použití logických operací Fragment programu shamt := (insn and $000007C0) shr 6; Kód v assembleru MIPS Proměnné shamt, insn přiřazeny do $s1, $s2. andi $t0, $s2, 0x7C0 # $t0 = insn & 0x7C0 srl $s1, $t0, 6 # shamt = $t0 >> 6 16
17 Instrukce pro podporu rozhodování (1) Odlišují počítač od kalkulátoru Umožňují výběr instrukcí, které budou vykonány v závislosti na vstupech a mezivýsledcích. Řídící příkazy v programovacích jazycích. Větvení / Podmíněné skoky beq $rd, $rs, addr branch if eq, if R[rs] == R[rt] then PC = addr else PC = PC + 4 bne $rd, $rs, addr branch not eq, if R[rs] <> R[rt] then PC = addr else PC = PC + 4 Nepodmíněné skoky j addr jump, PC = addr Adresa následující instrukce 17
18 Překlad příkazů if-then-else Fragment programu if (i = j) then f := g + h; else f := g - h; Kód v assembleru MIPS bne $s3, $s4, Else add $s0, $s1, $s2 j End Else: sub $s0, $s1, $s2 End:... Proměnné f, g, h, i a j přiřazeny do registrů $s0, $s1, $s2, $s3 a $s4. # (i <> j) PC = Else # f = g + h # PC = End # f = g - h 18
19 Překlad while cyklu Fragment programu while (save [i] = k) do i := i + 1; Kód v assembleru MIPS Proměnné i, k přiřazeny do $s3, $s5; bázová adresa pole save je v $s6. Loop: sll $t1, $s3, 2 # $t1 = i 4 add $t1, $t1, $s6 # $t1 lw $t0, 0 ($t1) # $t0 = save[i] bne $t0, $s5, End # (save[i] <> k) PC = End addi $s3, $s3, 1 # i = i + 1 j Loop # PC = Loop End: 19
20 Instrukce pro podporu rozhodování (2) Set on less than Umožňuje testovat všechny vztahy (v kombinaci s instrukcemi beq/bne) Znaménková varianta slt $rd, $rs, $rt if R[rs] < s R[rt] then R[rd] = 1 else R[rd] = 0 slti $rd, $rs, imm16 if R[rs] < s signext32 (imm16) then R[rd] = 1 else R[rd] = 0 Bez-znaménková varianta sltu $rd, $rs, $rt if R[rs] < U R[rt] then R[rd] = 1 else R[rd] = 0 sltiu $rd, $rs, imm16 if R[rs] < U zeroext32 (imm16) then R[rd] = 1 else R[rd] = 0 20
21 Překlad cyklu repeat-until a do-while Fragment programu i := 0; repeat i := i + 1; until i >= k; Kód v assembleru MIPS Proměnné i a k přiřazeny do registrů $s3, a $s5. move $s3, $zero # i = 0 Loop: addi $s3, $s3, 1 # i = i + 1 slt $t0, $s3, $s5 # $t0 = (i < k) bne $t0, $zero, Loop # ($t0 <> 0) PC = Loop End: 21
22 Překlad for cyklu (1) Fragment programu var a : array [0.. 4] of Integer; s, i : integer; begin s := 0; for i := 0 to 4 do begin s := s + a[i]; end; end. 22
23 Překlad for cyklu (2) Kód v assembleru MIPS move $s2, $zero # s = 0 move $s1, $zero # i = 0 j Condition # PC = Condition Body: sll $t0, $s1, 2 # $t0 = i 4 add $t0, $t0, $s0 # $t0 lw $t1, 0 ($t0) # $t1 = a[i] add $s2, $s2, $t1 # s = s + a[i] addi $s1, $s1, 1 # i = i + 1 Condition: slti $t2, $s1, 5 # $t2 = (i < 5) bne $t2, $zero, Body # ($t2 <> 0) PC = Body End: 23
24 Podpora pro procedury/funkce (1) Základní nástroj pro strukturování programů Volání odkudkoliv se vstupními parametry. Návrat do místa volání s návratovou hodnotou. Jedna z cest k abstrakci a znovupoužitelnosti kódu. Základní kroky při vykonání procedury/funkce Uložení parametrů na místo dostupné rutině. Předání řízení do kódu rutiny. Alokace paměti nutné pro vykonání úkolu. Provedení požadovaného úkolu. Uložení výsledků na místo dostupné volajícímu. Návrat do místa volání. 24
25 Podpora pro procedury/funkce (2) Volání podpogramu jal addr jump and link, $ra = R[31] = PC + 4; PC = addr jalr $rs jump and link register, $ra = R[31] = PC + 4; PC = R[rs] Nepřímé skoky / návrat z podprogramu jr $rs jump register, PC = R[rs] Registry používané při volání rutin První 4 argumenty předávané v $a0 $a3 Návratová hodnota vracena v $v0 $v1 Návratové adrese předávaná v $ra ($r31) Adresa následující instrukce 25
26 Jednoduché volání funkce Fragment programu WriteLn (AddFour (a, b, c, d)); Kód v assembleru MIPS Proměnné a, b, c a d přiřazeny do $s0, $s1, $s2 a $s3. move $a0, $s0 move $a1, $s1 move $a2, $s2 move $a3, $s3 jal AddFour move $a0, $v0 jal WriteLn... AddFour: add $v0, $a0, $a1 add $v1, $a2, $a3 add $v0, $v0, $v1 jr $ra WriteLn:... jr $ra 26
27 Podpora pro procedury/funkce (3) Ukládání obsahu registrů do paměti Po návratu z funkce volající očekává v registrech hodnoty, které tam uložil. Rutina pracuje s více hodnotami než kolik má k dispozici registrů. Předávání argumentů přes paměť Rutina může mít více než 4 parametry. Vracení hodnot přes paměť Návratová hodnota může být struktura. Alokace paměti pro lokální proměnné Řídící proměnné cyklů, mezivýsledky,... 27
28 Alokace prostoru pro lokální data V paměti, ale kde? Místo nemůže být pevné, protože rutina může být volána z více míst. V důsledku přímé nebo nepřímé (tranzitivní) rekurze. Rutina může být volána z více vláken. Zásobníková datová struktura (Last In First Out) Ukazatel na vrchol zásobníku (stack pointer) Adresa posledního použitého místa v paměti. Operace push a pop Snížit/zvýšit stack pointer, uložit/přečíst hodnotu Přístup k datům relativně vůči stack pointeru. Umožňuje vnořovat volání rutin. 28
29 Alokace místa na zásobníku Obsah zásobníku a registrů Před, během a po návratu z volání rutiny Vyšší adresy Uschovaná návratová adresa Saved return address $sp Uschované registry Stack frame Uschované registry Lokální proměnné Lokální proměnné Argumenty volaných rutin Argumenty volaných rutin $sp Argumenty volaných rutin $sp Uschovaná návratová adresa Uschované registry Lokální proměnné Argumenty volaných rutin Strack frame Nižší adresy 29
30 Volání funkce s použitím zásobníku Fragment programu s := AddTwo (1, 2); Kód v assembleru MIPS Pozn.: Argumenty by normálně byly pouze v registrech. addi $sp, $sp, -40 # Alokace místa na zásobníku (včetně... # místa pro argumenty všech funkcí) li $a1, 2 sw $a1, 4 ($sp) # Uložit 2. argument na zásobník li $a0, 1 sw $a0, 0 ($sp) # Uložit 1. argument na zásobník jal AddTwo # Volání rutiny (jump and link)... addi $sp, $sp, 40 # Uvolnění místa na zásobníku 30
31 Funkce pracující se zásobníkem (1) Kód funkce AddTwo() v assembleru MIPS Pozn.: ukládat $ra ($s0, $s1) není striktně nutné. Pozn.: argumenty načteny ze stack frame volajícího. AddTwo: addi $sp, $sp, -12 # Alokace místa na zásobníku sw $ra, 8 ($sp) # Uschování návratové adresy sw $s1, 4 ($sp) # Uschování registru $s1 sw $s0, 0 ($sp) # Uschování registru $s0 lw $s0, 12 ($sp) lw $s1, 16 ($sp) add $v0, $s0, $s1 # Načtení 1. argumentu ze zásobníku # Načtení 2. argumentu ze zásobníku # Výpočet návratové hodnoty... pokračování 31
32 Funkce pracující se zásobníkem (2) Kód funkce AddTwo() v assembleru MIPS... pokračování lw $s0, 0 ($sp) # Obnovit registr $s0 lw $s1, 4 ($sp) # Obnovit registr $s1 lw $ra, 8 ($sp) # Obnovit návratovou adresu addi $sp, $sp, 12 # Uvolnění místa na zásobníku jr $ra # Návrat do místa volání Srovnání se procesory s HW podporu zásobníku Stack frame (aktivační záznam) každé funkce je alokován najednou, $sp se již po alokaci nemění. Není vytvářen inkrementálně pomocí instrukcí push. Prostor pro argumenty všech volaných funkcí je součástí aktivačního záznamu $sp se (v rámci funkce) nemění. 32
33 Instrukční sada MIPS (1) Konstantní délka (32 bitů) Registrové instrukce (r-type) Aritmetické a logické operace, nepřímé skoky (na adresu v registru) Instrukce s přímým operandem (i-type) Aritmetické a logické operace, podmíněné skoky, přenos dat. Instrukce přímého skoku (j-type) Nepodmíněné skoky na absolutní adresu. r-type op (6) rs (5) rt (5) rd (5) shamt (5) funct (6) i-type op (6) rs (5) rt (5) signed immediate (16) j-type op (6) target (26) op = operation code, rs = source register, rt = source register/target register/branch condition rd = destination register, shamt = shift amount, funct = ALU function 33
34 Instrukční sada MIPS (2) Dobrý návrh vyžaduje dobré kompromisy! Rozumný počet formátů instrukcí Usnadňuje dekódování a vykonávání instrukcí. Nesmí příliš omezovat sílu instrukční sady. Rozumný počet a velikost registrů Rychlé provádění běžných operací s daty v registrech. Čtení z registrů a zápis do registrů nesmí být pomalý. Optimalizováno pro stroje Strojový kód bude primárně psát stroj, ne člověk. Jednoduché ortogonální operace usnadňují návrh překladače. 34
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
Semestrální práce z předmětu. Jan Bařtipán / A03043 bartipan@studentes.zcu.cz
Semestrální práce z předmětu KIV/UPA Jan Bařtipán / A03043 bartipan@studentes.zcu.cz Zadání Program přečte ze vstupu dvě čísla v hexadecimálním tvaru a vypíše jejich součet (opět v hexadecimální tvaru).
Principy počítačů a operačních systémů
Principy počítačů a operačních systémů Instrukce jazyk počítače Zimní semestr 2011/2012 Jazyk počítače Instrukce a instrukční sada instrukce slova jazyka instrukční sada slovník Jaká slova by jazyk měl
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ý"
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í
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
Architektury VLIW M. Skrbek a I. Šimeček
Architektury VLIW M. Skrbek a I. Šimeček xsimecek@fit.cvut.cz Katedra počítačových systémů FIT České vysoké učení technické v Praze Ivan Šimeček, 2011 MI-PAP, LS2010/11, Predn.3 Příprava studijního programu
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
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
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ů
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í,
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
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ů
Architektura počítačů Implementace procesoru
Architektura počítačů Implementace procesoru http://d3s.mff.cuni.cz/teaching/computer_architecture/ Lubomír Bulej bulej@d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematcs and physics Ukázková
x86 assembler and inline assembler in GCC
x86 assembler and inline assembler in GCC Michal Sojka sojkam1@fel.cvut.cz ČVUT, FEL License: CC-BY-SA 4.0 Useful instructions mov moves data between registers and memory mov $1,%eax # move 1 to register
Č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á
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
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é
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
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á
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
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
Kubatova Y36SAP 9. Strojový kód ISA architektura souboru instrukcí střadačově, zásobníkově orientovaná, GPR Kubátová Y36SAP-ISA 1
Y36SAP 9 Strojový kód ISA architektura souboru instrukcí střadačově, zásobníkově orientovaná, GPR 2007-Kubátová Y36SAP-ISA 1 Architektura souboru instrukcí, ISA - Instruction Set Architecture Vysoká Architektura
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
Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC
Informační systémy 2 Obsah: Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC ROM RAM Paměti typu CACHE IS2-4 1 Dnešní info: Informační systémy 2 03 Informační systémy
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í
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
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
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
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í
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
Architektura počítačů Logické obvody
Architektura počítačů Logické obvody http://d3s.mff.cuni.cz/teaching/computer_architecture/ Lubomír Bulej bulej@d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Digitální
Architektura počítačů Logické obvody
Architektura počítačů Logické obvody http://d3s.mff.cuni.cz/teaching/computer_architecture/ Lubomír Bulej bulej@d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics 2/36 Digitální
Architektura počítače
Architektura počítače Výpočetní systém HIERARCHICKÁ STRUKTURA Úroveň aplikačních programů Úroveň obecných funkčních programů Úroveň vyšších programovacích jazyků a prostředí Úroveň základních programovacích
Č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
Architektura počítačů
Architektura počítačů Procesor V přednášce byly použity (se souhlasem vydavatelství) obrázky z knihy Paterson, D., Henessy, V.: Computer Organization and Design, The HW/SW Interface. Elsevier, ISBN: 978-0-12-370606-5
Aplikovaná informatika. Podklady předmětu Aplikovaná informatika pro akademický rok 2006/2007 Radim Farana. Obsah. Obsah předmětu
1 Podklady předmětu pro akademický rok 2006/2007 Radim Farana Obsah 2 Obsah předmětu, Požadavky kreditového systému, Datové typy jednoduché, složené, Programové struktury, Předávání dat. Obsah předmětu
Popis instrukční sady procesoru ADOP
instrukční sady procesoru ADOP ČVUT FEL, 2008 K. Koubek, P. Bulena Obsah instrukční sady...5 Univerzální registry...5 Registr příznaků FR...5 Standardní význam příznaků...6 Přehled instrukcí...7 ADD Add...8
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í
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
Program a životní cyklus programu
Program a životní cyklus programu Program algoritmus zapsaný formálně, srozumitelně pro počítač program se skládá z elementárních kroků Elementární kroky mohou být: instrukce operačního kódu počítače příkazy
Základní pojmy. Úvod do programování. Základní pojmy. Zápis algoritmu. Výraz. Základní pojmy
Úvod do programování Michal Krátký 1,Jiří Dvorský 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programování, 2004/2005 Procesor Procesorem je objekt, který vykonává algoritmem popisovanou
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é
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.
Obsah přednášky. programovacího jazyka. Motivace. Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup Kontinuace Program
Denotační sémantika programovacího jazyka doc. Dr. Ing. Miroslav Beneš katedra informatiky, A-1007 59 732 4213 Obsah přednášky Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup
Proudové zpracování instrukcí I. Celočíselná pipeline RISC
Proudové zpracování instrukcí I. Celočíselná pipeline RISC Ing. Miloš Bečvář s využitím slajdů prof. Davida Pattersona CS152, University California at Berkeley, 1996 Osnova přednášky Návrh jednoduché datové
Architektura procesorů PC shrnutí pojmů
Architektura procesorů PC shrnutí pojmů 1 Co je to superskalární architektura? Minimálně dvě fronty instrukcí. Provádění instrukcí je možné iniciovat současně, instrukce se pak provádějí paralelně. Realizovatelné
MSP 430F1611. Jiří Kašpar. Charakteristika
MSP 430F1611 Charakteristika Mikroprocesor MSP430F1611 je 16 bitový, RISC struktura s von-neumannovou architekturou. Na mikroprocesor má neuvěřitelně velkou RAM paměť 10KB, 48KB + 256B FLASH paměť. Takže
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
RISC a CISC architektura
RISC a CISC architektura = dva rozdílné přístupy ke konstrukci CPU CISC (Complex Instruction Set Computer) vývojově starší přístup: pomoci konstrukci překladače z VPP co nejpodobnějšími instrukcemi s příkazy
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é
Struktura a architektura počítačů (BI-SAP) 8
Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Struktura a architektura počítačů (BI-SAP) 8 doc. Ing. Hana Kubátová, CSc. Katedra číslicového návrhu Fakulta informačních technologii
LZ77 KNIHOVNA PRO KOMPRESI A DEKOMPRESI DAT POMOCÍ ALGORITMU LZ77. Příručka uživatele a programátora
KNIHOVNA PRO KOMPRESI A DEKOMPRESI DAT POMOCÍ ALGORITMU Příručka uživatele a programátora SofCon spol. s r.o. Střešovická 49 162 00 Praha 6 tel/fax: +420 220 180 454 E-mail: sofcon@sofcon.cz www: http://www.sofcon.cz
Činnost: 1) Vyhodnotí se výraz E. 2) Jeho hodnota se uloží do proměnné V.
Přiřazovací příkaz V := E, V jednoduchá nebo indexovaná proměnná, E výraz, jehož typ je kompatibilní podle přiřazení s typem proměnné V. 1) Vyhodnotí se výraz E. 2) Jeho hodnota se uloží do proměnné V.
Algoritmizace prostorových úloh
INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Datové struktury Daniela Szturcová
Příklady popisu základních obvodů ve VHDL
Příklady popisu základních obvodů ve VHDL INP - cvičení 2 Michal Bidlo, 2008 bidlom@fit.vutbr.cz entity Circuit is port ( -- rozhraní obvodu ); end Circuit; Proces architecture Behavioral of Circuit is
type Obdelnik = array [1..3, 1..4] of integer; var M: Obdelnik;
Vícerozměrné pole type Obdelnik = array [1..3, 1..4] of integer; var M: Obdelnik; M[2,3] := 3145; - počet indexů není omezen (v praxi obvykle nejvýše tři) - více indexů pomalejší přístup k prvku (počítá
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
Architektura procesoru ARM
Architektura procesoru ARM Bc. Jan Grygerek GRY095 Obsah ARM...3 Historie...3 Charakteristika procesoru ARM...4 Architektura procesoru ARM...5 Specifikace procesoru...6 Instrukční soubor procesoru...6
NPRG030 Programování I, 2018/19 1 / :25:37
NPRG030 Programování I, 2018/19 1 / 26 24. 9. 2018 10:25:37 Čísla v algoritmech a programech 10 26 Poloměr vesmíru 2651 studujících studentů MFF UK 3.142857... Ludolfovo číslo 10 16 stáří vesmíru v sekundách!!!
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
Virtuální počítač. Uživatelský program Překladač programovacího jazyka Operační systém Interpret makroinstrukcí Procesor. PGS K.
Virtuální počítač Uživatelský program Překladač programovacího jazyka Operační systém Interpret makroinstrukcí Procesor Virtuální počítač Překladač Překladač : Zdrojový jazyk Cílový jazyk Analytická část:
Semestrální práce z předmětu ÚPA MIPS
Semestrální práce z předmětu ÚPA MIPS Jméno a příjmení: Martin Sloup Osobní číslo: A04372 Datum odevzdání: 21. prosince 2006 E-mail: msloup@students.zcu.cz Zadání Program převede signed integer na jeho
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
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ě
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ý
Architektura Pentia úvod
Architektura Pentia úvod 1 Co je to superskalární architektura? Minimálně dvě fronty instrukcí. Provádění instrukcí je možné iniciovat současně, instrukce se pak provádějí paralelně. Realizovatelné jak
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
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é
Sdílení dat mezi podprogramy
Sdílení dat mezi podprogramy Datové objekty mohou být mezi podprogramy sdíleny pomocí ne-lokálních referenčních prostředí, která jsou vytvářena na základě æ explicitních modifikací (formální parametry
PROGRAMOVÁ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
Programování 2 (NMIN102) Soubory. RNDr. Michal Žemlička, Ph.D.
Programování 2 (NMIN102) Soubory RNDr. Michal Žemlička, Ph.D. Soubor abstrakce vstupního, výstupního či vstupně výstupního zařízení textová, typovaná a netypovaná varianta základní operace: otevření, čtení/zápis,
Datové typy a struktury
atové typy a struktury Jednoduché datové typy oolean = logická hodnota (true / false) K uložení stačí 1 bit často celé slovo (1 byte) haracter = znak Pro 8-bitový SII kód stačí 1 byte (256 možností) Pro
2.1 Podmínka typu case Cykly Cyklus s podmínkou na začátku Cyklus s podmínkou na konci... 5
Obsah Obsah 1 Řídicí struktury 1 2 Podmínka 1 2.1 Podmínka typu case......................... 2 3 Příkaz skoku 3 4 Cykly 4 4.1 Cyklus s podmínkou na začátku................... 4 4.2 Cyklus s podmínkou
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
Architektury CISC a RISC, uplatnění rysů architektur RISC v personálních počítačích - pokračování
Architektury CISC a RISC, uplatnění rysů architektur RISC v personálních počítačích - pokračování 1 Cíl přednášky Vysvětlit další rysy architektur CISC a RISC, upozornit na rozdíly. Upozornit, jak se typické
O datových typech a jejich kontrole
.. O datových typech a jejich kontrole Programovací techniky doc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@mendelu.cz Typová kontrola Programovací techniky O datových typech
Assembler - 2.část. poslední změna této stránky: Zpět
1 z 9 19.2.2007 7:51 Assembler - 2.část poslední změna této stránky: 9.2.2007 1. Příznaky (flagy) Zpět Flagy (česky podivně "příznaky", proto používám výhradně anglický název) jsou výlučnou záležitostí
Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí)
Programovací jazyky Programovací jazyky nižší assembler (jazyk symbolických instrukcí) vyšší imperativní (procedurální) Pascal, C/C++, Java, Basic, Python, php neimperativní (neprocedurální) Lisp, Prolog
Algoritmizace a programování
Algoritmizace a programování Struktura počítače České vysoké učení technické Fakulta elektrotechnická Ver.1.10 J. Zděnek 2015 Struktura předmětu Systémová struktura počítače, procesor, paměti, periferní
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
Architektury CISC a RISC, uplatnění rysů architektur RISC v personálních počítačích - pokračování
Architektury CISC a RISC, uplatnění rysů architektur RISC v personálních počítačích - pokračování 1 Cíl přednášky Vysvětlit další rysy architektur CISC a RISC, upozornit na rozdíly. Upozornit, jak se typické
Architektury CISC a RISC, uplatnění v personálních počítačích - pokračování
Architektury CISC a RISC, uplatnění v personálních počítačích - pokračování 1 Cíl přednášky Vysvětlit, jak pracují architektury CISC a RISC, upozornit na rozdíly. Upozornit, jak se typické rysy obou typů
VÝ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
Binární soubory (datové, typované)
Binární soubory (datové, typované) - na rozdíl od textových souborů data uložena binárně (ve vnitřním tvaru jako v proměnných programu) není čitelné pro člověka - všechny záznamy téhož typu (může být i
Pohled do nitra mikroprocesoru
Pohled do nitra mikroprocesoru Obsah 1. Pohled do nitra mikroprocesoru 2. Architektury mikroprocesorů 3. Organizace cvičného mikroprocesoru 4. Registry v mikroprocesoru 5. Aritmeticko-logická jednotka
Paralelní programování
Paralelní programování přednášky Jan Outrata únor duben 2011 Jan Outrata (KI UP) Paralelní programování únor duben 2011 1 / 14 Atomické akce dále nedělitelná = neproložitelná jiným procesem izolovaná =
Rekurze. Pavel Töpfer, 2017 Programování 1-8 1
Rekurze V programování ve dvou hladinách: - rekurzivní algoritmus (řešení úlohy je definováno pomocí řešení podúloh stejného charakteru) - rekurzivní volání procedury nebo funkce (volá sama sebe přímo
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
Přednáška 2 A4B38NVS - Návrh vestavěných systémů 2014, kat. měření, ČVUT - FEL, Praha J. Fischer A4B38NVS, 2014, J.Fischer, kat. měření, ČVUT - FEL 1
Přednáška 2 A4B38NVS - Návrh vestavěných systémů 2014, kat. měření, ČVUT - FEL, Praha J. Fischer A4B38NVS, 2014, J.Fischer, kat. měření, ČVUT - FEL 1 Modifikace bitů slova v SRAM nebo výstupní brány Funkce
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ě
Souhrn Apendixu A doporučení VHDL
Fakulta elektrotechniky a informatiky Univerzita Pardubice Souhrn Apendixu A doporučení VHDL Práce ke zkoušce z předmětu Programovatelné logické obvody Jméno: Jiří Paar Datum: 17. 2. 2010 Poznámka k jazyku
GENEROVÁNÍ KÓDU 9. SHRNUTÍ - PŘÍKLAD POSTUPU PŘEKLADU VSTUPNÍHO PROGRAMU (ZA POUŽITÍ DOSUD ZNÁMÝCH TECHNIK)
GENEROVÁNÍ KÓDU 9. SHRNUTÍ - PŘÍKLAD POSTUPU PŘEKLADU VSTUPNÍHO PROGRAMU (ZA POUŽITÍ DOSUD ZNÁMÝCH TECHNIK) 2011 Jan Janoušek MI-GEN Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Úvod
Programovací jazyk. - norma PASCAL (1974) - implementace Turbo Pascal, Borland Pascal FreePascal Object Pascal (Delphi)
Programovací jazyk - norma PASCAL (1974) - implementace Turbo Pascal, Borland Pascal FreePascal Object Pascal (Delphi) Odlišnosti implementace od normy - odchylky např.: nepovinná hlavička programu odlišná
1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5
Obsah Obsah 1 Programovací jazyk Pascal 1 1.1 Struktura programu v Pascalu.................... 1 2 Proměnné 2 2.1 Vstup a výstup............................ 3 3 Operátory a některé matematické funkce 5
Úvod z historie. Kompilátory. Kompilace / Kompilátor Compile / Compiler. Pojem kompilátoru. Úvod z historie
Úvod z historie RNDr. Miroslav Benedikovič John Louis von Neumann r. 1946 nová koncepce počítače (společná paměť pro kód programu a zpracovávaná data) vytvořila podmínky pro vznik softvéru na přípravu
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
Algoritmizace prostorových úloh
INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Datové struktury Daniela Szturcová
Popis instrukční sady - procesory PIC Aritmetické a logické operace
Popis instrukční sady - procesory PIC Aritmetické a logické operace ADDLW - ADD Literal and W ADDLW k (W+k) W Sečte obsah registru W s konstantou k, výsledek uloží do registru Ovlivňuje: C, DC, Z ADDWF