今回は少し脱線しまして、先日の iOS LT 会で賑わってらした 浮動小数点数
の基礎的なところについて眺めてみることにしますね。
プログラミングの黎明期から今日までをずっと支えてきた仕組みで何気なく使っている割には、いざそれに着目してみると混乱しがちなところに感じたりもするので、ときおりこうしておさらいすると良いことあるかもしれません。
Swift 言語に限らない一般的な話も多くなる回と思うので、iOS/macOS 系な方々に限らず、そのほかの浮動小数点数に関わる特にアソシエイトエンジニアな方々も、ご都合が合えばぜひぜひお越しくださいね。どうぞよろしくお願いします。
———————————————————————— 熊谷さんのやさしい Swift 勉強会 #53
00:00 開始 00:18 余談 01:21 浮動小数点数 02:39 概要 04:53 Swift が提供する浮動小数点数型 05:17 Float80 07:56 Float80 の利用可能環境 09:57 Float80 の特徴 11:18 浮動小数点数型の選び方 12:05 Double 型の処理速度 13:59 浮動小数点数の仕様 14:35 概要(その2) 15:36 浮動小数点数の基本 15:57 固定小数点数 17:33 4つの構成要素 18:05 データ表現 18:52 データサイズに応じた呼称 19:56 精度による利用場面 21:19 擬似四倍精度浮動小数点数 22:46 データ配分 24:07 基数部は 0 ビット 24:47 基数が 2 の浮動小数点数 25:45 符号部 26:11 指数部 26:39 エクセス N 28:34 仮数部 30:10 二進小数 31:41 十進小数を表現できないことがある 32:06 正規化数 33:44 非正規化数 35:03 特別な表現 36:13 無限大 37:27 非数 38:43 二進小数から十進小数への変換 42:36 浮動小数点数に関する誤差 43:07 オーバーフロー 43:49 アンダーフロー 44:30 桁落ち 46:02 情報落ち 46:58 積み残し 47:31 丸め誤差 47:59 Swift での浮動小数点数表現 48:58 クロージング ————————————————————————