Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
Informatika / … o číslech
(čísla typu integer - celá čísla) KIT.PEF.CZU
2
Celá čísla – un/signed integer
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Celá čísla – un/signed integer ve dvojkové soustavě jsou celá čísla vyjádřena mocninnou řadou se základem 2 k dispozici jsou tedy pouze znaky 0 a 1 n-bitový obrazec poskytuje 2n různých kombinací ty lze využít např. k zobrazení čísel { 0,1, …(2n -1) } unsigned integer - neznaménkový tvar celého čísla nebo např. { (-2n-1) , …, -1, 0, 1, …, (2n-1-2) , (2n-1-1) } signed integer - znaménková reprezentace celého čísla
3
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 + 1 Předpokládejme, že pro uložení celého čísla vymezíme paměťový prostor o velikosti 4 bity 0001
4
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 Předpokládejme, že pro uložení celého čísla vymezíme paměťový prostor o velikosti 4 bity 0001 + 1 0010 4-bitový obrazec poskytuje 24 = 16 různých kombinací Sečtením dvou jedniček odpovídajících stejnému řádu (stejné mocnině dvou) dojde k přenosu do vyššího řádu
5
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 Předpokládejme, že pro uložení celého čísla vymezíme paměťový prostor o velikosti 4 bity 0001 0010 + 1 0011 4-bitový obrazec poskytuje 24 = 16 různých kombinací Sečtením dvou jedniček odpovídajících stejnému řádu (stejné mocnině dvou) dojde k přenosu do vyššího řádu
6
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 Předpokládejme, že pro uložení celého čísla vymezíme paměťový prostor o velikosti 4 bity 0001 0010 0011 + 1 0100 4-bitový obrazec poskytuje 24 = 16 různých kombinací Sečtením dvou jedniček odpovídajících stejnému řádu (stejné mocnině dvou) dojde k přenosu do vyššího řádu
7
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 Předpokládejme, že pro uložení celého čísla vymezíme paměťový prostor o velikosti 4 bity 0001 0010 0011 0100 + 1 4-bitový obrazec poskytuje 24 = 16 různých kombinací 0101 Sečtením dvou jedniček odpovídajících stejnému řádu (stejné mocnině dvou) dojde k přenosu do vyššího řádu
8
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 Předpokládejme, že pro uložení celého čísla vymezíme paměťový prostor o velikosti 4 bity 0001 0010 0011 0100 0101 4-bitový obrazec poskytuje 24 = 16 různých kombinací + 1 0110 Sečtením dvou jedniček odpovídajících stejnému řádu (stejné mocnině dvou) dojde k přenosu do vyššího řádu Přenos může způsobit, že součet není v daném počtu bitů zobrazitelný
9
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 Předpokládejme, že pro uložení celého čísla vymezíme paměťový prostor o velikosti 4 bity 0001 0010 0011 0100 0101 4-bitový obrazec poskytuje 24 = 16 různých kombinací 0110 0111 1000 Sečtením dvou jedniček odpovídajících stejnému řádu (stejné mocnině dvou) dojde k přenosu do vyššího řádu 1001 1010 1011 1100 Přenos může způsobit, že součet není v daném počtu bitů zobrazitelný 1101 1110 1111 V takovém případě hovoříme o přetečení 1 0000
10
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 1 0000
11
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 1 0000
12
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 1 0000
13
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 1 0000
14
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 1 0000
15
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0011 0010 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 1 0000
16
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0100 0101 0011 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 1 0000
17
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0101 0011 0110 0111 1000 0100 1001 1010 1011 1100 1101 1110 1111 1 0000
18
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0011 0110 0111 1000 0100 1001 1010 0101 1011 1100 1101 1110 1111 1 0000
19
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0011 0111 1000 0100 1001 1010 0101 1011 1100 1101 0110 1110 1111 1 0000
20
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0011 1000 0100 1001 1010 0101 1011 1100 1101 0110 1110 1111 0111 1 0000
21
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0011 0100 1001 1010 0101 1011 1100 1101 0110 1110 1111 0111 1 0000 1000
22
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0011 0100 1010 0101 1011 1100 1101 0110 1110 1111 1001 0111 1 0000 1000
23
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0011 0100 0101 1011 1100 1101 1010 0110 1110 1111 1001 0111 1 0000 1000
24
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0011 0100 1011 0101 1100 1101 1010 0110 1110 1111 1001 0111 1 0000 1000
25
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 0011 1100 0100 1011 0101 1101 1010 0110 1110 1111 1001 0111 1 0000 1000
26
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 0010 1101 0011 1100 0100 1011 0101 1010 0110 1110 1111 1001 0111 1 0000 1000
27
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 0001 1110 0010 1101 0011 1100 0100 1011 0101 1010 0110 1111 1001 0111 1 0000 1000
28
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 1111 0001 1110 0010 1101 0011 1100 0100 1011 0101 1010 0110 1001 0111 1 0000 1000
29
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 1 0000 0001 1 přetečení 1111 0001 0010 1 1110 0010 0011 1 1101 0011 1100 0100 1011 0101 1010 0110 1001 0111 1000
30
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i signed – horní bit signalizuje znaménko Integer – čtyřbitový model 0000 10 0000 1 0001 10 0000 0001 1 přetečení 1111 0001 0010 10 0010 1 1110 0010 0011 1 1101 0011 1100 0100 1011 0101 … atd. stále dokola 1010 0110 1001 0111 1000
31
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i Integer – čtyřbitový model 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 1 0000
32
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i Integer – čtyřbitový model 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 0000 1111 15 0001 1 1100 12 1101 13 11 1011 1110 14 1010 10 1001 9 0010 2 1000 8 0011 3 0100 4 0101 5 0111 7 0110 6 1 0000
33
Integer – čtyřbitový model
unsigned – všechny bity mají význam 2i Integer – čtyřbitový model 0000 1 0000 přetečení nechceme (výsledek chceme znát jednoznačně) 1111 0001 15 1 1110 0010 14 2 1101 3 0011 13 1100 12 4 0100 11 5 1011 0101 10 6 9 7 1010 0110 8 1001 0111 1000
34
Unsigned Integer přetečení nechceme (výsledek chceme znát jednoznačně)
unsigned – všechny bity mají význam 2i Unsigned Integer 0000 přetečení nechceme (výsledek chceme znát jednoznačně) 1111 0001 15 1 1110 0010 14 2 1101 3 0011 13 1100 12 4 0100 Dostáváme se do situace, kdy bitový obrazec značí čísla 0 až 2n-1 11 5 1011 0101 10 6 9 7 1010 0110 8 1001 0111 1000
35
Integer – čtyřbitový model
signed – horní bit signalizuje znaménko Integer – čtyřbitový model můžeme však chtít počítat i se zápornými čísly 0000 0001 1 1111 -1 1100 -4 0100 4 0011 3 1101 -3 1011 -5 0101 5 1110 -2 1010 -6 0110 6 0111 7 1001 -7 1000 0010 2 I zde chceme jednoznačný výsledek. Proto musíme kolizi mezi kladnými a zápornými čísly zabránit
36
Integer – čtyřbitový model
signed – horní bit signalizuje znaménko Integer – čtyřbitový model můžeme však chtít počítat i se zápornými čísly 0000 0001 1 1111 -1 1100 -4 0100 4 0011 3 1101 -3 1011 -5 0101 5 1110 -2 1010 -6 0110 6 0111 7 1001 -7 0010 2 -8 Pro největší záporné číslo vznikne potíž: neexistuje k němu opačné číslo 1000
37
Signed Integer můžeme však chtít počítat i se zápornými čísly
signed – horní bit signalizuje znaménko Signed Integer můžeme však chtít počítat i se zápornými čísly 0000 1111 0001 -1 1 1110 0010 -2 2 1101 -3 3 0011 Nyní můžeme chápat bitové obrazce např. jako čísla -8 až +7 tedy -23 až 23-1, -2(n-1) až 2(n-1)-1 1100 -4 4 0100 -5 5 1011 0101 -6 6 -7 7 1010 0110 -8 1001 0111 1000
38
Signed Integer Unsigned Integer
signed – horní bit signalizuje znaménko unsigned – všechny bity mají význam 2i Signed Integer Unsigned Integer 0111 1001 1000 1010 0110 1011 0101 1100 0100 0011 1101 1110 1111 0010 0001 0000 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 7 -7 -6 6 -5 5 -4 4 3 -3 -2 -1 2 1 -8 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 stejné kombinace mohou mít různý význam
39
dotazy?
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.