ISU Cvičení 1 Marta Čudová Supercomputing Technologies Reseaŕch Group Brno University of Technology, Faculty of Information Technology Božetěchova 1/2, 612 66 Brno - Královo Pole icudova@fit.vutbr.cz
Kdo jsem já? 1. ročník doktorského studia Problematika párování fyzikálních modelů SC@FIT (Supercomputing Technologies Research Group) Na čem pracujeme? Superpočítače vs. low-power systémy vs. akcelerátory (GPU, Xeon Phi) Čím se zabýváme? Optimalizace výkonu, vysoce náročné simulace, akcelerace aplikací, Např. Simulace šíření ultrazvuku v lidských tkáních http://www.fit.vutbr.cz/research/groups/sc@fit/
Osnova dnešního cvičení Co nás čeká v průběhu semestru Číselné soustavy a převody mezi nimi Vysvětlíme si, jak na to Zkusíme, jestli všichni víme, jak na to Dáme soutěž v týmech
Časový plán semestru 13 cvičení 3 bodované testy (asi 6., 10. a 13. cvičení sledujte web předmětu) Cvičení = 2 hodiny, každý týden, celý semestr Max. 24 bodů z testů (+ bonus za aktivitu) Budeme kódit, ale i psát na papír Budeme pracovat ve Windows ( vs?)
Číselné soustavy Co je to číselná soustava?
Číselné soustavy Co je to číselná soustava? Je to způsob reprezentace čísel. Zápis čísla v dané soustavě je posloupnost symbolů, tj. číslic.
Definice Základ (báze, radix) kladné celé číslo definující max. počet číslic, které jsou v dané soustavě k dispozici. Značení: z (nebo r) Číslice soustavy a i celé číslo splňující tuto nerovnost 0 a i < z Celočíselná část n a zlomková část m odděleny znakem (desetinná čárka) Počet číslic v n je dáno převodem Počet číslic v m musí být určeno předem Hodnota čísla je dána jeho pozicí číslice v sekvenci a její váhou (mocniny základu, směrem doleva roste) Libovolné číslo lze zapsat pomocí polynomu Daná soustava je polyadická Zkrácený zápis
Pár příkladů (568,12) 10 = 5 10 2 + 6 10 1 + 8 10 0 + 1 10 1 + 2 10 2 (10010) 2 = 1 2 4 + 0 2 3 + 0 2 2 + 1 2 1 + 0 2 0 = 18 (132) 16 = 1 16 2 + 3 16 1 + 2 16 0 = 306 Rozepište a určete dekadickou hodnotu: (102) 3 = (11010001) 2 = (100101,101) 2 = (AF1) 16 = (172) 8 = (13) 4 = (B05) 12 =
Pár příkladů - výsledky (568,12) 10 = 5 10 2 + 6 10 1 + 8 10 0 + 1 10 1 + 2 10 2 (10010) 2 = 1 2 4 + 0 2 3 + 0 2 2 + 1 2 1 + 0 2 0 = 18 (132) 16 = 1 16 2 + 3 16 1 + 2 16 0 = 306 Rozepište a určete dekadickou hodnotu: (102) 3 = 11 (11010001) 2 = 209 (100101,101) 2 = 37,625 (AF1) 16 = 2801 (172) 8 = 122 (13) 4 = 7 (B05) 12 = 1589
Převody mezi soustavami Metoda dělení základem Pro převod celé části čísla nebo kladných celých čísel Postup: číslo Celočíselné dělení základem cílové soustavy. Zapiš si zbytek odzadu (zprava od řádové čárky doleva). Ne. Pokračuj a použij výsledek po dělení jako nové číslo. Je výsledek po dělení roven 0? Ano. Máme výsledek.
Převod čísla 586 Převod do dvojkové, osmičkové a šestnáctkové soustavy
Pár příkladů Převeďte čísla do soustav o základu 2, 8, 10 a 16. (2005) 10 (2005) 8 (ABC) 16
Pár příkladů - řešení Převeďte čísla do soustav o základu 2, 8, 10 a 16. (2005) 10 = (11111010101) 2 = (3725) 8 = (7D5) 16 (2005) 8 = (10000000101) 2 = (1029) 10 = (405) 16 (ABC) 16 = (101010111100) 2 = (5274) 8 = (2748) 10
Převody mezi soustavami Metoda násobení základem Pro převod desetinné části čísla Postup: číslo Zlomkovou část násob základem cílové soustavy. Celá část získaného čísla je příslušnou číslicí požadovaného zápisu v cílové číselné soustavě, kterou zapíšeme za řádovou čárku. Je zbytek roven 0 nebo bylo dosaženo požadované přesnosti? Ano. Máme výsledek. Ne, zbylou zlomkovou část použij v další iteraci. Připiš celou část výsledku násobení vpravo k cílovému zápisu.
Převod čísla 0,248 Převod do dvojkové, osmičkové a šestnáctkové soustavy
Pár příkladů Převeďte čísla do soustav o základu 2, 8, 10 a 16. (1010,011) 2 (15,059) 10 (přesnost stačí na 3 desetinná místa) (1,7) 8 (F, A) 16
Pár příkladů - řešení Převeďte čísla do soustav o základu 2, 8, 10 a 16. (1010,011) 2 = (12,3) 8 = (10,375) 10 = (A, 6) 16 (15,059) 10 = (1111,00001111000) 2 = (17.03615237574) 8 = (F, 0F1A9FBE76C ) 16 (1,7) 8 = (1,111) 2 = (1,875) 10 = (1, E) 16 (F, A) 16 = (1111.101) 2 = (17,5) 8 = (15,625) 10
Převody mezi soustavami Substituční metoda 1. Převáděné číslo vyjádři polynomem v původní soustavě 2. V aritmetice cílové soustavy spočti mocniny a vynásob hodnotou příslušné číslice 3. Mezivýsledky v cílové soustavě sečti Příklad: 1. (10011, 011) 2 2. = (1 2 4 + 0 2 3 + 0 2 2 + 1 2 1 + 1 2 0 + 0 2 1 + 1 2 2 + 1 2 3 ) 10 3. = (16 + 2 + 1 + 0,25 + 0,125) 10 = (19, 375) 10
Převody mezi soustavami Přímý převod Kdy? Pokud základ jedné soustavy je mocninou základu soustavy druhé. Běžně převody mezi dvojkovou, oktalovou (z = 8) a hexadecimální (z = 16) soustavou Proč a jak? Viz příklad. 16 = 2 4 (10010001) 2 = (91) 16 8 = 2 3 (101010) 2 = (52) 8
Pár příkladů Přímým převodem převeďte tato čísla: (11010010) 2 = (??? ) 4 = (??? ) 16 (FF) 16 = (??? ) 2 = (??? ) 4
Pár příkladů - řešení Přímým převodem převeďte tato čísla: (11010010) 2 = (3102) 4 = (D2) 16 (FF) 16 = (11111111) 2 = (3333) 4
Soutěž (101,10) 2 = (??? ) 10 (11111001) 2 = (??? ) 16 (706,2) 8 = (??? ) 2 (AA81) 16 = (??? ) 2 (1567) 10 = (??? ) 2 (10001101) 2 = (??? ) 4 (110011) 2 = (??? ) 8 (428) 10 = (??? ) 12 (AA41) 16 = (??? ) 2 (11011001) 2 = (??? ) 4 = (??? ) 16 (BA10) 12 = (??? ) 10
Soutěž - řešení (101,10) 2 = (5,5) 10 (11111001) 2 = (F9) 16 (706,2) 8 = (111000110.01) 2 (AA81) 16 = (1010101010000001) 2 (1567) 10 = (11000011111) 2 (10001101) 2 = (2031) 4 (110011) 2 = (63) 8 (428) 10 = (2B8) 12 (AA41) 16 = (1010101001000001) 2 (11011001) 2 = (3121) 4 = (D9) 16 (BA10) 12 = (20460) 10
ISU Award
Na procvičení http://decimal-to-binary.com/decimal-to-binaryconverter-online.html Převody mezi různými soustavami. Pro kontrolu vám ukáže i postup převodu.
Další cvičení Vývojové prostředí pro asemblery, překlad, sestavení a spuštění programu v příkazové řádce
Díky za pozornost