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



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

Číselné soustavy v mikroprocesorové technice Mikroprocesorová technika a embedded systémy

Struktura a architektura počítačů (BI-SAP) 5

Y36SAP. Osnova. Číselné soustavy a kódy, převody, aritmetické operace Y36SAP Poziční číselné soustavy a převody.

Mikroprocesorová technika (BMPT)

v aritmetické jednotce počíta

Algoritmy I. Číselné soustavy přečíst!!! ALGI 2018/19

Čísla a aritmetika. Řádová čárka = místo, které odděluje celou část čísla od zlomkové.

Data v počítači. Informační data. Logické hodnoty. Znakové hodnoty

Principy počítačů I Reprezentace dat

Činnost CPU. IMTEE Přednáška č. 2. Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus

Číselné vyjádření hodnoty. Kolik váží hrouda zlata?

Digitální obvody. Doc. Ing. Lukáš Fujcik, Ph.D.

3 Jednoduché datové typy Interpretace čísel v paměti počítače Problémy s matematickými operacemi 5

Struktura a architektura počítačů (BI-SAP) 6

Základní principy zobrazení čísla Celá čísla s pevnou řádovou čárkou Zobrazení reálných čísel Aritmetika s binárními čísly

Přednáška - Čítače. 2013, kat. měření, ČVUT - FEL, Praha J. Fischer. A3B38MMP, 2013, J.Fischer, ČVUT - FEL, kat. měření 1

Projekt - Voltmetr. Přednáška 3 - část A3B38MMP, 2015 J. Fischer kat. měření, ČVUT - FEL, Praha. A3B38MMP, 2015, J.Fischer, kat. měření, ČVUT - FEL 1

Úloha Ohmetr zadání úlohy

Procesor z pohledu programátora

Číselné soustavy. Binární číselná soustava

Obsah. Popis funkcí. RS485/MODBUS-RTU ver Komunikace s převodníkem probíhá na principu MASTER - SLAVE. Protokol MODBUS mát tuto strukturu:

Architektury počítačů

PB002 Základy informačních technologií

PJC Cvičení #2. Číselné soustavy a binární reprezentace proměnných

Aritmetické operace a obvody pro jejich realizaci

Fz =a z + a z +...+a z +a z =

Základní jednotky používané ve výpočetní technice

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

Číslo materiálu. Datum tvorby Srpen 2012

Binární data. Číslicový systém. Binární data. Klávesnice Snímače polohy, dotykové displeje, myš Digitalizovaná data odvozená z analogového signálu

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

Základní pojmy. Program: Algoritmus zapsaný v programovacím jazyce, který řeší nějaký konkrétní úkol. Jedná se o posloupnost instrukcí.

RS485/MODBUS-RTU ver. 4 s rozšířením pro R24

Analogově-číslicové převodníky ( A/D )

Přednáška A3B38MMP. Bloky mikropočítače vestavné aplikace, dohlížecí obvody. 2015, kat. měření, ČVUT - FEL, Praha J. Fischer

MATA Př 3. Číselné soustavy. Desítková soustava (dekadická) základ 10, číslice 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

A51 MACRO ASSEMBLER POKUSNY PROGRAM DATE 10/3/007 PAGE 1

ČÍSELNÉ SOUSTAVY PŘEVODY

Title: IX 6 11:27 (1 of 6)

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

Princip funkce počítače

E. Pohyblivářádováčárka

Čísla a číselné soustavy.

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

Jak v Javě primitivní datové typy a jejich reprezentace. BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické

B. Sčítání,odčítání adoplňkovýkód

Procesory z řady 8051

Ahoj mami. Uložení dat v počítači. Příklady kódování dat. IAJCE Přednáška č. 4

C2115 Praktický úvod do superpočítání

35POS 2010 Počítačové systémy 1 Úvod, jazyk C Doc. Ing. Bayer Jiří, Csc. Ing. Pavel Píša

Algoritmy a datové struktury

Akademický rok: 2004/05 Datum: Příjmení: Křestní jméno: Osobní číslo: Obor:

Principy počítačů. Prof. RNDr. Peter Mikulecký, PhD.

Čísla v plovoucířádovéčárce. INP 2008 FIT VUT v Brně

ČÍSELNÉ SOUSTAVY. Číselnou soustavu, která pro reprezentaci čísel využívá pouze dvou číslic, nazýváme soustavou dvojkovou nebo binární.

CW01 - Teorie měření a regulace

Zpráva o průběhu přijímacího řízení na vysokých školách dle Vyhlášky MŠMT č. 343/2002 a její změně 276/2004 Sb.

Úvod do programování 7. hodina

Rozhraní mikrořadiče, SPI, IIC bus,..

Číselné soustavy. Ve světě počítačů se využívají tři základní soustavy:

MSP 430F1611. Jiří Kašpar. Charakteristika

VY_32_INOVACE_CTE_2.MA_04_Aritmetické operace v binární soustavě Střední odborná škola a Střední odborné učiliště, Dubno Ing.

Algoritmizace a programování

požadovan adované velikosti a vlastností Interpretace adresy POT POT

Přednáška , kat. měření, ČVUT - FEL, Praha J. Fischer. A4B38NVS, 2012, J.Fischer, kat. měření,, ČVUT - FEL 1

ŠESTNÁCTIKANÁLOVÝ A/D PŘEVODNÍK ±30 mv až ±12 V DC, 16 bitů

Informatika Datové formáty

3. Celistvé výrazy a jejich úprava 3.1. Číselné výrazy

18A - PRINCIPY ČÍSLICOVÝCH MĚŘICÍCH PŘÍSTROJŮ Voltmetry, A/D převodníky - principy, vlastnosti, Kmitoměry, čítače, fázoměry, Q- metry

Klimatizace. Třída: 4.C. Střední Průmyslová Škola Elektrotechnická Havířov Protokol do MIT. Skupina: 3. Zpráva číslo: 3

Program "Světla" pro mikropočítač PMI-80

DRAK 3 INTELIGENTNÍ A/D PŘEVODNÍK. 3 VSTUPY: 0(4) - 20mA, 0-5/10V VÝSTUP: LINKA RS485 MODUL NA DIN LIŠTU RS485

5. A/Č převodník s postupnou aproximací

2 Ukládání dat do paměti počítače

Způsoby realizace této funkce:

Úloha 1 Spojte binární obrazy na obrázku s hodnotami, které reprezentují.

Celá čísla. Celá čísla jsou množinou čísel, kterou tvoří všechna čísla přirozená, čísla k nim opačná a číslo nula.

CX77 IV Elektronická kalkulačka s tiskárnou Uživatelský manuál

velikosti vnitřních pamětí? Jaké periferní obvody má na čipu a k čemu slouží? Jaká je minimální sestava mikropočítače z řady 51 pro vestavnou aplikaci

Pohled do nitra mikroprocesoru Josef Horálek

Překladač - Assembler, úloha SW_ UART

Převodník DCPSE. Komunikační protokol

Překladač - Assembler. kat. měření, ČVUT - FEL, Praha A3B38MMP, X38MIP Přednáška 3 - část. J. Fischer

Napájení mikroprocesorů. ČVUT- FEL, katedra měření, přednášející Jan Fischer. studenty zapsané v předmětu: A4B38NVS

Řádkové snímače CCD. zapsané v předmětu: Videometrie a bezdotykové měření, ČVUT- FEL, katedra měření, přednášející Jan Fischer

Převod Bin do BCD pomocí Hornerova schématu

Mikrokontroléry. Doplňující text pro POS K. D. 2001


Informační a komunikační technologie

P2 Číselné soustavy, jejich převody a operace v čís. soustavách

DESKA ANALOGOVÝCH VSTUPŮ ±24mA DC, 16 bitů

Už známe datové typy pro representaci celých čísel i typy pro representaci

Úloha- Systém sběru dat, A4B38NVS, ČVUT - FEL,

SPINEL. Komunikační protokol. Obecný popis. Verze 1.0

Dělení. MI-AAK(Aritmetika a kódy)

ETC Embedded Technology Club 5. setkání

Komunikační protokol MODBUS RTU v senzoru vlhkosti a teploty THT

Direct Digital Synthesis (DDS)

Vícebytová celočíselná aritmetika

Transkript:

Čí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 1 2 0010 2 3 0011 3 4 0100 4 5 0101 5 6 0110 6 7 0111 7 8 1000 8 9 1001 9 10 1010 A 11 1011 B 12 1100 C 13 1101 D 14 1110 E 15 1111 F 16 1 0000 10h A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 2

Čísla 4, 8 bitová dec bin. hex. 0 0000 0 1 0001 1 2 0010 2 3 0011 3 4 0100 4 5 0101 5 6 0110 6 7 0111 7 8 1000 8 9 1001 9 10 1010 A 11 1011 B 12 1100 C 13 1101 D 14 1110 E 15 1111 F 16 1 0000 10h n- dec. 2 n bin. 2 n hex. 2 n dec 0 0000 0001 1 h 1 1 0000 0010 2 h 2 2 0000 0100 4 h 4 3 0000 1000 8 h 8 4 0001 0000 10 h 16 5 0010 0000 20 h 32 6 0100 0000 40 h 64 7 0000 0000 1000 0000 80 h 128 8 0000 0001 0000 0000 1 00 h 256 A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 3

Čísla 4, 8, 16 - bitová dec bin. hex. n- dec. 2 n bin. 2 n hex. 2 n dec 0 0000 0 0 0000 0001 1 h 1 1 0001 1 1 0000 0010 2 h 2 2 0010 2 2 0000 0100 4 h 4 3 0011 3 3 0000 1000 8 h 8 4 0100 4 4 0001 0000 10 h 16 5 0101 5 5 0010 0000 20 h 32 6 0110 6 6 0100 0000 40 h 64 7 0111 7 7 0000 0000 1000 0000 80 h 128 8 1000 8 8 0000 0001 0000 0000 1 00 h 256 9 1001 9 9 0000 0010 0000 0000 2 00 h 512 (1/2 k) 10 1010 A 10 0000 0100 0000 0000 4 00 h 1 024 1 k 11 1011 B 11 0000 1000 0000 0000 8 00 h 2 048 2 k 12 1100 C 12 0001 0000 0000 0000 10 00 h 4 096 4 k 13 1101 D 13 0010 0000 0000 0000 20 00 h 8 192 8 k 14 1110 E 14 0100 0000 0000 0000 40 00 h 16 384 16 k 15 1111 F 15 1000 0000 0000 0000 80 00 h 32 768 32 k 16 1 0000 10h 16 1 0000 0000 0000 0000 1 00 00 h 65 536 64 k A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 4

Čísla 10-24 - bitová n- dec. 2 n k / M 2 n hex. 2 n dec největší zobraz. číslo 10 2 10 1 k 4 00 h 1 024 3FF 1 k kilo 11 2 11 2 k 8 00 h 2 048 7FF 12 2 12 4 k 10 00 h 4 096 FFF 13 2 13 8 k 20 00 h 8 192 1FFF 14 2 14 16 k 40 00 h 16 384 3FFF 15 2 15 32 k 00 00 80 00 h 32 768 7FFF 16 2 16 64 k 00 01 00 00 h 65 536 FFFF 64 k adr. u 8051 17 2 17 128 k 00 02 00 00 h 131 072 1 FFFF 18 2 18 256 k 00 04 00 00 h 262 144 3 FFFF 19 2 19 512 k 00 08 00 00 h 524 288 7 FFFF 20 2 20 1 M 00 10 00 00 h 1 048 576 F FFFF 1 M mega 21 2 21 2 M 00 20 00 00 h 2 097 152 1F FFFF 22 2 22 4 M 00 40 00 00 h 4 194 304 3F FFFF 23 2 23 8 M 00 80 00 00 h 8 388 608 7F FFFF 24 2 24 16 M 01 00 00 00 h 16 777 216 FF FFFF A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 5

Čísla 25 až 32 -bitová n- Mega/ Giga 2 n hex. dec. 2 n největší zobraz. číslo 25 2 25 32 M 02 00 00 00 h 33 554 432 1FF FFFF 26 2 26 64 M 04 00 00 00 h 67 108 864 3FF FFFF 27 2 27 128 M 08 00 00 00 h 134 217 728 7FF FFFF 28 2 28 256 M 10 00 00 00 h 268 435 456 FFF FFFF 29 2 29 512 M 20 00 00 00 h 538 870 912 1FFF FFFF 30 2 30 1 G 40 00 00 00 h 1 073 741 824 3FFF FFFF 1024 M -1G 31 2 31 2 G 80 00 00 00 h 2 147 483 648 7FFF FFFF 32 2 32 4 G 1 00 00 00 00 h 4 294 967 296 FFFF FFFF 4 Giga u ARM - Cortex M3 A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 6

Úseky paměťového prostoru - bloky délka: dec. hex. poč. - konc. adr. dekadicky adr.sig. 1 024 1 k 4 00 h 00-3 FF h 0-1023 10!! 2 048 2 k 8 00 h 00-7 FF h 0-2 047 11 4 096 4 k 10 00 h 00 - F FF h 0-4 095 12 8 192 8 k 20 00 h 00-1F FF h 0-8 191 13 16 384 16 k 40 00 h 00-3F FF h 0-16 383 14 32 768 32 k 80 00 h 00-7F FF h 0-32 767 15 65 536 64 k 1 00 00 h 00 - FF FF h 0-65 535 16 Příklad: Paměťový blok o délce 8k je umístěn od A000h, na jaké adrese je poslední lokace paměti? první lokace A000 h, poslední A0 00 h + 1F FF h = BF FF h A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 7

Bloky 1k, 1M, 1G délka (dec.) délka (hex.) konc. adr. adr.sig. 1 024 1 k 40 00 h 3 FF h 10!! 65 536 64 k 1 00 00 h FF FF h 16 1 048 576 1 M 10 00 00 h 0F FF FF h 20!! 16 777 216 16 M 1 00 00 00 h FF FF FF h 24 1 073 741 824 1 G 40 00 00 00 h 3F FF FF FF h 30!! 4 294 967 296 4 G 1 00 00 00 00 h FF FF FF FF h 32 A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 8

Určení počtu bitů čísla - s. 1 Příklad. Kolik bitů musí mít čítač pro odměřování polohy inkrementálním snímačem s rozlišením polohy na 1um, a délkou 100 mm. Bude postačovat interní 16- bitový čítač v STM32? Řešení 1: Opakovaně dělit číslem 2, dokud výsledek nebude =1 nebo menší. Počet dělení = počet bitů 100000, 50000, 25000, 12500,...,... 6,1035.., 3,051.., 1,5258.., 0,7629.. 1.dělení 2. 3. 14. 15. 16. 17. A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 9

Určení počtu bitů čísla - s. 1 Příklad. Kolik bitů musí mít čítač pro odměřování polohy inkrementálním snímačem s rozlišením polohy na 1um, a délkou 100 mm. Bude postačovat interní 16- bitový čítač v STM32? Řešení 1: Opakovaně dělit číslem 2, dokud výsledek nebude =1 nebo menší. Počet dělení = počet bitů 100000, 50000, 25000, 12500,...,... 6,1035.., 3,051.., 1,5258.., 0,7629.. 1.dělení 2. 3. 14. 15. 16. 17. Řešení 2: Opakovaně násobit 2 x 2 x 2..... mocniny 2 dokud výsledek nebude roven x nebo větší... 2, 4, 8, 16, 32, 64, 128,..., 32768, 65536, 131072 2 1, 2 2 2 3 2 4 2 5 2 6 2 7 2 15 2 16 2 17 A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 10

Určení počtu bitů čísla - s.2 Příklad. Kolik bitů musí mít čítač pro odměřování polohy inkrementálním snímačem s rozlišením polohy na 1um, a délkou 100 mm. Bude postačovat interní 16- bitový čítač v STM32? Řešení 3: Převést dek. číslo x =100 000 d na bin. - 1 1000 0110 1010 0000 b, spočítat bity - představuje to 17 bitové číslo A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 11

Určení počtu bitů čísla - s.2 Příklad. Kolik bitů musí mít čítač pro odměřování polohy inkrementálním snímačem s rozlišením polohy na 1um, a délkou 100 mm. Bude postačovat interní 16- bitový čítač v STM32? Řešení 3: Převést dek. číslo x =100 000 d na bin. - 1 1000 0110 1010 0000 b, spočítat bity - představuje to 17 bitové číslo Řešení 4: Určit výpočtem počet bitů, hledá se n, pro které platí 2 n = X, případně nejmenší n, kde 2 n > X n - to je ale logaritmus při základu 2, dvojkový logaritmus jak určit logaritmus se základem 2? log 2 x = ln x / ln 2, (přirozený logaritmus) log 2 x = log x / log 2 (dekadický logaritmus) log 2 = 0,30103 (log 100 000)/ log 2 = 5 / 0,30103= 16, 6 Nutný minimálně 17 bitový čítač A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 12

Určení počtu bitů čísla - s.2 Příklad. Kolik bitů musí mít čítač pro odměřování polohy inkrementálním snímačem s rozlišením polohy na 1um, a délkou 100 mm. Bude postačovat interní 16- bitový čítač v STM32? Řešení 3: Převést dek. číslo x =100 000 d na bin. - 1 1000 0110 1010 0000 b, spočítat bity - představuje to 17 bitové číslo Řešení 4: Určit výpočtem počet bitů, hledá se n, pro které platí 2 n = X, případně nejmenší n, kde 2 n > X n - to je ale logaritmus při základu 2, dvojkový logaritmus jak určit logaritmus se základem 2? log 2 x = ln x / ln 2, (přirozený logaritmus) log 2 x = log x / log 2 (dekadický logaritmus) (log 100 000)/ log 2 = 5 / 0,30103 = 16, 6 Nutný minimálně 17 bitový čítač pamatovat si dek. logaritmus log 2 = 0,30103, (odchylka zaokrouhl. = 4.10-9 ) nebo alespoň log 2 = 0,3 (odchylka abs 0,00103, rel. 0,34 %) A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 13

Určení počtu bitů čísla - s.3 Místo dělení 0,3 je možno násobit 3,32, zaokrouhleně 3,3 log 2 x = log x / log 2 = (1/ log 2) log x = 3,32 log x = ~ 3,3 log x binární číslo má počet míst, který se určí přibližně jako 3,3 násobek dekadického logaritmu čísla ~ 3,3. log x Opačný výpočet kolik dekadických řádů přibližně má n bitové binární číslo log x = log 2.log 2 x = 0,3. log 2 x (počet míst binárního čísla x 0,3) Kolika místný voltmetr by představovalo použití 14 bitového převodníku A/D? (binární čísla 00 0000 0000 0000 až 11 1111 1111 1111)? log x = log 2. log 2 x = 0,3. 14 = 4,2 14 bitů představuje rozlišení více než 4 -místného voltmetru A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 14

Využití logaritmu se základem 2 pro výpočet počtu bitů Dek. logaritmus čísla log 2 = 0,30103, (zaokrouhlení log 2 = 0,3) (opakování: dek. logaritmus čísla log ( 10 m ) = m opakování: log (a * b) = log a + log b, log (a / b)= log a - log b A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 15

Využití logaritmu se základem 2 pro výpočet počtu bitů Dek. logaritmus čísla log 2 = 0,30103, (zaokrouhlení log 2 = 0,3) (opakování: dek. logaritmus čísla log ( 10 m ) = m opakování: log (a * b) = log a + log b, log (a / b)= log a - log b Využití pro zjednodušené výpočty - do kolika bitového binárního čísla se zobrazí dekadická čísla 100, 200, 500,1000, 2000, 5000, 10000, odhad, kolika bitové je bin. číslo představující hodnotu 10 000 000 000 =10 10 m =10 n = log x/ log 2 = 10 / 0,3 = 33,33 tedy 34 bitů Kolik bitů je zapotřebí pro adresování bloku o délce 1 073 741 824 (1G) log 2 (1 073 741 824) = log (073741824) / log 2 = 9,0309.. / 0,30103.. = ~30 číslo 1 073 741 824 = 2 30 - (souhlasí s tabulkou), je třeba 30 bitů A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 16

Využití logaritmu se základem 2 pro odhad odhad n pro čísla typu x 1 = 10 m, x 2 = 2*10 m, x 3 = 0,5*10 m n = log x 1 / log 2 = m / log 2= m / 0,30103 = m * 3,322 = ~ m / 0,3 (zjednodušením 0,301030 na 0,3 vychází odhad logaritmu vyšší o 0,3%) kolika bitové číslo je 1 000 000? n= log (1* 10 6 ) / log 2= 6/0,3 = 20 bitů kolika bitové číslo je 2 000 000? (opakování: log (2 * 10 6 ) = log 10 6 + log 2 ) n = log (2 *10 6 ) / log 2= (log 10 6 + log 2) / log 2= = (log 1*10 6 / log 2) + (log 2/ log 2)= (6 / 0,3) +1=20 + 1= 21 bitů A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 17

Využití logaritmu se základem 2 pro odhad odhad n pro čísla typu x 1 = 10 m, x 2 = 2*10 m, x 3 = 0,5*10 m n = log x 1 / log 2 = m / log 2= m / 0,30103 = m * 3,322 = ~ m / 0,3 (zjednodušením 0,301030 na 0,3 vychází odhad logaritmu vyšší o 0,3%) kolika bitové číslo je 1 000 000? n = log (1*10 6 ) / log 2= 6/0,3 = 20 bitů kolika bitové číslo je 2 000 000? (opakování: log (2 * 10 6 )= log 10 6 + log 2 ) n = log (2 * 10 6 ) / log 2= (log 10 6 + log 2) / log 2 = = (log 1*10 6 / log 2) + (log 2/ log 2)= (6 / 0,3) +1=20 +1= 21 bitů kolika bitové číslo je 500 000 = 0,5* 10 6? log 500 000 = log (1000 000 / 2) = log 1000 000 - log 2 n= (log 500 000)/log 2= (6-0,3) / 0,3= 6 / 0,3-0.3/ 0,3 = 20-1 = 19 bitů A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 18

Určení počtu dekadických míst Opačný výpočet kolik řádů (přibližně) má dekadický ekvivalent n bitového binárního čísla? log x = log 2. log 2 x = 0,3. log 2 x (počet míst binárního čísla x 0,3) Kolika místný voltmetr by představovalo použití 14 bitového převodníku A/D? (binární čísla 00 0000 0000 0000 až 11 1111 1111 1111)? log x = log 2. log 2 x = 0,3. 14 = 4,2 14 bitů odpovídá rozlišení více než 4-místného voltmetru Signálový procesor ASP2185 má pro funkci MAC (multiply and accumulate) registr o délce 48 bitů. Jakému dekadickému číslu (řád) odpovídá maximální možný výsledek (bez znaménka)? log x = 0,3. 48 = 14,4 Výsledek odpovídá řádově číslu 10 14 A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 19

Čísla - bez znaménka 8 bitové číslo bez znaménka Dec hex bin 0, 1, 2 až 255 0 FFh 0000 0000 b až 1111 1111 b A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 20

Čísla - bez znaménka 8 bitové číslo bez znaménka Dec hex bin 0, 1, 2 až 255 0 FFh 0000 0000 b až 1111 1111 b 16 bitové číslo bez znaménka Dec hex bin 0, 1, 2 až 65 535 0 FFFFh 0.. b až 1111 1111 1111 1111 b A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 21

Zobrazení kladných a záporných čísel - dvojkový doplněk Kladná čísla - nejvyšší bit 0 záporná čísla - nejvyšší bit 1 kladná čísla - přímo záporná čísla - dvojkový doplněk příklad pro 8 bitů analogicky pro 16, 32, 64 bitů 1111 1111 1000 0000 0111 1111 možnost zobrazení - kladná čísla - v rozsahu 0 až +2 (n-1) -1 (+127; + 32 767; + 2147483647;... záporná čísla - v rozsahu 0 až - 2 (n-1) (- 128; - 32 768; - 2147483648;... -128-1 0 +127 A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 22

Čísla- 8 bit bez znam., reprezentace zápor. č. 8 bit se zn. 8 bitové číslo se znaménkem dvojkový doplněk 0, +1,+2. až +127 d 7Fh 0000 0000 b až 0111 1111 b -1, -2, až -128 1111 1111 b až 1000 0000 b Výpočet: kladná čísla - přímo binární ekvivalent záporná -dvojkový doplněk Určení dvojkového doplňku, negace všech bitů a přičtení 1 A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 23

Čísla- 8 bit bez znam., reprezentace zápor. č. 8 bit se zn. 8 bitové číslo se znaménkem dvojkový doplněk 0, +1,+2. až +127 d 7Fh 0000 0000 b až 0111 1111 b -1, -2, až -128 1111 1111 b až 1000 0000 b Výpočet: kladná čísla - přímo binární ekvivalent záporná -dvojkový doplněk Určení dvojkového doplňku, negace všech bitů a přičtení 1 Příklad určení dvojkového doplňku pro čísla -1, -128, 1d 0000 0001 b 128 d 1000 0000 b negace 1111 1110 b 0111 1111 b + 0000 0001 + 0000 0001 1111 1111 b = -1 d 1000 0000 = -128 d FFh 80 h A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 24

Čísla -16 bitová se znaménkem, dvojkový doplněk 16 bitové číslo se znaménkem, kladná čísla 0, 1, 2 až 32 767 d 0000 h až 7 F FF h 0000 0000 0000 0000 b až 0111 1111 1111 1111 A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 25

Čísla -16 bitová se znaménkem, dvojkový doplněk 16 bitové číslo se znaménkem, kladná čísla 0, 1, 2 až 32 767 d 0000 h až 7 F FF h 0000 0000 0000 0000 b až 0111 1111 1111 1111 reprezentace 1 ve dvojkovém doplňku, záporná čísla 1d 0000 0000 0000 0001 b (1) negace 1111 1111 1111 1110 b + 1 1111 1111 1111 1111 b = -1 d F F F F h (bez znaménka odpovídá 65 535) A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 26

Čísla -16 bitová se znaménkem, dvojkový doplněk 16 bitové číslo se znaménkem, kladná čísla 0, 1, 2 až 32 767 d 0000 h až 7 F FF h 0000 0000 0000 0000 b až 0111 1111 1111 1111 reprezentace 1 ve dvojkovém doplňku, záporná čísla 0000 0000 0000 0001 b (1) negace 1111 1111 1111 1110 b + 1 1111 1111 1111 1111 b = -1 d F F F F h (bez znaménka odpovídá 65 535) 1000 0000 0000 0000 b (32768) negace 0111 1111 1111 1111 b + 1 1000 0000 0000 0000 b = -32 768 d 8 0 0 0 h (bez znaménka by odpovídalo 32 768 ) A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 27

Čísla - se znaménkem, dvojkový doplněk, rekapitulace Záporné číslo nejvyšší bit (MSB) 1, kladné číslo- (MSB) 0 Největší kladné číslo: 0 na nejvyšším bitu a samé 1 0111 1111 Největší zápor. číslo: 1 na nejvyšším bitu a samé 0 1000 0000-1 reprezentované samé 1 1111 1111 (1111 1111 1111 1111) + 1 0000 0001 (0000 0000 0000 0001) A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 28

Čísla - se znaménkem, dvojkový doplněk, rekapitulace Záporné číslo nejvyšší bit (MSB) 1, kladné číslo- (MSB) 0 Největší kladné číslo: 0 na nejvyšším bitu a samé 1 0111 1111 Největší zápor. číslo: 1 na nejvyšším bitu a samé 0 1000 0000-1 reprezentované samé 1 1111 1111 (1111 1111 1111 1111) + 1 0000 0001 (0000 0000 0000 0001) Převod záporného čísla nazpět na kladné - abs. hodnota Podobný způsob, negace a přičíst 1. Nejdříve test na záporné číslo MSB =? 1 a pak až úprava -128d 1000 0000 b -1 d 1111 1111 negace 0111 1111 b 0000 0000 + 1 + 0000 0001 1000 0000 b = 128 d 0000 0001 = 1 d A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 29

Součet čísel Záporné číslo nejvyšší bit (MSB) = 1, kladné číslo- MSB= 0 0001 0000 b +16 d +16 + ( -1) = 15 + 1111 1111 b -1 ( záporné číslo) 1 0000 1111 b = +1 5 d OV= 0 A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 30

Součet čísel Záporné číslo nejvyšší bit (MSB) = 1, kladné číslo- MSB= 0 0001 0000 b +16 d +16 + ( -1) = 15 + 1111 1111 b -1 ( záporné číslo) 1 0000 1111 b = +1 5 d OV= 0 Přetečení: 0111 1111 b +127 d +127 +1 - chyba + 0000 0001 b +1 ( záporné číslo) 1 1000 0000 b = -128 chyba OV =1 nastává přenos z D6 do D7, ale není přenos z D7 do C A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 31

Součet čísel Záporné číslo nejvyšší bit (MSB) = 1, kladné číslo- MSB= 0 0001 0000 b +16 d +16 + ( -1) = 15 + 1111 1111 b -1 ( záporné číslo) 1 0000 1111 b = +1 5 d OV= 0 Přetečení: 0111 1111 b +127 d +127 +1 - chyba + 0000 0001 b +1 ( záporné číslo) 1 1000 0000 b = -128 chyba OV =1 nastává přenos z D6 do D7, ale není přenos z D7 do C Příznak OV - Oveflow - nastaven - pokud je součet kladných čísel - záporný, Nastává přenos z D6 do D7, ale není přenos z D7 do C nebo součet záporných čísel- kladný, Nastává přenos z D7 do C, ale není přenos z D6 do D7 A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 32

Součet čísel Záporné číslo nejvyšší bit (MSB) = 1, kladné číslo- MSB= 0 0001 0000 b +16 d +16 + ( -1) = 15 + 1111 1111 b -1 ( záporné číslo) 1 0000 1111 b = +1 5 d OV= 0 Přetečení: 0111 1111 b +127 d +127 +1 - chyba + 0000 0001 b +1 ( záporné číslo) 1 1000 0000 b = -128 chyba OV =1 nastává přenos z D6 do D7, ale není přenos z D7 do C Příznak OV - Oveflow - nastaven - pokud je součet kladných čísel - záporný, Nastává přenos z D6 do D7, ale není přenos z D7 do C nebo součet záporných čísel- kladný, Nastává přenos z D7 do C, ale není přenos z D6 do D7 C - Carry přetečení z D7 příznakové bity C, OV ve stavovém slově PSW A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 33

Součet záporných čísel Záporné číslo nejvyšší bit ( MSB) 1, kladné číslo- MSB 0 11111000 b - 8 d - 8 + ( -7) =? + 11111001 b -7 d 11110001 b = -15 d - 8 + ( -7) = -15 správně nastává současně přenos (z D7 do C) i (z D6 do D7), OV=0 A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 34

Součet záporných čísel Záporné číslo nejvyšší bit ( MSB) 1, kladné číslo- MSB 0 11111000 b - 8 d - 8 + ( -7) =? + 11111001 b -7 d 11110001 b = -15 d - 8 + ( -7) = -15 správně nastává současně přenos (z D7 do C) i (z D6 do D7), OV=0 1000 0000 b -128 d -127 + (-128) =? + 1000 0001 b -127 d C 1 0000 0001 b = + 1-127 + (-128)= +1 - chyba nastává přetečení C (z D7 do C), ale není současně (z D6 do D7), OV=1 Chyba - součet záporných čísel je kladný A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 35

Součet záporných čísel Záporné číslo nejvyšší bit ( MSB) 1, kladné číslo- MSB 0 11111000 b - 8 d - 8 + ( -7) =? + 11111001 b -7 d 11110001 b = -15 d - 8 + ( -7) = -15 správně nastává současně přenos (z D7 do C) i (z D6 do D7), OV=0 1000 0000 b -128 d -127 + (-128) =? + 1000 0001 b -127 d 0000 0001 b = + 1-127 + (-128)= +1 - chyba nastává přetečení C (z D7 do C), ale není současně (z D6 do D7), OV=1 Chyba - součet záporných čísel je kladný Použití příznaků při sčítání: C - Carry přetečení z D7 chyba součtu (přetečení) čísel bez znaménka OV - overflow - chyba součtu (přetečení) čísel se znaménkem A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 36

Výpočet nastavení SP u AT89C52 Příklad: Jaké je možné max. nastavení ukazatele zásobníku - SP u AT89C52, pokud je zapotřebí 8 zápisů návratové adresy ( 8x CALL za sebou)? Návratová adresa = 16 bitů, 2 Byte, 8 x 2 = 16 Byte dec. = 10 hex interní RAM u 89C52 (IDATA), nepřímo adr. 256 Byte, poslední adresa FFh FFh - 10h = EF h - první lokace použitá pro zásobník, Před zápisem do zásobníku se SP u 8052 nejdříve inkrementuje nastavení SP na EFh - 1 = EE h Řešení MOV SP, # 0EEh blok o délce adr. poč.- konc. dekadicky 256 1 00 h 00 - FF h 0-255 A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 37

Určení počtu adresovacích signálů Příklad: Kolik adresových lokací pam. XDATA může adresovat procesor AT89C52? AT89C52 generuje 16 bitových signálů A15 až A0, tedy 2 16 = 65 536 = 64 k Kolik adresových bloků o délce 8K je možno adresovat procesorem AT89C52, jestliže generuje 16 - bitovou adresu 16 bitů - 65 536 dec, 64 K, je možno adresovat celkem 8 bloků po 8 k Kolik adresovacích vstupů povede do bloku 8 k 8 k - 8 x blok 1 K, pro 1 K - 10 adr. signálů, pro číslo 8 jsou 3 sig. celkem 10 + 3 = 13 adresovacích vstupů - signálů Jiný přístup:. 8k- 8 x 1024-8192 = 2 13-13 signálů A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 38

Výpočet délky programového kódu Příklad: Program je umístěn mezi adresami A100 h a A724 h ve vývojové desce. Jak dlouhý je kód a bylo by možno jej umístit do AT89C2051? A7 24 h poslední obsazená adresa - poslední Byte - A1 00 h první obsazená adresa - první Byte 06 24 h rozdíl adres Pozor! celkem je ale obsazeno 624 h +1 = 625 h Vysvětlení 0000 Byte 1 0001 Byte 2 0002 Byte 3 2-0 = 2, 2 + 1 = 3 Byte celkem 625 h = 6 x 2 8 + 2 x 2 4 + 5 = 6 x 256 + 2 x 16 + 5 = 1 536 + 32 + 5 = 1573 Délka kódu je 1573 byte, do prog. paměti AT89C2051 se vejde, protože 1573 je méně něž 2 K = 2048 A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 39

Výpočet rozlišení převodníku A/D, průměrování Příklad: Převodník A/D v procesoru STM32 je 12 - bitový, jaký je jeho krok, jestliže jeho rozsah je 3,3 V? 3,3 V/ 4096 = 0.805 664 mv Příklad: Z kolika vzorků je možno jednoduše počítat průměr, jestliže je maximální dosažitelná hodnota každého odměru délky impulsu je 7000 impulsů dec. a využívá se přičítání do 16 -bitového výsledku? 16- bitové číslo - max zobrazitelné číslo (bez znaménka) 65 535 65 535 / 7000 = 9,3 Teoreticky by bylo možno počítat průměr z 9 odměrů, prakticky se využije 8 odměrů. 8 x 7000 = 56 000, = DAC0 h Dělení 8, realizace - posunem 16- bitového součtu v registrech 3x doprava. (Využití laboratorní úloze ve cvičeních.) Obecně, používat dělení, 2, 4,8,16, 32,... A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 40

Zjednodušené výpočty Dělení bin. čísla číslem 2, 4, 8, 16 posun o 1, 2, 3, 4 místa doprava Násobení bin. čísla číslem 2, 4, 8, 16 posun o 1, 2, 3, 4 místa doleva Průměrování z 8 odměrů (binární čísla) součet hodnot z 8 odměrů a posun výsledku o 3 místa doprava (dělení 8) (proto mají osciloskopy průměrování z 2, 4, 8, 16,.. odměrů) Násobení 3x (3 dekadicky = 11 b) 3. n = 2. n + 1.n číslo n binární přičíst k bin. číslu posunutému o 1 místo doprava analogicky možno použít i pro jiná čísla A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 41

Průměrování Průměrování, podstata a použití - výklad na tabuli Snížení působení šumu průměrováním (podmínka- náhodný šumový signál) Šum zde chápán jako náhodný signál, který se přičítá k výsledku měření šum střední hodnota rovna nule Při použití střední hodnoty z nekonečného počtu odměrů vyloučení šumu Reálně konečný počet odměrů pro určení průměru Při n odměrech snížení působení šumu na hodnotu oproti původnímu 16 =4 působení, (16 odměrů, čtvrtinové působení šumů) Průměrování často využíváno v přístrojích viz. funkce osciloskopu Volba počtu vzorků pro průměrování 2, 4, 8, 16, 32 pro snazší realizaci dělení Vedlejší efekt průměrování zvýšení rozlišovací schopnosti Funkce průměrování v laboratorní úloze ohmetr, voltmetr Ohmetr rozlišení bez průměrování na krok po 7 Ohmech ( 7, 14, 21, ) rozlišení s průměrováním z 16 odměrů na jednotky Ohmů 1 n A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 42

Průměrování Průměrování metoda zpracování signálu pro potlačení působení šumu viz. též. http://en.wikipedia.org/wiki/signal_averaging V úloze Ohmetr, Voltmetr - se průměrováním sníží fluktuace výsledku měření A3B38MMP, 2014, J.Fischer, ČVUT - FEL, kat. měření 43