Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
@curekoshimizu
うー!がおー!!
君たちは
数学が大好きなフレンズ
なんだね!
すっごーい!
よく見ると
どのフレンズも
計算機をもっているよ!
ここにはCPUが!
ここにはCPUが!
Excel も
計算機!
共通していることは
2進数で動いている!
ここは𝟐進数ちほー
𝟏𝟔進数ちほー
𝟑進数ちほー
𝟏𝟔進数ちほー
𝟑進数ちほー
例. SETUN
例. IBM System/370
昔はいろんなものが
あったけど
ここは 2進数ちほー
2進数 ちほー
のルール
知っていますか?
例えば「15」が
00000000000000000000000000001111
𝟏𝟓 = 𝟐 𝟑
+ 𝟐 𝟐
+ 𝟐 𝟏
+ 𝟐 𝟎
2進数ちほー にある
コンピューターの 15 の一般的表現
64桁
これはみんな
なんとなく知っている。
だけどフレンズたちは
EXCELとなると
途端にわからない!
(はず)
𝟐 𝟓𝟎
のこと
2進数ちほー の計算は
ツールなどによっても
実は奥深い世界
計算結果を信頼するには
2進数ちほー について
勉強が必要!
今日の教訓
@curekoshimizu
2進数ちほー を勉強すると
ロマンティックなところも
みえてくる!
(残り時間でざっくり紹介)
00000000000000000000000000001111
𝟏𝟓 = 𝟐 𝟑
+ 𝟐 𝟐
+ 𝟐 𝟏
+ 𝟐 𝟎
2進数ちほー での
一般的な 15 の表現
64桁
11111111111111111111111111110001
00000000000000000000000000001111
15
11111111111111111111111111110000
BIT 反転 ( 0 <-> 1)
+1...
-15 に相当する数字
ができた!
11111111111111111111111111110001
00000000000000000000000000001111
+
1 00000000000000000000000000000000
2進数ちほー では見なかった
ことにす...
BIT反転+1 でつくった負の数
は乗算とかできるの?
11111111111111111111111111110001×
11111111111111111111111111110001
-15
-15
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1
× 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1
× 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...
BIT反転+1 でつくった負の数
は除算とかできるの?
𝟏
𝟏 − 𝒙
= 𝟏 + 𝒙 + 𝒙 𝟐
+ 𝒙 𝟑
+ ・・・ ( 𝒙 < 𝟏 )
幾何級数
𝟏
𝟏 − 𝒙
= 𝟏 + 𝒙 + 𝒙 𝟐
+ 𝒙 𝟑
+ ・・・ ( 𝒙 < 𝟏 )
ここに x = 16 をいれてしまう
幾何級数
条件無視
−
𝟏
𝟏𝟓
= 𝟏 + 𝟏𝟔 + 𝟏𝟔 𝟐
+ 𝟏𝟔 𝟑
+ ・・・ + 𝟏𝟔 𝟏𝟓
+ 𝟏𝟔 𝟏𝟔
+ ・・・
x = 16 をいれたやんちゃな式
−
𝟏
𝟏𝟓
= 𝟏 + 𝟏𝟔 + 𝟏𝟔 𝟐
+ 𝟏𝟔 𝟑
+ ・・・ + 𝟏𝟔 𝟏𝟓
+ 𝟏𝟔 𝟏𝟔
+ ・・・
2進数ちほー では見なかった
ことにするエリア (𝟐 𝟔𝟒の倍数)
000100010001000100010001000100...
×
11111111111111111111111111110001
-1/15
-15
00010001000100010001000100010001
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1
0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 ...
2進数ちほー は
なんだか面白い性質を
含んだ世界!
@curekoshimizu
今日の最後の教訓
1. 2進数の世界を勉強しないと結果を信頼して
いいかわからない時がある
2. 勉強するとロマンティックなところが見える
@curekoshimizu
まとめ
2進数フレンズ
2進数フレンズ
2進数フレンズ
2進数フレンズ
2進数フレンズ
2進数フレンズ
2進数フレンズ
Upcoming SlideShare
Loading in …5
×

2進数フレンズ

3,316 views

Published on

EXCEL のおかしな例 と 64bit 整数型における 加減乗除の別の目線を紹介

Published in: Engineering
  • Be the first to comment

2進数フレンズ

  1. 1. @curekoshimizu
  2. 2. うー!がおー!!
  3. 3. 君たちは
  4. 4. 数学が大好きなフレンズ なんだね!
  5. 5. すっごーい!
  6. 6. よく見ると
  7. 7. どのフレンズも 計算機をもっているよ!
  8. 8. ここにはCPUが!
  9. 9. ここにはCPUが!
  10. 10. Excel も 計算機!
  11. 11. 共通していることは
  12. 12. 2進数で動いている!
  13. 13. ここは𝟐進数ちほー
  14. 14. 𝟏𝟔進数ちほー 𝟑進数ちほー
  15. 15. 𝟏𝟔進数ちほー 𝟑進数ちほー 例. SETUN 例. IBM System/370
  16. 16. 昔はいろんなものが あったけど ここは 2進数ちほー
  17. 17. 2進数 ちほー のルール 知っていますか?
  18. 18. 例えば「15」が
  19. 19. 00000000000000000000000000001111 𝟏𝟓 = 𝟐 𝟑 + 𝟐 𝟐 + 𝟐 𝟏 + 𝟐 𝟎 2進数ちほー にある コンピューターの 15 の一般的表現 64桁
  20. 20. これはみんな なんとなく知っている。
  21. 21. だけどフレンズたちは
  22. 22. EXCELとなると 途端にわからない! (はず)
  23. 23. 𝟐 𝟓𝟎 のこと
  24. 24. 2進数ちほー の計算は ツールなどによっても 実は奥深い世界
  25. 25. 計算結果を信頼するには 2進数ちほー について 勉強が必要! 今日の教訓 @curekoshimizu
  26. 26. 2進数ちほー を勉強すると ロマンティックなところも みえてくる! (残り時間でざっくり紹介)
  27. 27. 00000000000000000000000000001111 𝟏𝟓 = 𝟐 𝟑 + 𝟐 𝟐 + 𝟐 𝟏 + 𝟐 𝟎 2進数ちほー での 一般的な 15 の表現 64桁
  28. 28. 11111111111111111111111111110001 00000000000000000000000000001111 15 11111111111111111111111111110000 BIT 反転 ( 0 <-> 1) +1 負の数の作り方
  29. 29. -15 に相当する数字 ができた!
  30. 30. 11111111111111111111111111110001 00000000000000000000000000001111 + 1 00000000000000000000000000000000 2進数ちほー では見なかった ことにする 足して 0 になってい るので -15 の役割 15 -15
  31. 31. BIT反転+1 でつくった負の数 は乗算とかできるの?
  32. 32. 11111111111111111111111111110001× 11111111111111111111111111110001 -15 -15
  33. 33. 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 × 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 0 0 0 1 1 1 0 0 0 1 1 0 0 0 1 0 0 0 1 0 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 ・・・・・・・・ 2進数ちほー では見なかった ことにする -15 -15 225
  34. 34. 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 × 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 0 0 0 1 1 1 0 0 0 1 1 0 0 0 1 0 0 0 1 0 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 ・・・・・・・・ 2進数ちほー では見なかった ことにする -15 -15 225 もとの正の数に 戻してから計算する必要もない ことがわかる! (負の数) x (負の数) = (正の数) という性質もわかる!
  35. 35. BIT反転+1 でつくった負の数 は除算とかできるの?
  36. 36. 𝟏 𝟏 − 𝒙 = 𝟏 + 𝒙 + 𝒙 𝟐 + 𝒙 𝟑 + ・・・ ( 𝒙 < 𝟏 ) 幾何級数
  37. 37. 𝟏 𝟏 − 𝒙 = 𝟏 + 𝒙 + 𝒙 𝟐 + 𝒙 𝟑 + ・・・ ( 𝒙 < 𝟏 ) ここに x = 16 をいれてしまう 幾何級数 条件無視
  38. 38. − 𝟏 𝟏𝟓 = 𝟏 + 𝟏𝟔 + 𝟏𝟔 𝟐 + 𝟏𝟔 𝟑 + ・・・ + 𝟏𝟔 𝟏𝟓 + 𝟏𝟔 𝟏𝟔 + ・・・ x = 16 をいれたやんちゃな式
  39. 39. − 𝟏 𝟏𝟓 = 𝟏 + 𝟏𝟔 + 𝟏𝟔 𝟐 + 𝟏𝟔 𝟑 + ・・・ + 𝟏𝟔 𝟏𝟓 + 𝟏𝟔 𝟏𝟔 + ・・・ 2進数ちほー では見なかった ことにするエリア (𝟐 𝟔𝟒の倍数) 00010001000100010001000100010001 -1/15 に相 当する数?
  40. 40. × 11111111111111111111111111110001 -1/15 -15 00010001000100010001000100010001
  41. 41. 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 × -15 1 -1/15 ちゃんと 1 になる!
  42. 42. 2進数ちほー は なんだか面白い性質を 含んだ世界! @curekoshimizu 今日の最後の教訓
  43. 43. 1. 2進数の世界を勉強しないと結果を信頼して いいかわからない時がある 2. 勉強するとロマンティックなところが見える @curekoshimizu まとめ

×