Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Jak postavit slovník z jedniček a nul
Search
Petr Viktorin
September 29, 2016
Technology
0
650
Jak postavit slovník z jedniček a nul
Slajdy k začátačnické přednášce o jedničkách a nulách, a o počítačové paměti.
Petr Viktorin
September 29, 2016
Tweet
Share
More Decks by Petr Viktorin
See All by Petr Viktorin
Komunitní kurzy
encukou
0
220
Python Packaging in Fedora
encukou
0
430
Python in Fedora
encukou
0
100
Essential Testing Concepts
encukou
0
100
Import Deep Dive
encukou
0
76
Dynamic Time Warping & Synchronizace videí
encukou
0
90
Python 3.4
encukou
0
100
Extending FreeIPA
encukou
0
370
import asyncio
encukou
0
550
Other Decks in Technology
See All in Technology
いま注目しているデータエンジニアリングの論点
ikkimiyazaki
0
600
「AI駆動PO」を考えてみる - 作る速さから価値のスループットへ:検査・適応で未来を開発 / AI-driven product owner. scrummat2025
yosuke_nagai
4
600
GC25 Recap+: Advancing Go Garbage Collection with Green Tea
logica0419
1
410
about #74462 go/token#FileSet
tomtwinkle
1
350
Why Governance Matters: The Key to Reducing Risk Without Slowing Down
sarahjwells
0
110
Where will it converge?
ibknadedeji
0
180
いまさら聞けない ABテスト入門
skmr2348
1
200
Flaky Testへの現実解をGoのプロポーザルから考える | Go Conference 2025
upamune
1
420
KMP の Swift export
kokihirokawa
0
330
Findy Team+のSOC2取得までの道のり
rvirus0817
0
340
動画データのポテンシャルを引き出す! Databricks と AI活用への奮闘記(現在進行形)
databricksjapan
0
150
生成AIとM5Stack / M5 Japan Tour 2025 Autumn 東京
you
PRO
0
220
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
27
2k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Speed Design
sergeychernyshev
32
1.1k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Build your cross-platform service in a week with App Engine
jlugia
232
18k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Balancing Empowerment & Direction
lara
4
680
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Why Our Code Smells
bkeepers
PRO
339
57k
The Cost Of JavaScript in 2023
addyosmani
53
9k
Transcript
Jak postavit slovník z jedniček a nul Petr Viktorin encukou.cz
[email protected]
Brněnské Pyvo, 2016-09-29
0 1
0V 3V Image © Eric Gaba, Wikimedia Commons user Sting,
CC-BY-SA: https://en.wikipedia.org/wiki/File:Cyrix_IBM_CPU_6x86MX_PR20
◦
S J
♀
♥ Image © Wikimedia user Quartl, CC-BY-SA: https://commons.wikimedia.org/wiki/File:Leucanthemum_vulgare_qtl1.jpg
☼
0 1
Bude zítra pršet?
Bude zítra pršet? Ano
Bude zítra pršet? Ano Ne
Bude zítra pršet? Ano Ne Nevím
Bude zítra pršet? Ano Ne Nevím
S 40% pravděpodobností
Bude zítra pršet? Ano Ne Nevím
S 40% pravděpodobností Myslíš v Brně?
Bude zítra pršet? Ano Ne Nevím
S 40% pravděpodobností Myslíš v Brně? Podle jakého modelu?
Umíš odpovědět „ano” nebo „ne” na otázku „Bude zítra pršet?”
Umíš odpovědět „ano” nebo „ne” na otázku „Bude zítra pršet?”
Bude zítra pršet?
Umíš odpovědět „ano” nebo „ne” na otázku „Bude zítra pršet?”
Bude zítra pršet? Aha... A je to tím že to nevíš přesně?
Kolik je mi let?
Kolik je mi let? 50
Kolik je mi let? 50
Kolik je mi let? 50 25
Kolik je mi let? 50 25
Kolik je mi let? 50 25 35
Kolik je mi let? 50 25 35
Kolik je mi let? 50 25 35
30
Kolik je mi let? 50 25 35
30
Kolik je mi let? 50 25 35
30 27
Kolik je mi let? 50 25 35
30 27
Kolik je mi let? 50 25 35
30 27 29
Kolik je mi let? 50 25 35
30 27 29
Kolik je mi let? 50 25 35
30 27 29 28
Kolik je mi let? 50 25 35
30 27 29 28
Myslím si číslo
Myslím si číslo 2
Myslím si číslo 2 4
Myslím si číslo 2 4 8
Myslím si číslo 2 4 8 16
Myslím si číslo 2 4 8 16 32
Myslím si číslo 2 4 8 16 32 64
Myslím si číslo 2 4 8 16 32 64 128
Kolik mi je let? 64-127? ne 32-63? ne 16-31? ano
24-31? ano 28-31? ano 30-31? ne 29? ano
Kolik mi je let? ne ne ano ano ano ne
ano
Kolik mi je let? 0 0 1 1 1 0
1
Kolik mi je let? 0 +64 0 +32 1 +16
1 +8 1 +4 0 +2 1 +1
Nejen čísla 00001 = 1 = A 00010 = 2
= B 00011 = 3 = C ... 11010 = 26 = Z
8 bitů 0-255 © Wikimedia user Bilby, CC-BY-SA: https://en.wikipedia.org/wiki/File:Atari_800.jpg
16 bitů 0-65 535 © Dragan at the German language
Wikipedia, CC-BY-SA: https://commons.wikimedia.org/wiki/File:Amiga_500_(1987).jpg
32 bitů 0-4 294 967 295 Public Domain image: https://en.wikipedia.org/wiki/File:Beige_Power_Macintosh_G3_Minitower.jpg
64 bitů 0-18 446 744 073 709 551 615 ©
Anderson Silva, CC-BY-SA: https://opensource.com/life/15/8/beautiful-super-thin-laptop-makes-fedora-shine
8 bitů = 1 byte
0 1 2 3 4 5 00000000 00000000 00000000 00000000
00000000 00000000
29 0 1 2 3 4 5 00000000 00011101 00000000
00000000 00000000 00000000
29 'P' 0 1 2 3 4 5 00000000 00011101
01010000 00000000 00000000 00000000
29 'P' 0 1 2 3 4 5 00000000 00011101
01010000 00101110 00000000 00000000
29 'P' ◦ 0 1 2 3 4 5 00000000
00011101 01010000 00101110 00111100 00000000
29 'P' ◦ 0 1 2 3 4 5 00000000
00011101 01010000 00101110 00111100 00000000 29 80 46 60
29 'P' ◦ 0 1 2 3 4 5 00000000
00011101 01010000 00101110 00111100 00000000 29 80 46 60 '' 'P' '.' '<'
29 'P' ◦ 0 1 2 3 4 5 00000000
00011101 01010000 00101110 00111100 00000000 29 80 46 60 '' 'P' '.' '<'
29 'P' ◦ 0 1 2 3 4 5 00000000
00011101 01010000 00101110 00111100 00000000 29 80 46 60 '' 'P' '.' '<' ◦ ◦ ◦ ◦
0 1 2 3 4 5 6 00000000 00000000 01000001
01101000 00111100 01101111 00000000 65 104 111 106 0 'A' 'h' 'o' 'j'
0 1 2 3 4 5 6 00000000 00000004 01000001
01101000 00111100 01101111 00000000 4 65 104 111 106 0 délka 'A' 'h' 'o' 'j'
0 1 2 3 4 5 6 10010010 00000004 01000001
01101000 00111100 01101111 00000000 146 4 65 104 111 106 0 str délka 'A' 'h' 'o' 'j'
0 1 2 3 4 5 6 10010010 00000004 01000001
01101000 00111100 01101111 00000000 146 4 65 104 111 106 0 str délka 'A' 'h' 'o' 'j' 146 147 148 149 150 151 152 10011010 11101100 11001111 11001100 11011010 11100011 10101101 type ... ... ... ...
A B C D E F G H 0 1
2 3 4 5 6 7
A str 4 'A' 'h' 'o' 'j' B C
D E F G H 0 1 2 3 4 5 6 7 A0: "ahoj"
A str 4 'A' 'h' 'o' 'j' B int
1 0 int 1 1 C D E F G H 0 1 2 3 4 5 6 7 A0: "ahoj" B0: 0 B4: 1
A str 4 'A' 'h' 'o' 'j' B int
1 0 int 1 1 C tupl 2 B0 B4 D E F G H 0 1 2 3 4 5 6 7 A0: "ahoj" B0: 0 B4: 1 C0: (0, 1)
A str 4 'A' 'h' 'o' 'j' B int
1 0 int 1 1 C tupl 2 B0 B4 int 1 2 D E F G H 0 1 2 3 4 5 6 7 A0: "ahoj" B0: 0 B4: 1 C0: (0, 1) C5: 2
A str 4 'A' 'h' 'o' 'j' B int
1 0 int 1 1 C tupl 2 B0 B4 int 1 2 D lst 3 E4 E B0 B4 C5 F G H 0 1 2 3 4 5 6 7 A0: "ahoj" B0: 0 B4: 1 C0: (0, 1) C5: 2 D0: [0, 1, 2]
A str 4 'A' 'h' 'o' 'j' B int
1 0 int 1 1 C tupl 2 B0 B4 int 1 2 D lst 4 F1 E B0 B4 C5 F B0 B4 C5 B0 G H 0 1 2 3 4 5 6 7 A0: "ahoj" B0: 0 B4: 1 C0: (0, 1) C5: 2 D0: [0,1,2,0]
A B C D E F G H 0 1
2 3 4 5 6 7
A B C D dict 4 8 F0 E F
0 1 2 17 G → 0 → 1 → 2 → 17 H → 'a' → 'b' → 'c' → 'd' 0 1 2 3 4 5 6 7 D0: { 0: 'a', 1: 'b', 2: 'c', 17: 'd'}
? Petr Viktorin @encukou.cz
[email protected]
@encukou github.com/encukou Licence: Creative Commons
Attribution-ShareAlike 4.0 http://creativecommons.org/licenses/by-sa/4.0/